AWSコンピューティング

AWS Elastic Beanstalkとは

アプリケーションのコードをアップロードするだけで、EC2・ELB・Auto Scaling・RDSのプロビジョニングとデプロイを自動化するPaaSサービス。開発者がインフラ管理を意識せずに済む。

サポート言語はJava・.NET・PHP・Node.js・Python・Ruby・Go・Docker。内部リソースへのアクセス権は保持しており、必要に応じてカスタム設定(.ebextensions)で制御可能。

試験での問われ方

SAAでは「インフラ管理を最小限にしたい」「コードだけ渡せば動かしたい」というシナリオで選ぶ。ECSやEC2直接構成より運用負荷が低いが、Lambdaとは「常時稼働が必要かどうか」で使い分ける。カスタム設定は.ebextensions(YAML/JSONの設定ファイル)で行う。

Blue/GreenデプロイはElastic Beanstalk環境のURLスワップで実現する点、ローリングアップデート中の稼働インスタンス数に関する設問が頻出。

デプロイポリシーの違いはDVAで頻出。All at once(全インスタンス同時更新で最速だが一時的に全断)、Rolling(バッチ単位で順次更新しキャパシティが一時的に低下)、Rolling with additional batch(追加バッチを先に立ててから更新するためキャパシティを維持)、Immutable(新しいインスタンス群を別途立ててから入れ替えるためロールバックが安全)という、速度・キャパシティ維持・ロールバック容易性のトレードオフで選ぶ。

このサービスが登場する演習問題(1問)

関連サービス