AWS AWS App Runner
① ストーリー性を取り入れた説明
旅行会社の新規事業開発部では、新しい旅行プランのプロモーション動画を制作することになりました。動画は完成したものの、公開直前にサーバーのトラブルが発生。アクセスが集中すると動画がスムーズに再生されないという問題が発覚しました。
原因を調査した結果、サーバーの処理能力が不足していることが判明。急遽、サーバーの増強が必要になりましたが、時間も予算も限られています。さらに、今後も同様のアクセス集中が起こる可能性があり、長期的な対策も検討する必要がありました。
ケンイチは月末の会議で進捗報告をしなければなりません。しかし、サーバーの知識はほとんどありません。どうすればいいか分からず、課長に相談することにしました。
ケンイチ:
「課長、ご相談があります。
動画公開に向けてサーバーを増強したいのですが、
どうすれば良いか分からず困っています。」
課長:
「なるほど。
それならAWS App Runnerを検討してみようか。
これなら、簡単にWebアプリケーションをデプロイできるから、
サーバーの管理も楽になるはずだ。」
ケンイチ:
「AWS App Runnerですか? アプリのランナー??
それは一体何でしょうか?」
課長:
「AWS App Runnerは、ひとことで言うと、
コンテナイメージやソースコードからWebアプリケーション簡単にデプロイできるサービスだよ。」
ケンイチ:
「Webアプリケーションを簡単にデプロイ…?
つまり、サーバーの知識がなくても、Webアプリケーションを公開できるということでしょうか?」
課長:
「そういうこと。
通常、サーバーの設定や管理は専門知識が必要だけど、
App Runnerなら、それらをAWSが自動でやってくれるんだ。
今回の動画配信にも使えるし、
旅行プランの予約システムにも応用できるかもしれない。」
他のサービスではだめか
ケンイチ:
「なるほど…。
でも、なぜApp Runnerを使う必要があるのでしょうか?
他のサービス、例えばEC2などではダメなのでしょうか?」
課長:
「EC2でもWebアプリケーションを公開できるけど、
サーバーの構築や管理を自分でする必要がある。
App Runnerなら、それらの手間を省けるんだ。
今回の場合は、時間がないからApp Runnerが向いているだろうね。」
ケンイチ:
「サーバーの管理の手間を省ける、ですか。
それなら、私でも何とかできそうです。
他にメリットはありますか?」
他のメリットは?
課長:
「App Runnerは、自動でスケールしてくれる点もメリットだ。
アクセスが増えたら自動的にサーバーを増やして、
アクセスが減ったら自動的にサーバーを減らしてくれる。
これなら、アクセス集中にも対応できるし、
無駄なコストも抑えられる。」
ケンイチ:
「自動でスケール…!
それはすごいですね!
まるで、アクセス状況に合わせてサーバーが
自動で増えたり減ったりするみたいですね。」
・サーバー管理が不要
・自動でスケール
・コスト最適化
注意点は?
課長:
「そういうイメージで良いよ。
ただし、App Runnerにも注意点がある。
例えば、App Runnerは、
特定のプログラミング言語やフレームワークに
対応していない場合がある。
事前に確認しておく必要があるだろう。」
ケンイチ:
「非対応のケースがあるんですね。それは事前に確認しておかないと・・・。
他に注意点はありますか?」
課長:
「App Runnerは、比較的新しいサービスなので、情報が少ないかもしれない。
AWSのドキュメントや、インターネット上の情報を参考にしながら進める必要があるだろう。」
ケンイチ:
「情報が少ない、ですか。それは少し不安ですが、
AWSのドキュメントなどを参考に頑張ってみます。」
課長:
「App Runnerは、手軽さを重視する人に最適なサービスだ。
まずは、AWSのマネジメントコンソールからApp Runnerのサービス画面を開いて、
コンテナイメージかソースコードを選択するところから始めよう。」
よく間違えられやすい用語との違い
| 用語 | 特徴 | 管理 | 用途 |
|---|---|---|---|
| AWS App Runner | 手軽にデプロイ | AWSが管理 | Webアプリ、API |
| AWS EC2 | 柔軟なカスタマイズ | ユーザーが管理 | 汎用的なサーバー |
| AWS Lambda | イベント駆動型 | AWSが管理 | サーバーレス関数 |
AWS App Runnerとは、コンテナイメージやソースコードからWebアプリケーションを簡単にデプロイできるサービスです
② 実際の事例
事例1:ソニー(App Runnerの商用導入)
ソニーの登壇資料では、比較的新しいサービスであるApp Runnerを商用環境で導入した事例が紹介されています。Home Entertainment and Sound(テレビやヘッドホン等)向けのプラットフォーム上で、複数のGraphQL/REST APIを束ねる統合エンドポイント(GraphQL API)を提供する場面で、当初は「運用負荷を軽くしたい」狙いからApp Runner採用を検討。
初期規模は約200万リクエスト/日、SLO 99.5%、Multi-AZ冗長化やスケールアウトなどの非機能要件を前提に、App Runnerでも満たせそうだと判断し、構成を大きくシンプル化できた点がポイントです。一方で、ECS Fargateとの比較、CI/CD・監視の工夫、障害時運用など“使って初めて気づく課題”も整理されています。
ソニーにおける App Runner 導入事例と生の体験談の紹介:https://speakerdeck.com/kenjiyoneyama/case-study-and-real-experience-of-using-app-runner-in-sony-products
事例2:AWS公式(典型用途)
AWS公式では、App RunnerはWebアプリやAPIを迅速に構築・デプロイ・スケールできるフルマネージドサービスとして、自動スケーリングや組み込みセキュリティ、他AWSサービスとの統合などを特徴に挙げています。小規模チームが素早く公開したいケースから、企業のDevOps効率化まで「運用を軽くしてリリースを速くする」用途で使われやすい、という位置づけです。
AWS App Runner の機能:https://aws.amazon.com/jp/apprunner/features/
③ クイズや小テスト
クイズ1
AWS App Runnerの主な機能として正しいのはどれ?
A:コンテナやコードからWebアプリを簡単にデプロイ
B:仮想サーバーを自由にカスタマイズして構築
C:サーバーレスでコードを実行できる
クイズ2
AWS App Runnerを使うメリットとして当てはまらないのはどれ?
A:インフラの管理が不要になる
B:アクセス変動に合わせて自動でスケールする
C:サーバーのOSを自由に選択できる
クイズ3
AWS App Runnerが特に適しているのはどんな用途?
A:高度なカスタマイズが必要な基幹システム
B:手軽にWebアプリを公開したい個人サイト
C:GPUを利用する機械学習の推論処理
答え:
1-A:コンテナやコードからWebアプリを簡単にデプロイ(サーバー知識が少なくてもOK)
2-C:サーバーのOSを自由に選択できる(OSはAWSが管理)
3-B:手軽にWebアプリを公開したい個人サイト(管理が楽で便利)
解説:App Runnerは、Webアプリケーションを迅速にデプロイし、運用を簡素化することに重点を置いています。高度なカスタマイズが必要な場合は、EC2などが適しています。




