CloudWatch Agent をマネジメントコンソール画面からインストール・起動する方法

CloudWatch Agent をマネジメントコンソール画面からインストール・起動する方法

2025.09.16

はじめに

立神です。

本ブログでは、SSM Run Command を利用した CloudWatch Agent のインストール方法を紹介します。従来の SSH 接続によるコマンドライン操作ではなく、AWS マネジメントコンソールのみで CloudWatch Agent の設定を完了する手順を解説します。

マネージドノードについて

Systems Manager の機能(Run Command、Session Manager 等)を利用するためには、対象の EC2 インスタンスが マネージドノード として登録されている必要があります。マネージドノードとは、Systems Manager によって管理・制御可能な状態にあるインスタンスのことを指します。

EC2 インスタンスをマネージドノードとして登録するには、以下の3つの要素が必要です:

  1. SSM Agent の導入
  2. アウトバウンド経路確保(インターネット経路または VPC エンドポイント)
  3. 権限付与(IAM ロールに AmazonSSMManagedInstanceCore ポリシーをアタッチ)

今回のケースでは、SSM Agent がプリインストールされている Amazon Linux 2023 の AMI を利用します。そのため、適切な IAM ロールをアタッチし、EC2 インスタンスがインターネット経由で SSM API の Systems Manager 関連エンドポイントと通信できる環境を構築することで、自動的にマネージドノードとして登録されます。

手順

IAM ロールの作成

EC2 インスタンスで Systems Manager と CloudWatch Agent を使用できるようにするため、以下のポリシーを持つ IAM ロールを作成します。

  • CloudWatchAgentServerPolicy
  • AmazonSSMManagedInstanceCore

EC2 インスタンスの作成

本記事では、Amazon Linux 2023 の AMI を利用して EC2 インスタンスを作成します。

次に、セキュリティグループの設定で、 HTTPS(443) アウトバウンド通信を許可してください。
EC2 インスタンスが Systems Manager のマネージドノードとして登録されるためには、SSM Agent が SSM API の Systems Manager 関連エンドポイントと HTTPS 通信できる必要があります。
SG-Outbound

最後に、高度な詳細から、上記 IAM ロールをアタッチしてください。
EC2-Role

その他の設定はデフォルトのままで構いません。

AWS Systems Manager を使用した CloudWatch Agent のインストール

  1. Run Command の実行

Systems Manager のナビゲーションバーから 「Run Command」 を選択し、右上の 「Run Command」 ボタンをクリックします。
コマンドドキュメントの項目では AWS-ConfigureAWSPackage を選択します。
CommandDocument

コマンドのパラメータの項目では、以下を設定します。

  • Action : install
  • Name : AmazonCloudWatchAgent
  • Version : latest
    CommandParameter

ターゲットの項目では、インスタンスを手動で選択するをクリックし、先程メモしたインスタンス ID を検索して選択します。
target

出力オプションの項目では、デフォルトで S3 バケットへ書き込むように設定されています。
今回はチェックを外しておきます。
agent-option

上記をすべて設定したら、実行をクリックします。
ステータスが成功に変われば問題なく実行できています。
status

EC2 インスタンスに接続して確認してみると、CloudWatch Agent のインストールを確認できますが、まだ設定を行っていないため、状態が inactive となっています。
Agent-inactive

  1. パラメータストアの設定
    CloudWatch Agent の監視設定を行っていきます。今回は CPU 使用率を監視する設定を行います。
    Systems Manager のナビゲーションバーから 「パラメータストア」 を選択し、右上の 「パラメータの作成」 ボタンをクリックします。

パラメータの作成画面に遷移するので、以下を設定します。

  • 名前 : 任意の名前
  • 説明 : 任意の説明
  • タイプ : 文字列
  • データ型 : text
  • 値 :
			
			{
  "metrics": {
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}"
    },
    "metrics_collected": {
      "cpu": {
        "measurement": [
          "cpu_usage_idle",
          "cpu_usage_iowait",
          "cpu_usage_user",
          "cpu_usage_system"
        ],
        "metrics_collection_interval": 60
      }
    }
  }
}

		

parameterStore

上記を設定したら、「パラメータを作成」 をクリックします。

  1. Run Command の実行
    作成したパラメータを使って、 CloudWatch Agent に設定を適用していきます。
    先ほどと同様に Systems Manager のナビゲーションバーから 「Run Command」 を選択し、右上の 「Run Command」 ボタンをクリックします。
    コマンドドキュメントの項目では AmazonCloudWatch-ManageAgent を選択します。
    parameter-action

コマンドパラメータの項目では、以下を設定します。

  • Action : configure
  • Mode : ec2
  • OptionalConfigurationSource : ssm
  • OptionalConfigurationLocation : 作成したパラメータの名前
  • OptionalRestart : yes
    parameter-action-parameter

以降の手順は 1. と同様です。

再度 EC2 インスタンスに接続して確認してみると、状態が Active に変化し、監視できていることが確認できます。
agent-ok2

動作確認

マネジメントコンソールでも確認してみましょう。
CloudWatch のマネジメントコンソールを開き、メトリクスからすべてのメトリクスを選択します。
カスタム名前空間の CWAgent を選択し、 InstanceId, cpu を選択すると、監視対象のインスタンス名が表示されています。選択するとグラフで CPU 使用率を確認することができます。
動作確認

まとめ

本記事では、CloudWatch Agent を AWS マネジメントコンソールのみで設定する方法を紹介しました。
今回の検証により、従来は SSH 接続とコマンドライン操作が必要だった CloudWatch Agent の設定を、今回の手順では GUI 操作のみで実現できることを確認しました。各 EC2 インスタンスに個別に SSH 接続する必要がなくなり、Run Command により、複数のインスタンスに対しても効率的に展開できる仕組みを構築できました。
本ブログが誰かの参考になれば幸いです。

参考資料

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。

この記事をシェアする

FacebookHatena blogX

関連記事