CloudWatchでEC2インスタンスのモニタリングを行う
AWSに用意されている CloudWatch サービスを利用して EC2インスタンスのモニタリングを行うための方法
EC2を監視する
システムを監視し、問題があった場合にはこれを検知して対応をする事はシステムを運用する上で非常に重要です。
AWSではシステム監視のためのサービスとして Amazon CloudWatch が用意されています。
EC2インスタンスに関して基本のモニタリングはデフォルトで利用可能となっています。
料金
CloudWatch の料金に関しては 料金 を参照してください。
この記事執筆時点では EC2 インスタンスの基本モニタリングのメトリックス(5分間隔)は無料 となっています。
収集されたメトリックスを見る
CloudWatchが収集したメトリックスを参照する手順を示します。
- AWS のサイトからAWSマネジメントコンソール(以下コンソール)にログインします。
- コンソールから CloudWatch をクリックします。
- Metric Summary画面が表示されるので、 Browse Metrics ボタンをクリックします。
- CloudWatch Metrics by Category 画面が表示されるので、EC2 Metrics リンクをクリックします。
- 参照可能なメトリックスの一覧が表示されます。
- 参照したいメトリックスをチェックすると、画面下部にグラフ表示されます。
(下図は CPUUtilization, 及び、NetworkOutをチェックした状態)
画面右下のTime Rangeの設定を変更する事で、過去14日分のメトリックスを参照する事が可能です。
標準のメトリックス
デフォルトで用意されているメトリックスは以下になります。
メトリックス名 | 意味 (単位) | 値 |
---|---|---|
CPUUtilization | CPU使用率 (%) | |
DiskReadBytes | ディスク読み込みバイト (Bytes) | |
DiskReadOps | ディスク読み込みオペレーション (回数) | |
DiskWriteBytes | ディスク書き込みバイト (Bytes) | |
DiskWriteOps | ディスク書き込みオペレーション (回数) | |
NetworkIn | ネットワーク受信 (Bytes) | |
NetworkOut | ネットワーク送信 (Bytes) | |
StatusCheckFailed | インスタンスとシステムのステータスチェック失敗 | 直近1分のチェック状態 0(成功) か 1(失敗) |
StatusCheckFailed_Instance | インスタンスのステータスチェック失敗 OSレベルでのチェック |
直近1分のチェック状態 0(成功) か 1(失敗) |
StatusCheckFailed_System | システムのステータスチェック失敗 仮想マシンレベルでのチェック |
直近1分のチェック状態 0(成功) か 1(失敗) |
アラームの設定
メトリックスの参照については上記で可能ですが、この画面で監視し続ける訳にはいかないので、メトリックス値に問題が発生した場合にアラームが上がってくるようにします。
以下、ステータスチェックに失敗した場合に、管理者宛てにメール通知を飛ばすためのアラームを作成する手順を示します。
- CloudWatch画面の左メニューから Alarms リンクをクリックします。
Alarms一覧画面に遷移するので、Create Alarm ボタンをクリックします。
- Select Metric 画面に遷移するので、アラーム通知を行う際にチェックするメトリックを選択します。
画面右側にはメトリックへのリンクが表示されるので、対象となるメトリックが表示される画面まで移動し、チェック対象のメトリックをチェックします。
メトリックを選択したら Next ボタンをクリックします。
- Alarm Threshold 画面に遷移します。
アラームの閾値を設定します。先に選択したメトリックの値がどうなった時にアクションを発生させるかを定義します。
以下画面の設定では、StatusCheckFailed の値が 1 (失敗) 以上になった場合に、メールを送信する設定になっています。
設定が完了したら、Create Alarm ボタンをクリックします。
- 通知先として設定したアドレスに対してメールが送信されます。
Confirm subscription リンクをクリックする事で、登録が完了します。
実際の通知メール
実際にアラームが発生した場合には、以下のような通知が送信されてきます。
CPU使用率の閾値=8%にして、メール送信させてみました。

まとめ
CloudWatch を利用する事でAWSのモニタリングが可能になります。
基本メトリックだけで足りるならば、設定も簡単ですし、コストも殆どかかりません。
また、カスタムメトリックスを作成する事で、基本メトリックではサポートしていない独自のメトリックスのモニタリングを行う事も可能です。
AWSの監視を行いたい場合の選択肢の一つとして上手に利用してみるとよいのではないでしょうか。
CloudWatch に関しては、弊社でモニタリングを行うツール ( Windows や Linux で利用可能な GUI アプリケーション ) CloudWatch Monitor も無償提供しています。
簡単な閾値でのアラーム機能もついているので、もしよかったら使ってみてください。