統合 Amazon CloudWatch エージェントを AWS Systems Manager (SSM) でインストール/設定したいと考えています。
解決方法
統合 CloudWatch エージェントを Systems Manager でインストール/設定するには、次の手順を実行します。
IAM ロールを作成してアタッチする
AWS Identity Access Management (IAM) ロールを作成して CloudWatch と SSM エージェントにアクセス権限を付与し、そのロールを必要とするインスタンスにアタッチします。
- IAM コンソールを開きます。
- [ロール] を選択し、**[ロールの作成]**を選択します。
- [信頼されたエンティティの種類を選択] から、[AWS サービス] を選択します。
- [一般的なユースケース] で [EC2] を選択し、[次へ] を選択します。
- ポリシーのリストで、[CloudWatchAgentServerPolicy] および [AmazonSSMManagedInstanceCore] チェックボックスをオンにし、[次へ] を選択します。
- [ロール名] に、ロールの名前 (CloudWatchAgentServerRole など) を入力します。
- (オプション) ロールの説明を入力します。
- [ポリシー] の横に [CloudWatchAgentServerPolicy] と [AmazonSSMManagedInstanceCore] が表示されていることを確認します。
- [ロールの作成] を選択します。
- IAM ロールを Amazon Elastic Compute Cloud (Amazon EC2) インスタンスにアタッチします。
オンプレミスサーバーの場合は、「オンプレミスサーバーの CloudWatch エージェントで使用する IAM ユーザーを作成する」を参照してください。
Systems Manager を使用して統合 CloudWatch エージェントをダウンロード/インストールする
開始する前に、次の前提条件を満たしておきます。
- AWS Systems Manager Agent (SSM Agent) バージョン 3.2.1705.0 以降をインスタンスにインストールします。インスタンスのバージョンを確認するには、「SSM バージョン番号の確認」を参照してください。
- Amazon EC2 インスタンスが Online ステータスになっていて SSM エージェントで管理されているようにします。インスタンスが SSM エージェントで管理されていることを確認するには、「SSM エージェントのステータスを確認する」を参照してください。
- インスタンスがプライベートの場合は、AWS PrivateLink を使用して、SSM エージェントと CloudWatch エージェントで使用するエンドポイントを設定します。この設定には、SSM、モニタリング、ログ、Amazon EC2 エンドポイントへのアクセス権が必要です。
前述の手順を完了したら、Systems Manager を使用して CloudWatch エージェントをダウンロード/インストールします。
エージェント設定ファイルを作成/変更する
エージェント設定ファイルを作成/変更するには、ウィザードを使用して CloudWatch エージェント設定ファイルを作成します。
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
Windows Server を実行しているサーバーで、次のコマンドを実行してウィザードを起動します。
cd "C:\Program Files\Amazon\AmazonCloudWatchAgent"
.\amazon-cloudwatch-agent-config-wizard.exe
ウィザードが完了すると、Linux サーバーでは /opt/aws/amazon-cloudwatch-agent/bin/config.json、Windows サーバーでは C:\Program Files\Amazon\AmazonCloudWatchAgent にエージェント設定ファイルが保存されます。メトリクスやログの追加や削除をするには、ファイルを手動で編集します。
注: Systems Manager を使用してエージェントをインストール/設定する場合は、ファイルを Systems Manager Parameter Store に保存するかどうかのプロンプトが表示されたら必ず [はい] を選択してください。SSM エージェントを使用して CloudWatch エージェントをインストールしない場合も、ファイルを Parameter Store に保存することができます。ファイルを Parameter Store に保存するには、十分な権限が付与されている IAM ロールを使用してください。詳細については、「CloudWatch エージェントで使用する IAM ロールとユーザーを作成する」を参照してください。
CloudWatch エージェントを起動する
**注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用しているようにしてください。
CloudWatch エージェントを起動するには、Systems Manager Run Command または AWS コマンドラインインターフェイス (AWS CLI) のいずれかを使用します。詳細については、「CloudWatch エージェントを起動する」を参照してください。
注: SSM の AmazonCloudWatch-ManageAgent コマンドを使用して、Parameter Store に保存されているエージェント設定をデプロイすると、複数のインスタンスを同時にデプロイできます。デプロイしてから Parameter Store のエージェント設定に変更が加えられた場合は、AmazonCloudWatch-ManageAgent コマンドを再度実行する必要があります。このコマンドを実行するには、コマンドで Configure action オプションを使用して、設定変更がターゲットインスタンスで行われるようにします。
関連情報
Installing the CloudWatch agent on EC2 instances using your agent configuration
CloudWatch エージェントのトラブルシューティング
EC2 インスタンスから CloudWatch にメモリとディスクのメトリクスを送信するにはどうすればよいですか?