ようへいの日々精進XP

よかろうもん

インスタンスリソースをCloudWatch のカスタムメトリクスに投げるスクリプトを作ってみた

追記

リポジトリの名前を以下の通りに変えたのと初回のみ Alarm 設定が出来るようにしてみた。

上記をインスタンス上におく ChefCookbook も後からアップする予定。


何番煎じ?

か解らないくらいだが必要に迫られてインスタンスリソースをCloudWatch のカスタムメトリクスを投げるスクリプト書いた。

ググるJava 版の CLI ツールを使った例は良くみるのであえて Python 版のコマンドラインツールを利用することにした。


おソース

github

リソースと言っても

以下が取ってカスタムメトリクスに送る。

  • CPU 使用率
  • Load Average
  • メモリ使用量(メガ)
  • Root パーティションのディスク使用量(メガ)

こんな感じ

f:id:inokara:20140520072949p:plain


なんで CloudWatch なの?

なんで?

  • Sensu を導入しきれなかった
  • かと言って Zabbix とかを導入するまでも無い
  • もちろん課金はあるけどお手軽な CloudWatch の検証も兼ねて

CloudWatch について自分なりに調べた


スクリプト作成で目指したこと

  • 出来るだけ拡張しやすく
  • 必要に応じて取得したい内容をシェル関数で定義すれば拡張出来るかも

todo

  • メモリの空き容量についても監視する
  • ディスク容量監視を Root パーティション以外も監視出来るようにする
  • スワップ容量監視を追加したい
  • リソース以外にも稼働しているサービスの監視も出来るようにする