CloudWatchとは?AWS EC2のメモリ使用率を監視する方法を解説


CloudWatchとは?
CloudWatchとは、AWSリソースやAWSで実行されるアプリケーションを監視するためのサービスです。
AWS EC2は、デフォルトでCPU使用率やネットワーク使用率をモニタリングすることができますが、メモリ使用率はモニタリングできません。
そこで、CloudWatchを使用することでメモリ使用率やディスク使用率などもモニタリングできるようになります。
CloudWatchは、メトリクスと呼ばれる単位で監視対象を設定します。CloudWatchは、CloudWatch エージェントと呼ばれるパッケージをサーバーにインストールすることで使用できるようになります。
CloudWatchのインストール方法
CloudWatchをインストールするには3種類の方法があります。
・コマンドラインを使用する
・AWS Systems Managerを使用する
・AWS CloudFormationを使用する
今回はコマンドラインを使用したCloudWatchのインストール方法について説明します。
CloudWatch エージェントパッケージのダウンロードとインストール
CloudWatch エージェントパッケージのダウンロードとインストールは以下の手順で行います。
①CloudWatch エージェントパッケージをダウンロードするには、AWSサーバーから以下のコマンドを実行します。
wget https://s3.us-east-1.amazonaws.com/amazoncloudwatch-agent-us-east-1/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
②以下のコマンドを実行して、CloudWatch エージェントパッケージをインストールします。
sudo rpm -U ./amazon-cloudwatch-agent.rpm
メモリ使用率の監視方法
インストールしたCloudWatch エージェントを使用して、AWS EC2のリソースで使用されているメモリ使用率を監視します。
以下の手順で設定していきます。
①CloudWatch エージェント設定ファイルの作成
②CloudWatch エージェントの開始
③CloudWatchに送信されたメモリ使用率の確認
CloudWatch エージェント設定ファイルの作成
CloudWatch エージェントを実行するためには設定ファイルを作成する必要があります。
設定ファイルにはCloudWatch エージェントが収集するメトリクスとログを指定します。設定ファイルはJSON形式のファイルで、agent、metrics、logという3つのセクションで構成されています。
設定ファイルは2種類の方法で作成できます。
・手動で作成する
・ウィザードを使用して作成する
今回は手動で作成する方法について説明します。
agentセクション
CloudWatch エージェントの全体的な設定に関する項目を指定します。
ウィザードを使用して作成する場合は、agentセクションは作成されません。
agentセクションには以下の項目を設定します。
項目 | 説明 | デフォルト値 |
---|---|---|
metrics_collection_interval | メトリクスが収集される頻度を秒数で指定します。 | 60 |
region | メトリクスを送信するリージョンを指定します。 | AWS EC2インスタンスが配置されているリージョン |
credentials | 異なるAWSアカウントにメトリクスを送信するときのIAM ロールを指定します。 | |
debug | デバッグログを使用するかどうかを指定します。 | false |
logfile | ログファイルの出力先を指定します。 | /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log |
omit_hostname | メトリクスのディメンションとしてホスト名を発行するかどうかを指定します。 | false |
run_as_user | CloudWatch エージェントを実行するユーザーを指定します。 | root |
metricsセクション
収集とCloudWatchへの発行に関するカスタムメトリクスを指定します。
ログを収集するためだけにCloudWatch エージェントを使用している場合は、metricsセクションを省略することができます。
metricsセクションには以下の項目が設定可能です。
項目 | 説明 | デフォルト値 |
---|---|---|
namespace | メトリクスに使用する名前空間を最大255文字で指定します。 | CWAgent |
append_dimensions | 収集されたメトリクスにAWS EC2メトリクスのディメンションを追加します。 | |
aggregation_dimensions | 収集されたメトリクスが集計されるディメンションを指定します。 | |
endpoint_override | メトリクスを送信するエンドポイントをURL文字列で指定します。 | |
metrics_collected | 収集するメトリクスを指定します。この項目は必須です。”mem_used_percent”を指定することでメモリ使用率を収集できます。 | |
force_flush_interval | メトリクスがフラッシュ(サーバに送信)されるまでの秒数を指定します。 | 60 |
credentials | 異なるAWSアカウントにメトリクスを送信するときのIAM ロールを指定します。 |
logセクション
ログファイルに関する項目を指定します。
サーバーがWindows Serverの場合、Windowsイベントログからのイベントが含まれる場合があります。
logセクションには以下の項目が設定可能です。
項目 | 説明 | デフォルト値 |
---|---|---|
logs_collected | サーバーから収集するログファイルおよび Windows イベントログを指定します。 | |
log_stream_name | 個別のログストリームが定義されていない場合に、代わりに使用するデフォルトのログストリーム名を指定します。 | |
endpoint_override | ログを送信するエンドポイントをURL文字列で指定します。 | |
force_flush_interval | ログがフラッシュ(サーバに送信)されるまでの秒数を指定します。 | 60 |
credentials | 異なるAWSアカウントにログを送信するときのIAM ロールを指定します。 | |
metrics_collected | ログに埋め込まれたメトリクスを収集するように指定します。 |
CloudWatch エージェントの開始
以下の方法でCloudWatch エージェントを開始します。
①AWSシステムマネージャーにログインします。
②「Run command」を選択して、リストから「AmazonCloudWatch-ManageAgent」を選択します。
③「Target」でCloudWatch エージェントのインスタンスを選択します。
④「Optional Configuration Location」に、作成したCloudWatch エージェント設定ファイルを指定します。
⑤最後に「Run」を選択してCloudWatch エージェントを開始します。
CloudWatchに送信されたメモリ使用率の確認
CloudWatch エージェントが収集したメモリ使用率の情報は、以下の方法で確認します。
①CloudWatch コンソールを開きます。
②ナビゲーションから「メトリクス」を選択します。
③前項で設定したインスタンスを選択します。
④「mem_used_percent」を選択してメモリ使用率を確認します。
CloudWatchを使ってAWS EC2のメモリ使用率をモニタリングしよう!
メモリ使用率の監視はシステムの安定稼働にとって非常に重要です。
メモリ使用率を監視することで、システム障害を未然に防ぐことが可能となります。
また、万が一システム障害が発生した場合でも、監視していたメモリ使用率のログを確認することで障害発生のタイミングや原因の調査が容易になります。
それに、AWS EC2のどのリソースがどのくらいのメモリ使用率かを把握しておくことで、リソースを横展開する場合の影響度や、AWSの環境を新しく構築する時にどのくらいメモリ容量を準備しておけばよいかの目安にもなります。
慣れないうちは設定方法も難しく、設定後の管理画面の見方もわかりにくいですが、使い方に慣れてくるとシステム保守が劇的に効率化されます。
メモリ使用率だけでなく、ほかにもシステムの運用・保守に必要な情報が詰まっているので実際に使ってみて、自分が使いやすいように情報を整理するコツを見つけましょう。
この記事の監修者・著者

- AWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
-
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。
・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
最新の投稿
- 2024-12-27営業インタビュー情報共有の活性化の中心に。SP企画部の新たな取り組み
- 2024-07-01営業インタビュー最短で当日にご提案可能。 OPE営業の対応が早い3つの理由
- 2024-07-01営業インタビュー研修見学ツアーが高評価!「お客様のOPEに対する期待を高め、継続に貢献できればと思います。」
- 2024-07-01営業インタビュー信頼関係を構築し、エンジニアの長期就業へ

- 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
- すぐに採用したいが、応募がぜんぜん集まらない
オープンアップITエンジニアをご検討ください!
当社のITエンジニア派遣サービスは
- 派遣スピードが速い!(最短即日)
- 4,500名のエンジニアから貴社にマッチした人材を派遣
- 正社員雇用も可能
こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。