Windows 環境で Elastic Beanstalk の CloudWatch メモリ使用状況メトリックをモニタリングする方法を教えてください。

最終更新日: 2019 年 12 月 31 日

Windows の AWS Elastic Beanstalk 環境から Amazon CloudWatch でメモリ使用率をモニタリングする方法を教えてください。

簡単な説明

Elastic Beanstalk 設定ファイル (.ebextensions) を使用して、IIS を使用する Windows Server 上の CloudWatch for .NET でメモリ使用率をモニタリングできます。

注意: デフォルトでは、CloudWatch エージェントは、プラットフォームバージョン 2.0.1 以降を実行するすべての Elastic Beanstalk Windows 環境にインストールされます。

解決方法

.ebextensions ディレクトリを設定する

アプリケーションバンドルのルートに、.ebextensions という名前の隠しディレクトリを作成します。

アプリケーションソースバンドルの例:

  ~/workspace/my-application/
  |-- Content
  |-- .ebextensions
  |  
  |-- archive.xml
  `-- systemInfo.xml

設定ファイルと PowerShell スクリプトを作成して保存する

アプリケーションソースバンドルの一部として作成した .ebextension フォルダ内に 01_cw-memory-config.config というファイルを作成します。

設定ファイルの例:

files:
  "C:\\Program Files\\Amazon\\AmazonCloudWatchAgent\\cw-memory-config.json":
    content: |
      {
          "metrics": {
              "append_dimensions": {
                  "AutoScalingGroupName": "${aws:AutoScalingGroupName}",
                  "ImageId": "${aws:ImageId}",
                  "InstanceId": "${aws:InstanceId}",
                  "InstanceType": "${aws:InstanceType}"
              },
              "metrics_collected": {
                  "Memory": {
                      "measurement": [
                          "% Committed Bytes In Use"
                      ],
                      "metrics_collection_interval": 10
                  }
              }
          }
      }

container_commands:
  01_set_config_and_reinitialize_cw_agent:
    command: powershell.exe cd 'C:\Program Files\Amazon\AmazonCloudWatchAgent'; powershell.exe -ExecutionPolicy Bypass -File ./amazon-cloudwatch-agent-ctl.ps1 -a append-config -m ec2 -c file:cw-memory-config.json -s; powershell.exe -ExecutionPolicy Bypass -File ./amazon-cloudwatch-agent-ctl.ps1 -a start; exit

01_cw-memory-config.config 設定ファイルは、次を実行します。

  • CloudWatch エージェントが収集して CloudWatch にプッシュするメトリックを定義します。
  • 使用メモリの割合メトリックを収集します。

注意: Amazon Elastic Compute Cloud (Amazon EC2) でサポートされている CloudWatch メトリック一覧については、CloudWatch 組み込みメトリックを参照してください。

ファイルセクションには、CloudWatch にプッシュするメトリックを定義する CloudWatch 設定 JSON コンテンツが含まれています。container_commands セクションでは、アプリケーションバンドルが Amazon EC2 インスタンスで解凍された後、コマンドを実行します。

01_cw-memory-config.config ファイルを使用したアプリケーションソースバンドルの例:

~/workspace/my-application/
|-- Content
|-- .ebextensions
|   |--01_cw-memory-config.config
|  
|-- archive.xml
`-- systemInfo.xml

アプリケーションをデプロイし、メトリックを表示する

1.    更新した Elastic Beanstalk アプリケーションをデプロイします

2.    メモリ使用率メトリックを表示するには、CloudWatch コンソールを開き、ナビゲーションペインでメトリックを選択します。メトリックは、CWAgent というラベルのカスタム名前空間で確認できます。


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合