Q25 — AWS DOP-C02 第3章

第 25/100 問 | ← 第3章

あるDevOpsエンジニアは、アプリケーションをオンプレミスからAWSへ移行するソリューションを探しています。このアプリケーションはLinux上で動作し、特定バージョンのApache Tomcat、HAProxyおよびVarnish Cache上で正常に動作する必要があります。アプリケーションのOSレベルパラメータの調整も必要です。このソリューションには、新しいアプリケーションバージョンを自動展開する方法が含まれる必要があります。インフラストラクチャはスケーラブルであり、障害が発生したサーバーは自動的に置き換えられる必要があります。

正解: D. appspec.ymlファイルを使用してアプリケーションコードをAWS CodeCommitリポジトリにアップロードし、必要なソフトウェアの設定およびインストールを行います。Amazon EC2 Auto Scalingグループに関連付けられたAWS CodeDeployデプロイメントグループを作成します。CodeCommitをソース、CodeDeployをデプロイプロバイダーとして使用するAWS CodePipelineを作成します。

解説

AWSサービス選定および自動展開シナリオに関する問題です。要件には、特定のミドルウェアバージョン、OSレベルパラメータ調整、自動展開、スケーラブルなインフラストラクチャ、障害サーバーの自動置換が含まれます。AWS公式ドキュメントによると、CodeDeployとEC2 Auto Scalingの組み合わせは、カスタム展開スクリプト(appspec.yml)によるミドルウェアインストール・設定、ローリングアップデート、およびインスタンスの自動復旧をサポートします。選択肢Dは、CodePipelineがCodeCommitソース管理を統合し、CodeDeployが展開スクリプトを実行してミドルウェアのインストール・設定を行い、EC2 Auto Scalingがスケーラビリティおよび自己修復機能を提供するため、アプリケーションのOSレベル設定および自動復旧要件を満たします。他の選択肢の欠点:選択肢AのFargateはサーバーレスコンテナアーキテクチャであり、OSパラメータのカスタマイズが不可能です;選択肢BおよびCのElastic Beanstalkは事前構成されたソリューションスタックに依存しており、Tomcat+HAProxy+Varnishといった複数コンポーネントのカスタマイズ要件には対応できません。