update.EC2のCPU使用率やネットワークI/OなどはCloudWatchの標準メトリクスで監視可能ですが、メモリやディスクの使用率などはカスタムメトリクスを使用しなければ取得することができません。エージェントを使用したカスタムメトリクスの収集方法を紹介します。カスタムメトリクスEC2インスタンスのカスタムメトリクスを取得する方法は以下の方法があります。エージェントを使用する。Scriptを使用する。SDKを使用してスクリプトを自作する。CLIを使用してスクリプトを自作する。エージェントを用いてカスタムメトリクスを収集することを推奨しています。エージェントをインストールすることで、メモリやディスクなどの標準メトリクスでは取得できないメトリクスやログを収集することができます。エージェントを使用する利点としては以下があげられます。Managerを使用することで、設定を他のサーバーでも共有できることがおすすめです。複数のサーバーの監視項目設定を一括で変更と反映ができます。エージェントの導入プロセスは以下のようになります。エージェントを起動するIAMロールの作成まずがIAMロールを作成します。Managerと通信するために必要なアクセス権限を作成する必要があります。ロールに設定するポリシーは以下の3つです。CloudWatchAgentServerPolicyAmazonEC2RoleforSSMAmazonSSMReadOnlyAccessロール名は「CloudWatchAgentRole」とします。IAMロール作成は割愛します。以下のサイトを参考にしてください。Typeを利用します。CloudWatchAgentRoleインスタンスには先ほど作成したIAMロールをアタッチします。インストールを行うために、wgetとunzipが必要なのでインストールします。エージェントをダウンロードし解凍とインストール用のシェルを起動します。Agentが/opt/aws/amazon-cloudwatch-agentのディレクトリにインストールされます。Mangerで収集するメトリクスとその収集間隔を設定します。今回はメモリ使用率(mem_used_percent)とディスク使用率(disk_used_percent)を収集します。設定はJSON形式で記述します。Managerのコンソールからパラメーターストアに移動しパラメータの作成を行います。以下の設定を行い、パラメータの作成を押すと完了です。}}各項目について簡単に紹介しますが、設定ファイルの記述方法は以下のサイトに詳しく掲載されています。エージェントの設定ファイルは、agent、metrics、logsの3つのセクションからなるJSONファイルです。Logsに発行されるログファイルの設定をするフィールド今回はログファイルの収集は行わないので省略しています。metricsセクションでは収集するカスタムメトリクスについて以下の設定を行っています。収集するメトリクスの項目とその収集間隔の設定カスタムメトリクスの収集の設定を行うmetrics_collectedタグについて、インスタンスのメモリ情報の取得を例に紹介します。メモリを取得する設定。ディスクの情報を取得する際はdiskと記述する。取得するメトリクス名を設定。エージェントにより収集されるメトリクスのメトリクス名を指定します。メトリクスの取得間隔を秒単位で設定します。Managerで作成し終えると、あとはエージェントをインストールしたインスタンスで設定ファイルを指定してAgentを実行するのみです。Agentの起動は以下のコマンドで行います。Managerのパラメーターストアから設定ファイルを読み込むように指定し、-cオプションで設定ファイルを指定しています。指定方法は、ssm:"パラメーター名"となります。以下のようなログが出力されれば成功です。エージェントを停止するには以下のコマンドを実行します。stop確認CloudWatchのコンソールからメトリクスに移動しカスタム名前空間を確認してください。設定ファイルのmetricsフィールドのnamespaceタグで設定した名前空間が作成されています。エージェントを使用してEC2インスタンスのカスタムメトリクスを取得する方法を紹介しました。標準メトリクスと同様に、取得したメトリクスに対してアラームを設定すればカスタムメトリクスの監視を行うことができます。スクリプトを使用または自作するよりも、設定が簡単でAutoScalingなどの冗長性にも簡単に対応できると思います。エージェント自体のサーバーへの負荷も低いので安心して使用できると思います。requestStockLike22@t_okkanhttp://www.kronos.jpFollow株式会社クロノスAI開発・WEB開発・システム開発・Android開発・iOS開発・IT研修・トレーニング・新入社員研修などを行う企業です。upLoginユーザーは見つかりませんでした。