株式会社エクストーン
下っ端
豊田陽一
  AWSでサービス作って監視してみた
◦  Cloudwatch
  Alarmの設定
  カスタムメトリクスの作成
  AWSの各サービスの監視が可能
◦  様々なメトリクスによる監視
  閾値を決めて通知を行う
  2週間まで数値をグラフで確認
  こんなものが用意されている
◦  EC2
  CPU使用率
  ディスクの書き込み/読み込み回数、バイト数
  ネットワーク入出力
◦  RDS
  CPU使用率
  DB接続数
  ディスク空き容量
  読み込み/書き込み回数、スループット、レイテン
シ
◦  等々
  3ステップ
◦  メトリクスを選ぶ
◦  閾値を決める
◦  通知先を決める
  EC2関連の場合、通知以外のアクショ
ンも定義可能
◦  インスタンスを停止する
◦  インスタンスを破棄する
  以下のタイミングでの通知が設定可能
◦  設定した閾値を超えた場合
◦  上記の状態から、閾値を下回った場合
◦  データが取得できなくなった場合
  例えば…
◦  ロードアベレージが知りたい
◦  特定のデバイスの使用率が知りたい
◦  Etc…
  コマンドラインツールから好きな値を
Cloudwatchに送れます
◦  5分平均のロードアベレージ
  $ cat /dev/loadavg ¦ cut ‒d ‒f 2
◦  ディスク使用量
  $ df <デバイス> ¦ tail -1 ¦ tr -s ' ' ¦ cut -d ' ' -
f 5 ¦ cut -d '%' -f 1`
◦  とかで数値はとれる
  Cloudwatchコマンドラインツール
◦  http://aws.amazon.com/developertools/2534
◦  以下の設定を行うこと
  Javaのインストール
  AWSのアクセスキーとシークレットキー
  IAMを利用して、Cloudwatch専用のアクセスキーを
作ると安全
  http://blog.suz-lab.com/2011/05/iamcloudwatch.html
  mon-put-dataコマンドを利用
◦  instanceid=`wget -q -O - http://169.254.169.254/latest/
meta-data/instance-id`
◦  loadave5=`cat /proc/loadavg ¦ cut -d ' ' -f 2`
◦  mon-put-data --metric-name "LoadAverage" --namespace
"System/Linux" --dimensions "InstanceId=$instanceid" --
value "$loadave5" --unit "Count" --region ap-northeast-1
  スクリプト化して、crontabに仕込んでおくと良し
  tr
◦  文字を置換・削除したりするコマンド
  tr ‒s
  2文字以上の空白を1文字に置換する
  tr ‒d
  空白を削除
  cut
◦  特定の文字を切り出すコマンド
  cut ‒d ‒f 2
  空白で区切った2番目の要素を切り出す
  cut ‒c 5
  5文字目を切り出す
  vmstat
◦  仮想メモリの状態を取得
  free
◦  使用メモリ量を取得
  Uptime
◦  システムの起動時間を取得
  1分、5分、15分平均のロードアベレージも取
得可能
  df
◦  ファイルシステムのディスク容量を取得
  System/Linuxグループにカスタムメ
トリックスが出来る
LoadAverageメトリクスが
追加されている
  カスタムメトリクスで監視しているも
の
◦  ロードアベレージ
◦  メモリ使用率
◦  ディスク使用率
◦  外部有料サービスの使用状況
  プリペイドのSMSサービスの残りポイント数
宣伝
Pri-maをよろしくお願いします

Awsをちゃんと使ってみた 監視編