2
0

More than 1 year has passed since last update.

EC2インスタンスのCPU使用率を監視する

Last updated at Posted at 2022-08-07

CPU使用率のモニタリングをしていなかったことについて、ユーザーから突っ込みがあったらしいので設定しました。
エージェントのインストールは不要でとても簡単です。

はじめに

これはAWS EC2インスタンスの話です。

メトリクス(監視対象から取得するデータセットのことで、CPU使用率、Disk読み書き回数、通信量等があります)が、閾値を超えた場合や下回った場合などにアラームを発行するのは、CloudWatchアラームというサービスが担っています。
CloudWatchアラーム自体にはメールを送信する機能はありませんが、CloudWatchアラームは Amazon SNS と連携できるので、SNS上に定義したトピックにメッセージを送信し、トピックに紐づけられた受信者にメール等で通知するやり方を解説します。

トピックの作成

まず、Amazon SNS(Simple Notification Service)からトピックを作成します。
Amazon SNS はサーバレスでメッセージ(スマートフォンのプッシュ通知、Eメール、SMSなど)の配信を可能にするマネージドサービスです。トピックという論理的なアクセスポイントにメッセージを送信すると、トピックに紐づけられた受信者に対してメッセージが非同期で一斉送信される仕組みです。
この仕組みを自前で構築しようとすると、開発コストだけでなく、サービスのスケールに応じて管理コストもかかってきますが、Amazon SNS なら初期費用をかけずに利用できます。

今回はEメールで通知するのでタイプはスタンダード、任意の名前で設定します。
image.png

サブスクリプションの作成

続いて、トピックとプロトコルを選択し、エンドポイントを設定します。
選択するプロトコルによって、Eメールならメールアドレス、SMSなら電話番号、というようにエンドポイントに設定する情報は変わります。
image.png
image.png
サブスクリプションを作成すると、ただちにHTMLメールが送信されるので、本文にある Confirm subscription をクリックします。

From: AWS Notifications <no-reply@sns.amazonaws.com>
Date: 2022年8月8日(月) 7:43
Subject: AWS Notification - Subscription Confirmation
To: <foo@example.co.jp>

You have chosen to subscribe to the topic:
arn:aws:sns:ap-northeast-1:XXXXXXXXXXXX:MyTopic
To confirm this subscription, click or visit the link below (If this was in error no action is necessary):
Confirm subscription

ステータスが「確認済み」になればOKです。
image.png

CloudWatchアラームの作成

CPU使用率をモニタリングしたいEC2インスタンスを選択し、CloudWatchアラームの管理 をクリックします。
image.png
作成したトピックを選択します。
image.png
しきい値を設定します。
image.png
最後に「作成」をクリックしたら完了です。

テスト

yes > /dev/null &stress コマンドで負荷を与えてみましょう。
アラームのメールを受信したら成功です。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0