AlibabaCloudは、中国で最も信頼されている中国最大のクラウドサービスプロバイダーであり、世界第3位のWebホスティングプロバイダーです。
2009年からパブリッククラウドサービスを提供しはじめまして、2016/12より、日本向けにもサービスを開始し、AWSやGCP、Azureと並ぶ急速な勢いで伸びています。
今回は、そんなAlibabaCloudのCloudMonitorサービスを操作してみました。
※AlibabaCloudは、AWSと類似するサービスが多いですが、 CloudMonitorは、AWSのCloudWatchと類似するサービスです。
CloudMonitor
CloudMonitorは、カスタムメトリックでサーバーとデータベースを含むAlibaba Cloudリソースのモニタリングとパフォーマンスを自動化し、ログファイルを追跡および収集したり、Alibaba Cloud上で実行されているリソースの使用率を監視することができます。
CloudMonitor はすべてのメトリックにアラートサービスを提供し、サーバー、アプリケーショングループ、およびすべてのリソースごとにアラートルールを設定できます。さまざまなビジネスの視点からアラートサービスを活用できます。
ECS基本メトリックについて、次のメトリックが提供されます。今回は、ECS基本メトリック中のCPU利用率のメトリック対して、アラートルールを設定して、検証してみたいです。
※ECS基本メトリックは、エージェントをインストールが不要で、メトリックの収集間隔は 1 分です。
メトリック項目 | 意味 | 単位 |
---|---|---|
ECS.CPUUtilization | CPU 使用率 | % |
ECS.InternetInRate | インターネットインバウンドトラフィックの平均レート | ビット/秒 |
ECS.IntranetInRate | イントラネットインバウンドトラフィックの平均レート | ビット/秒 |
ECS.InternetOutRate | 平均インターネット送信トラフィックの割合 | ビット/秒 |
ECS.IntranetOutRate | イントラネットアウトバウンドトラフィックの平均レート | ビット/秒 |
ECS.SystemDiskReadbps | 1 秒あたりのシステムディスクから読み取られたバイト数 | バイト/秒 |
ECS.SystemDiskWritebps | システムディスクに書き込まれた 1 秒あたりのバイト数 | バイト/秒 |
ECS.SystemDiskReadOps | システムディスクからデータを 1 秒間に読み取る回数 | 回数/秒 |
ECS.SystemDiskWriteOps | データがシステムディスクに 1 秒あたりに書き込まれる回数 | 回数/秒 |
ECS.InternetIn | インターネットインバウンドトラフィック | バイト |
ECS.InternetOut | インターネットアウトバウンドトラフィック | バイト |
ECS.IntranetIn | イントラネットインバウンドトラフィック | バイト |
ECS.IntranetOut | イントラネット発信トラフィック | バイト |
手順
さて、作業をしていきましょう。
今回の目標は、ECSインスタンスのCPU使用率を監視してメールを通知するアラームの作成方法を説明します。
- CloudMonitorのアラームの作成
- CloudMonitorのアラームの検証
前提
ECSインスタンスが稼働中であること(事前に監視対象のインスタンスIDをメモしておく)
1. CloudMonitorのアラームの作成
####■アラーム送信先の作成
・[CloudMonitor コンソール]にログオンします。
・[アラーム送信先] ページにアクセスし、ページの右上隅にある [送信先を作成] ボタンをクリックします。
・名前、メールを入力します。
・確認目的の電子メールが送信されます。送信された認証番号を入力します。
・[保存]をクリックします。
####■アラーム送信先グループの作成
・[CloudMonitor コンソール]にログオンします。
・[アラーム送信先] ページにアクセスします。
・ページ上部にある [アラーム送信先グループ] メニューをクリックして、アラーム送信先グループリストに切り替えます。
・右上隅にある [新しい送信先グループ] をクリックして、[新しい送信先グループ] ページにアクセスします。
・グループ名を入力し、適切な送信先をグループに追加します。
・[確定]をクリックします。
####■CloudMonitorアラームの作成
・[CloudMonitor コンソール] にログインします。
・[クラウドモニター] の [ECSモニタリング]のページに移動します。
・[アラームルール]タブをクリックします。
・右上隅の[アラームルールの作成]をクリックします。
・[アラームルールの作成]ページでアラームパラメータを設定します。パラメータの詳細については、下記を参照してください。
リソース:インスタンスリスト
インスタンスリスト:監視対象のインスタンスを選択する
ルールの説明:「 1 分間の平均 CPU 使用率 > = 50 %」と設定する
アラームタイプ:作成したアラーム送信先グループを選択する
メール:通知メールの雛形を設定する
・[ 確認]をクリックして、アラームルールの設定を保存します。
2. CloudMonitorアラームの検証
####■CPU使用率をあげる
・監視対象にログインします。
次のように入力することで ssh 接続をすることが出来る。※Macの標準sshクライアントソフトの場合の入力例です。
sudo ssh -l root XX.XX.XX.XX -i ~/Downloads/amen-home.pem
ここで、-l オプションに続くroot
の部分は、sshで接続する際に使用するログインアカウント名。
また、そのあとのXX.XX.XX.XX
の部分には、接続先のコンピュータ名を IP アドレスやドメイン名で指定する。
特に指定しなければ通常は 22/tcp ポートを使用するが、変更する必要がある場合は、-p オプションを追加。
その場合、ssh -l root -p 1000 XX.XX.XX.XX
というような感じになる。
この例の場合は 1000 番ポートの ssh サーバに接続するということ。
-iオプションの後ろには、実際の秘密鍵のパスを設定します。
yesコマンドで監視対象インスタンスのCPU使用率をあげる
yes >> /dev/null &
topコマンドで、CPU資料率を確認してみます。CPU使用率が99%になってますね。このまま1分間ぐらい待ちます。
####■通知メールの確認
1分間後に、ラーム送信先に設定したメールに、CPUアラームのメールが届いたことを確認します。
ECSモニタリングからもアラーム表示になっていることが確認できます。
おわりに
今回は、ECSインスタンスのCPU使用率を監視してメールを通知するアラームの作成をしてみました。
ドキュメントを参考に試してみてはどうでしょうか。