最近のCloudWatchはすごい。
ほんの数年前はリソース系(UI)見にくいとかあったのですが、
最近はかなり使いやすくなっています。
これならZabbixとかnagios建てる必要もないかも。
CloudWatchはデフォルトでメモリー使用率、ディスク、ロードアベレージを可視化することができません。
なのでモニタリングスクリプトをぶちこまないとダメなので、今回はその設定をブログします。


■環境

・EC2(Amazon Linux)


■必要パッケージのインストールと設定

・モニタリングスクリプトのダウンロードとインストール

・インスタンスにIAMロールを関連付ける or  AWS認証情報を指定

IAMロールの方が簡単。

(IAMロールの場合)

(AWS認証情報を指定する場合)


■テストラン

・実際にCloudWatchのダッシュボードでも確認

Linuxシステムが増えているかと思います。

・crontabに登録


■aws-mon.sh

上記のスクリプトだとメモリー使用率とディスクだけなので、
それを含めて完全系のスクリプトがあります。
ロードアベレージもなんでもある。
(こっち使えばよろしい)

https://github.com/moomindani/aws-mon-linux

・ダッシュボードで確認

System/Detail/Linuxが増えて、
ロードアベレージ系が表示されています。

・crontabに追加


■設定完了


■まとめ

ここらへんをデフォルトで設定できるようにしてほしいよAmazonさん。。
監視工数が・・・と思ったけどここらへんはansible化かな。

作った。https://github.com/RVIRUS0817/ansible_aws/blob/master/roles/cloudwatch/tasks/main.yml

参考
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/mon-scripts.html

The following two tabs change content below.

あだちん

1989年生まれ。 SRE/CRE。ラッパー担当。2013年新卒に自宅サーバを構築し、この技術ブログを立ち上げたが、 2017年に電源が壊れConoHaにリプレイスした。 好きな構成管理ツールはAnsible,Terraform。インフラならAWS/Docker。言語歴:Python,Golang。WEBサーバならH2O。そして「脆弱性スキャナVuls」のOSS活動もしており、広報/エバンジェリスト/VulsRepo init file,chatwork通知のコントリビュータでもある。現在では分析基盤を担当しておりDigdag,embulk,BigQueryを使いこなそうと奮闘中。

コメントを残す