CloudWatch エージェント設定ファイルの管理 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CloudWatch エージェント設定ファイルの管理

すべての Amazon Elastic Compute Cloud (Amazon EC2) インスタンスとオンプレミスサーバーでキャプチャするシステムログとメトリクスを含む標準 Amazon CloudWatch エージェント設定を作成することをお勧めします。 CloudWatch エージェント設定ファイルウィザードを使用して、設定ファイルを作成できます。構成ウィザードを複数回実行することで、異なるシステムや環境に対して固有の構成を生成することができます。また、設定ファイルのスキーマ を使用して、設定ファイルを変更したり、バリエーションを作成したりすることもできます。 CloudWatch エージェント設定ファイルは、AWSSystems Manager パラメータストアのパラメータに保存できます。 複数の CloudWatch エージェント設定ファイルがある場合は、個別の Parameter Store パラメータを作成できます。複数のAWSアカウントまたはAWSリージョンを使用している場合は、各アカウントとリージョンで Parameter Store パラメータを管理および更新する必要があります。または、Amazon S3 または任意のバージョン管理ツールで CloudWatch 、設定をファイルとして一元管理することもできます。 

CloudWatch エージェントに含まれているamazon-cloudwatch-agent-ctlスクリプトでは、設定ファイル、Parameter Store パラメータ、またはエージェントのデフォルト設定を指定できます。デフォルト設定は、事前定義された基本的なメトリクスセットに合わせており、メモリとディスク容量のメトリクスをレポートするようにエージェントを設定します CloudWatch。ただし、ログファイルの設定は含まれません。エージェントにSystems Manager 高速セットアップを使用する場合も、デフォルト設定が適用されます CloudWatch 。

デフォルト設定にはログ記録が含まれず、要件に合わせてカスタマイズされていないため、要件に合わせてカスタマイズした独自の CloudWatch 設定を作成して適用することをお勧めします。

CloudWatch 設定の管理

デフォルトでは、 CloudWatch 設定は Parameter Store パラメータまたは CloudWatch 設定ファイルとして保存および適用できます。  最適な選択は、要件によって異なります。  このセクションでは、これら 2 つのオプションのメリットとデメリットについて説明します。  代表的なソリューションも、複数のAWSアカウントとAWSリージョン CloudWatch の設定ファイルを管理するために詳しく説明されています。

Systems Manager パラメータストアのパラメータ

Parameter Store パラメータを使用して CloudWatch 設定を管理するのは、少数のAWSアカウントとリージョンで適用して管理する単一の標準 CloudWatch エージェント設定ファイルがある場合に適しています。 CloudWatch 設定を Parameter Store パラメータとして保存すると、 CloudWatch エージェント設定ツール (amazon-cloudwatch-agent-ctlLinux の場合) を使用して、設定ファイルをインスタンスにコピーすることなく、Parameter Store から設定を読み取って適用できます。AmazonCloudWatch-ManageAgent Systems Manager コマンドドキュメントを使用して、1 回の実行で複数のEC2インスタンス CloudWatch の設定を更新できます。Parameter Store パラメータはリージョン別であるため、各AWSリージョンとAWSアカウントで Parameter Store パラメータを更新して維持 CloudWatchする必要があります。各インスタンスに適用する設定が複数 CloudWatchある場合は、 AmazonCloudWatch-ManageAgent コマンドドキュメントをカスタマイズ して、これらのパラメータを含める必要があります。

CloudWatch 設定ファイル

多数のAWSアカウントとリージョンがあり、複数の CloudWatch 設定ファイルを管理している場合、ファイルとして CloudWatch 設定を管理することはうまくいくかもしれません。このアプローチを使用すると、フォルダ構造で参照、整理、管理できます。  セキュリティルールを個々のフォルダまたはファイルに適用して、更新や読み取りアクセス許可などのアクセスを制限および付与できます。コラボレーションAWSのために の外部で共有および転送できます。  ファイルのバージョン管理により、変更を追跡および管理できます。  各設定ファイルを個別に適用 CloudWatchせずに、設定ファイルを CloudWatch エージェント設定ディレクトリにコピーすることで、設定をまとめて適用できます。Linux の場合、 CloudWatch 設定ディレクトリは にあります/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d。Windows の場合、設定ディレクトリは にありますC:\ProgramData\Amazon\AmazonCloudWatchAgent\Configs

CloudWatch エージェントを起動すると、エージェントはこれらのディレクトリにある各ファイルを自動的に追加して、 CloudWatch 複合設定ファイルを作成します。設定ファイルは、必要なアカウントとリージョンがアクセスできる中央ロケーション(例えば、S3 バケット)に保存する必要があります。  このアプローチを使用したソリューションの例を示します。

