Q13 — AWS DOP-C02 第1章
第 13/100 問 | ← 第1章
DevOpsエンジニアは、AWS Lambda関数を使用するサーバーレスアプリケーション向けに継続的デプロイパイプラインを構築しています。企業は、デプロイ失敗による顧客への影響を最小限に抑えたいと考えています。また、問題をモニタリングしたいと考えています。
- A. AWS Serverless Application Model(AWS SAM)テンプレートを使用してサーバーレスアプリケーションを定義します。AWS CodeDeployでCanary10Percent15Minutesデプロイメントプリファレンスタイプを使用してLambda関数をデプロイします。Amazon CloudWatchアラームを使用して関数の健全性をモニタリングします。 ✓
- B. AWS CloudFormationを使用して新しいスタック更新をリリースし、すべてのリソースにAmazon CloudWatchアラームを含めます。開発者向けにAWS CodePipelineの承認操作を設定して、AWS CloudFormationの変更セットを検証および承認します。
- C. AWS CloudFormationを使用して、各スタック更新時に新バージョンをリリースし、すべてのリソースにAmazon CloudWatchアラームを含めます。スタック更新中にトラフィックルーティングを更新するために、AWS::Lambda::AliasリソースのRoutingConfigプロパティを使用します。
- D. AWS CodeBuildを使用して、Lambda関数のテスト用サンプルイベントペイロードを追加します。新バージョンの関数をリリースし、Amazon CloudWatchアラームを含めます。本番エイリアスを新バージョンを指すように更新します。アラームがALARM状態になった場合にロールバックを実行するように構成します。
正解: A. AWS Serverless Application Model(AWS SAM)テンプレートを使用してサーバーレスアプリケーションを定義します。AWS CodeDeployでCanary10Percent15Minutesデプロイメントプリファレンスタイプを使用してLambda関数をデプロイします。Amazon CloudWatchアラームを使用して関数の健全性をモニタリングします。
解説
選択肢Aが要件を満たします。AWS Serverless Application Model(AWS SAM)テンプレートはサーバーレスアプリケーションを定義できます。Canary10Percent15Minutesデプロイメントプリファレンスタイプを使用したAWS CodeDeployは、段階的なデプロイを可能にし、失敗時の影響を最小限に抑えます。Amazon CloudWatchアラームは関数の健全性をモニタリングし、問題を早期に検出できます。他の選択肢は、段階的デプロイおよび影響低減の観点から、選択肢Aの構成ほど合理的かつ効果的ではありません。したがって、選択肢Aが正解です。