ある運用チームは、本番環境の全EC2インスタンスに CloudWatch エージェントが常に正しい設定でインストールされていることを保証したいと考えています。以下の要件を満たすアプローチを検討しています。 ・エージェントが削除されたり設定が変更されたりした場合、1時間以内に自動的に正しい状態に戻すこと ・追加のカスタムスクリプト開発は最小限にすること 最も適切なアプローチはどれですか?
Systems Manager State Manager は、EC2インスタンスが定義された「望ましい状態(Desired State)」を継続的に維持することを保証するサービスです。アソシエーションにドキュメントと実行スケジュールを設定することで、定期的にドキュメントが実行されて構成ドリフトが修復されます。AWS提供の AmazonCloudWatch-ManageAgent ドキュメントと Parameter Store を組み合わせることで、追加のカスタムスクリプト開発なしにエージェントのインストールと設定を一元管理できます。 選択肢A(EventBridge Scheduler で Run Command 実行)はRun Commandが単発実行のみでドリフト修復機能がなく、State Managerの方が継続的な構成管理に適しています。 選択肢C(AWS Config カスタムルール)でも要件は充足できますが、カスタムルールの開発が必要となるためカスタムスクリプト開発を最小限にしたいという要件に対してState Managerの方がシンプルで最適です。 選択肢D(EC2 ユーザーデータ、Auto Scaling ライフサイクルフック)はインスタンス起動時のみに実行されるため、既に稼働中のインスタンスで発生した構成ドリフトの検出・修復には対応していません。