翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
例: カスタム Amazon CloudWatch メトリクスの使用
このトピックでは、Amazon Linux 2 以降をベースとするプラットフォーム用の Amazon CloudWatch エージェントと Elastic Beanstalk メトリクスを統合する設定例を示します。設定例では、.ebextensions
設定ファイル内のファイルとコマンドを使用します。
Amazon CloudWatch は、さまざまなメトリクスをモニタリング、管理、発行し、メトリクスからのデータに基づいてアラームアクションを設定できるウェブサービスです。独自に使用するカスタムメトリクスを定義でき、Elastic Beanstalk はそのようなメトリクスを Amazon CloudWatch にプッシュします。Amazon CloudWatch に組み込まれたカスタムメトリクスは、Amazon CloudWatch コンソールで表示できます。
重要
Amazon CloudWatch モニタリングスクリプトは非推奨です。CloudWatch エージェントは、メトリクスとログを収集する CloudWatch モニタリング スクリプトを置き換えました。
非推奨のモニタリング スクリプトからエージェントにまだ移行中で、モニタリングスクリプトに関する情報が必要な場合は、「Amazon EC2 ユーザーガイド」の「非推奨: CloudWatch モニタリング スクリプトを使用してメトリクスを収集する」を参照してください。
Amazon CloudWatch エージェント
Amazon CloudWatch エージェントは、オペレーティングシステム全体で Amazon EC2 インスタンスとオンプレミスサーバーの両方から CloudWatch メトリクスとログ収集を有効にします。エージェントは、システムレベルで収集されたメトリクスをサポートします。また、アプリケーションまたはサービスからカスタムログおよびメトリクスを収集できます。Amazon CloudWatch エージェントの詳細については、Amazon CloudWatch ユーザーガイドの CloudWatch エージェントを使用した メトリクスとログの収集を参照してください。
注記
Elastic Beanstalk の拡張ヘルスレポートでは、CloudWatch への幅広いインスタンスと環境メトリクスの発行がネイティブでサポートされています。詳細については、「環境の Amazon CloudWatch カスタムメトリクスの発行」を参照してください。
.Ebextensions 設定ファイル
この例では、.ebextensions 設定ファイルでファイルとコマンドを使用して、Amazon Linux 2 プラットフォームで Amazon CloudWatch エージェントを設定および実行しています。エージェントは Amazon Linux 2 で事前にパッケージ化されています。別のオペレーティングシステムを使用している場合は、エージェントをインストールするための追加手順が必要になる場合があります。詳細については、Amazon CloudWatch ユーザーガイドのCloudWatch エージェントのインストールを参照してください。
このサンプルを使用するには、プロジェクトディレクトリの最上位にある .ebextensions
ディレクトリに cloudwatch.config
というファイル名で保存した後、Elastic Beanstalk コンソール (ソースバンドルに .ebextensions ディレクトリを含める) または EB CLI を使用してアプリケーションをデプロイします。
設定ファイルの詳細については、「設定ファイル (.ebextensions) による高度な環境のカスタマイズ」を参照してください。
.ebextensions/cloudwatch.config
files:
"/opt/aws/amazon-cloudwatch-agent/bin/config.json":
mode: "000600"
owner: root
group: root
content: |
{
"agent": {
"metrics_collection_interval": 60,
"run_as_user": "root"
},
"metrics": {
"namespace": "System/Linux",
"append_dimensions": {
"AutoScalingGroupName": "${aws:AutoScalingGroupName}"
},
"metrics_collected": {
"mem": {
"measurement": [
"mem_used_percent"
]
}
}
}
}
container_commands:
start_cloudwatch_agent:
command: /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a append-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json
このファイルには 2 つのセクションがあります。
-
files
— このセクションでは、エージェント設定ファイルを追加します。エージェントが Amazon CloudWatch に送信するメトリクスとログを示します。この例では、mem_used_percent メトリクスのみを送信しています。Amazon CloudWatch エージェントでサポートされているシステムレベルのメトリクスの完全なリストについては、Amazon CloudWatch ユーザーガイドの CloudWatch エージェントにより収集されるメトリクスを参照してください。の。 -
container_commands
— このセクションには、エージェントを起動し、設定ファイルをパラメータとして渡すコマンドが含まれています。container_commands
の詳細については、コンテナコマンド を参照してください。
アクセス許可
環境内のインスタンスには、Amazon CloudWatch エージェントを使用してカスタム Amazon CloudWatch メトリクスを発行するための適切な IAM アクセス許可が必要です。環境のインスタンスプロファイルにアクセス許可を追加することにより、その環境のインスタンスにアクセス許可を付与します。アプリケーションをデプロイする前または後のどちらでも、インスタンスプロファイルにアクセス権限を追加できます。
CloudWatch メトリックを発行する許可を付与するには
IAM コンソール (https://console.aws.amazon.com/iam/
) を開きます。 -
ナビゲーションペインで [Roles] (ロール) を選択します。
-
環境のインスタンスプロファイルのロールを選択します。デフォルトでは、Elastic Beanstalk コンソールまたは EB CLI を使用して環境を作成する場合のロールは
aws-elasticbeanstalk-ec2-role
です。 -
[アクセス許可] タブを選択します。
-
[Permissions Policies] (アクセス許可ポリシー) の[Permissions] (アクセス許可) セクションで、[Attach policies] (ポリシーの添付) を選択します。
-
[Attach Permissions] (アクセス許可の添付) で、AWS マネージドポリシー CloudWatchAgentServerPolicy を選択します。次に、[Attach Policy] (ポリシーを添付) をクリックします。
ポリシーの管理の詳細については、IAM ユーザーガイドの「Working with Policies (ポリシーの使用)」を参照してください。
CloudWatch コンソールでのメトリクスの表示
CloudWatch の設定ファイルを環境にデプロイした後、Amazon CloudWatch コンソール
詳細については、Amazon CloudWatch ユーザーガイドの「使用可能なメトリクスの表示」を参照してください。