SAA / ドメイン2 レジリエントなアーキテクチャの設計
AWS Elastic Beanstalk
は、Webアプリケーションのコードをアップロードすると、、、などの環境を自動構築・管理するです。
SAA では、アプリケーションコードに集中しつつ、基盤リソースへのアクセスや設定変更も必要な場合に選びます。
概要
アプリケーション、バージョン、環境を管理します。AWSが容量の、ロードバランシング、スケーリング、ヘルス監視を調整しますが、作成されたAWSリソースの料金は発生します。
主要技術
①Webサーバー環境とワーカー環境
| 環境 | 用途 |
|---|---|
| Webサーバー | リクエストを経由で処理します。 |
| ワーカー | から非同期ジョブを取得して処理します。 |
②高可用性
本番では付き環境と複数のを利用します。単一インスタンス環境は開発や低可用性要件向けです。
③デプロイ方式 ⚠️ 頻出
All at once、Rolling、Rolling with additional batch、Immutable、Traffic splittingなどを可用性とコストに応じて選びます。障害影響を抑える要件ではImmutableやトラフィック分割を検討します。
Rollingは既存のインスタンスをバッチごとに更新するため、更新中はそのバッチの分だけ処理能力が減ります。Rolling with additional batchは先に追加のバッチを起動して処理能力を保ちますが、既存のインスタンス自体は書き換えます。Immutableは一時的なグループに新しいインスタンスを一式起動し、に合格してから元のグループへ移して古いインスタンスを終了します。既存のインスタンスに手を加えないため、失敗しても新しいインスタンスを終了するだけで元に戻せます。ブルー/グリーンは別の環境を作り、環境のURLを入れ替えて切り替える方式です。
④責任範囲
は基盤を抽象化しますが、アプリコード、設定、データ、、対応プラットフォーム更新は利用者が管理します。完全なサービスではありません。
試験対策
「コードをアップロードするだけでWeb環境を構築」「基盤設定も変更可能」はです。「関数実行」は、「」は/です。