EC2インスタンスへのCloudWatchエージェント設定
メモリやディスクなど、OSレベルのメトリックを収集するには、EC2インスタンスへCloudWatchエージェントをデプロイする必要があります。エージェントはCloudWatchへデータ送信を行い、Applications Managerはそれを取得してコンソールに表示します。
Amazon EC2インスタンスとオンプレミスサーバーで取得できるメトリックについても、上記リンクを参照ください。
EC2インスタンスへのCloudWatchエージェント設定の要件
対応OS
- Amazon Linuxバージョン2014.03.02以降
- Ubuntu Serverバージョン16.04、14.04
- CentOSバージョン7.0、6.5
- Red Hat Enterprise Linux(RHEL)バージョン7.4、7.0、6.5
- Debian 8.0
- Windows Server 2016、2012、2008(いずれも64ビット版)
CloudWatchエージェント設定の手順
- IAMロールを作成し、CloudWatchエージェントを実行したい各Amazon EC2インスタンスにアタッチする必要があります。このロールによって、インスタンスからの情報読み込みや、CloudWatchへの書き込みが可能となります。
IAMロールの作成方法と、Amazon EC2インスタンスでのCloudWatchエージェントの使用方法は、IAMロール作成の解説を参照ください。 - 作成したIAMロールをEC2インスタンスにアタッチしてください。
詳細はAWSのサポート情報を参照ください。 - CloudWatchエージェントをインストールしてください。
CloudWatchエージェントのインストール方法は次の2通りあります。- EC2コンソールのSystems Managerを利用(EC2インスタンスへのログインは不要)
- ダウンロードリンクを直接利用(EC2インスタンスへのログインが必須)
- EC2コンソールでCloudWatchエージェントの設定ファイルを作成します。
こちらの外部ページを合わせて参照ください。 - CloudWatchエージェントをSystems Manager Run Commandで起動します。
詳細はこちらの外部ページをご確認ください。
メモ:
パラメータ"metrics_collection_interval"は、設定ファイルで指定されているメトリック収集の監視間隔を指定する際に用います。
このメトリックの値は、EC2インスタンスのポーリング間隔より短くしてください。推奨されている値は5分(300秒)です。
EC2コンソールでCloudWatchエージェント設定ファイルを作成
- AWS EC2コンソールを開きます。
- 左上のサービス検索欄で、[パラメータストア]を検索し、クリックします。
- [パラメーターの作成]をクリックします。
- 名前と説明を入力し、タイプに[文字列型]を選択します(名前はOSタイプで分け、CwAgent Windows Configファイル、またはCwAgent Linux Configファイルとしてください)。
- 次の設定ファイルの内容をCloudWatchエージェントにコピーすると、EC2インスタンスからOSレベルのメトリックを取得できます。
- 上記をパラメーター作成ページのValue* テキスト ボックスに貼り付け、[パラメーターの作成]をクリックしてください。
メモ:監視するディスクパーティションの変更/追加/削除には、下記設定ファイルの「resources」タグを使用します。このタグの書き換えで、監視するパーティションの変更ができます。
下記の例では、"resources": [ "*" ]の指定により、存在するパーティションすべての取得を行います。その他設定例はこちらのページを参照ください。
「append_dimensions」タグのディメンションは、下記サンプルの通り、「InstanceId」のみとします。
Windows OS:{ "metrics": { "append_dimensions": { "InstanceId": "${aws:InstanceId}" }, "metrics_collected": { "LogicalDisk": { "measurement": [ "% Free Space", "Free Megabytes" ], "metrics_collection_interval": 300, "resources": [ "*" ] }, "Memory": { "measurement": [ "% Committed Bytes In Use", "Available MBytes", "Committed Bytes" ], "metrics_collection_interval": 300 } } } }
Linux OS:{ "metrics": { "append_dimensions": { "InstanceId": "${aws:InstanceId}" }, "metrics_collected": { "mem": { "measurement": [ "mem_total", "mem_used" ], "metrics_collection_interval": 300 }, "disk": { "resources": [ "/", "/run" ], "measurement": [ "disk_total", "disk_used" ], "metrics_collection_interval": 300 }, "swap": { "measurement": [ "swap_used_percent" ], "metrics_collection_interval": 300 } } } }
メモ:WindowsとLinuxの各インスタンスで、別々の設定ファイルを作成します。