CloudWatchAgentをインストールしてサーバーの監視を行う③(EC2へのCloudWatchAgentインストール）

前回の記事にてEC2へIAMロールをアタッチし、SSMにて接続できるようにしました。
今回はサーバーへCloudWatchAgentをインストールする手順を確認していきます。

## 作業の流れ
[1.VPCへCloudWatchAgentに必要なVPCエンドポイントを作成する](https://qiita.com/tonkatsu_oishi/items/7c39f81fd4e3e2fbe91e)
[2.EC2を構築し、IAMロールをアタッチする（CloudWatchAgentとSSM権限の付与）](https://qiita.com/tonkatsu_oishi/items/1851eddb094a45f189be)
[3.EC2に対してCloudWatchAgentをインストールする](https://qiita.com/tonkatsu_oishi/items/114ab3342bcd7ec48afe)←いまここ
4.CloudWatchAgentのconfigファイルを設定し、CPU・メモリ・プロセスなどのメトリクスを取得する
　　　[Linux用CloudwatchAgent設定ファイルの生成・CloudwatchAgentの起動](https://qiita.com/tonkatsu_oishi/items/ec163751cc7f644f9cae)
　　[Windows用CloudwatchAgent設定ファイルの生成・CloudwatchAgentの起動](https://qiita.com/tonkatsu_oishi/items/7abed083f1d5f1b45a7f)
5.[SNSトピックの作成](https://qiita.com/tonkatsu_oishi/items/3fa4c6c8de52d9678c11)
6.[CloudWatchAgentで取得したメトリクスに対してCloudWatchAlarmを設定する](https://qiita.com/tonkatsu_oishi/items/3fa4c6c8de52d9678c11)

## 構成図確認
改めて構成図を確認します。
今回はEC2へCloudWatchAgentのインストールを行います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/158b7b1e-79df-3f0c-c425-517fa5689f97.png)

EC2へCloudWatchAgentのインストールする場合は、下記二つの方法が選択できます。

・SSMのRunCommandを利用する方法
・EC2へログインしコマンドベースでCloudWatchAgentをインストールする方法

今回の記事では、二つのCloudWatchAgentインストール手順をご紹介していきます。

## SSMによるRunCommand実行手順（おすすめ）
SSMの設定が完了している場合は、RunCommandを利用して簡単にCloudWatchAgentインストールを行うことができます。
複数のインスタンスに対して一気にCloudWatchAgentのインストールを行うこともできるため、SSMが利用できる場合はこちらの手順をお勧めします。

SystemsManagerのトップページへ移動し、左メニューから「Run Command」を押下します。
RunCommandのトップページが表示されます。
右上の「RunCommand」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/3a11b9e9-ac97-25ea-70d3-e20e37de877b.png)


コマンドの実行画面が表示されます。

「コマンドドキュメント」のテキストボックスに「AWS-ConfigureAWSPackage」と入力します。
表示されたコマンドドキュメントのチェックボックスにチェックを入れます。
「ドキュメントのバージョン」はデフォルトの状態とし、下へスクロールします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/3f796ccf-8317-7a0c-2aef-08f8d8f92f2e.png)

コマンドの実行パラメータ設定をします。
「Action」のテキストボックスに「Install」と入力されていることを確認します。
「Installation Type」についてはデフォルトの状態から変更しません。
「Name」のテキストボックスに「AmazonCloudWatchAgent」と入力し、下へスクロールします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/a21d5167-ac1d-4100-4073-dbdbb89fbc42.png)

RunCommandの実行ターゲットを選択します。
「インスタンスを手動で選択する」のチェックボックスにチェックを入れ、
表示されているインスタンス一覧から対象インスタンスのチェックボックスにチェックを入れます。
ここでインスタンスを複数選択することも可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/aeab8a1b-22bd-573b-8658-11a709685e14.png)

その他パラメータについてはデフォルトの状態から変更しません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/29b6766f-31d1-8870-11c3-2e96ca3474d7.png)

「出力オプション」の設定を行います。
「S3バケットへの書き込みを有効化する」のチェックを外し、下へスクロールします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/7a84a55e-4feb-0c43-4a96-26b5fdd2a4cb.png)

その他の設定はとくに変更せず、「実行」を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2237429/8e436ff5-20c1-2da7-47c3-a57996dc697a.png)

CloudWatchAgentのインストールが開始されます。
「ステータス」「詳細なステータス」の部分に「成功」と表示されるまで、しばらく待機します。

## コマンドによるCloudWatchAgentインストール手順
SSMが利用できない場合は、コマンドでCloudWatchAgentのインストールを行うこともできます。
ただし、CloudWatchAgentのインストールファイルをサーバー内にダウンロードしておく必要がある点に注意が必要です。
EC2がプライベートサブネット上にある場合は、NatGatewayや踏み台サーバーを利用してCloudWatchAgentのインストールファイルをダウンロードする必要があります。

### Amazon Linux/SuseLinuxの場合のインストール手順
AmazonLinuxやSUSELinuxの場合は、下記コマンドによりCloudWatchAgentのダウンロード・インストールが行えます。

■CloudWatchAgentのダウンロード

    wget download-link

※「download-link」の部分はOSに対応した[CloudWatchAgentのダウンロードURL](https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/download-cloudwatch-agent-commandline.html)を読み替えてください。

例えばAmazonLinuxの場合は「
https\://amazoncloudwatch-agent.s3.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm」となります。

■CloudWatchAgentのインストール

    sudo rpm -U ./amazon-cloudwatch-agent.rpm

### Windowsの場合のインストール手順

■CloudWatchAgentのダウンロード
Windows用のCloudWatchダウンロードURLからmsiファイルをダウンロードします。

・Windows用のCloudWatchダウンロードURL
[https\://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/amazon-cloudwatch-agent.msi](https\://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/amazon-cloudwatch-agent.msi)

msiファイルのダウンロードが完了したら、
PowerShellかコマンドプロンプトでmsiファイルが配置されているディレクトリまで移動します。

    cd C:\Users\ユーザー名\Downloads

msiファイルが配置されているディレクトリまで移動したら、下記コマンドを実行します。

    msiexec /i amazon-cloudwatch-agent.msi

## CloudWatchAgentのインストール確認
### Linuxの場合
特に指定なくCloudWatchAgentをインストールした場合は、下記フォルダ配下にCloudWatchAgentがインストールされます。

#### CloudWatchAgentのインストールフォルダ

    /opt/aws/amazon-cloudwatch-agent/

#### CloudWatchAgentのログファイル
また、ログファイルは下記フォルダに配置されるため、CloudWatchAgentに問題が発生した場合は、まず下記を確認するようにしてください。

    /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log


### Windowsの場合
特に指定なくCloudWatchAgentをインストールした場合は、下記フォルダ配下にCloudWatchAgentがインストールされます。

#### CloudWatchAgentのインストールフォルダ

    c:\\ProgramData\\Amazon\\CloudWatchAgent\\

#### CloudWatchAgentのログファイル
また、ログファイルは下記フォルダに配置されるため、CloudWatchAgentに問題が発生した場合は、まず下記を確認するようにしてください。

    c:\\ProgramData\\Amazon\\CloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log

ここまでお読みいただきありがとうございました。
次回からはCloudWatchAgentのConfigファイル記述方法について書いていこうと思います。