CloudWatch 設定の整理

CloudWatch 設定の管理に使用されるアプローチに関係なく、 CloudWatch 設定を整理します。次のようなアプローチを使用して、設定をファイルまたは Parameter Store パスに整理できます。

/config/standard/windows/ec2

Amazon 用の Windows 固有の標準 CloudWatch 設定ファイルを保存しますEC2。このフォルダでは、さまざまな Windows バージョン、EC2インスタンスタイプ、環境の標準オペレーティングシステム (OS) 設定をさらに分類できます。

/config/standard/windows/onpremises

オンプレミスサーバー用の Windows 固有の標準 CloudWatch 設定ファイルを保存します。また、このフォルダのさまざまな Windows バージョン、サーバータイプ、環境の標準 OS 設定をさらに分類します。

/config/standard/linux/ec2

Amazon 用の Linux 固有の標準 CloudWatch 設定ファイルを保存しますEC2。このフォルダでは、さまざまな Linux ディストリビューション、EC2インスタンスタイプ、環境の標準 OS 設定をさらに分類できます。

/config/standard/linux/onpremises

オンプレミスサーバー用の Linux 固有の標準 CloudWatch 設定ファイルを保存します。このフォルダでは、さまざまな Linux ディストリビューション、サーバータイプ、環境の標準 OS 設定をさらに分類できます。

/config/ecs

Amazon ECSコンテナインスタンスを使用する場合は、Amazon Elastic Container Service (Amazon ECS) に固有の CloudWatch 設定ファイルを保存します。これらの設定は、Amazon ECS固有のシステムレベルのログ記録とモニタリングの標準 Amazon EC2設定に追加できます。

/config/ <application_name>

アプリケーション固有の CloudWatch 設定ファイルを保存します。環境とバージョンの追加のフォルダとプレフィックスを使用して、アプリケーションをさらに分類できます。

例: S3 バケットに設定 CloudWatch ファイルを保存する

このセクションでは、Amazon S3 を使用して CloudWatch 設定ファイルを保存し、カスタム Systems Manager ランブックを使用して CloudWatch 設定ファイルを取得して適用する例を示します。このアプローチでは、Systems Manager パラメータストアのパラメータを大規模 CloudWatch に設定する際に発生する課題に対処できます。

  • 複数のリージョンを使用する場合は、各リージョンの Parameter Store で CloudWatch 設定の更新を同期する必要があります。Parameter Store はリージョナルサービスであり、 CloudWatch エージェントを使用する各リージョンで同じパラメータを更新する必要があります。

  • 複数の CloudWatch 設定がある場合は、各 Parameter Store 設定の取得と適用を開始する必要があります。パラメータストアから各 CloudWatch 設定を個別に取得し、新しい設定を追加するたびに取得方法を更新する必要があります。これとは対照的に、 は設定ファイルを保存するための設定ディレクトリ CloudWatch を提供し、各設定を個別に指定することなくディレクトリに適用します。

  • 複数のアカウントを使用する場合は、新しいアカウントごとに Parameter Store に必要な CloudWatch 設定があることを確認する必要があります。また、構成の変更が今後これらのアカウントとそのリージョンに適用されていることを確認する必要があります。

CloudWatch 設定は、すべてのアカウントとリージョンからアクセスできる S3 バケットに保存できます。その後、Systems Manager Automation ランブックと Systems Manager State Manager を使用して、S3 バケットから設定ディレクトリにこれらの CloudWatch 設定をコピーできます。cloudwatch-config-s3-bucket.yaml AWS CloudFormation テンプレートを使用して、AWSOrganizations の組織内の複数のアカウントからアクセスできる S3 バケットを作成できます。このテンプレートには、組織 内のすべてのアカウントに読み取りアクセスを許可する OrganizationID パラメータが含まれています。

このガイドの CloudWatch 「エージェントのデプロイと設定のためのステートマネージャーとディストリビューターのセットアップ」セクションにある拡張サンプル Systems Manager ランブックは、cloudwatch-config-s3-bucket.yaml AWS CloudFormation テンプレートで作成された S3 バケットを使用してファイルを取得するように設定されています。

または、バージョン管理システム ( など GitHub) を使用して設定ファイルを保存することもできます。バージョン管理システムに保存されている設定ファイルを自動的に取得する場合は、認証情報ストレージを管理または一元化し、アカウントと 全体の認証情報を取得するために使用される Systems Manager Automation ランブックを更新する必要があります AWS リージョン。