本文へスキップ
BecomeCoder

AWSコース · 第8章 モニタリング・管理・ガバナンス · レッスン43

CloudWatch ― システムを監視する

導入

サーバーのCPUが張り付いていないか、エラーが増えていないか——動いているシステムの「健康状態」を目で見えるようにするのが Amazon CloudWatch です。

説明

Amazon CloudWatchは、AWSのリソースやアプリケーションを監視(モニタリング)するサービスです。主に次の4つの機能を持ちます。

  • メトリクス … CPU使用率・ネットワーク転送量・リクエスト数などの数値データを時系列で収集する。
  • ログ(CloudWatch Logs) … アプリケーションやサーバーが出力するログを集約して保存・検索する。
  • アラーム … メトリクスがしきい値を超えたら発火する。例えば「CPUが80%を超えたら通知する」「台数を増やす」。
  • ダッシュボード … 複数のメトリクスをグラフにまとめて一目で見られるようにする。

CloudWatchの真価は、アラームをアクションにつなげられる点にあります。しきい値を超えたら、SNSでメール通知したり、Auto Scaling を起動してサーバーを自動的に増やしたりできます。「監視して終わり」ではなく「監視して自動で手を打つ」までがセットです。

flowchart LR
    R["EC2 / RDS など"] -->|メトリクス送信| CW["CloudWatch"]
    CW --> AL["アラーム しきい値超過"]
    AL --> N["SNSで通知"]
    AL --> AS["Auto Scaling 台数を増やす"]

具体例

動画変換サービスの運用担当が、CloudWatchで「監視して自動で手を打つ」仕組みを組んだ例です。

  1. 変換処理用のEC2群のCPU使用率を、CloudWatchのメトリクスで常時収集
  2. 「平均CPUが70%を5分間超えたら」というアラームを設定
  3. アラームが発火したら2つのアクションを同時に実行
    • SNSで担当者にメール通知(人が状況を把握できる)
    • Auto Scalingを起動してEC2を増設(人の操作を待たずに自動で台数を増やす)
  4. さらにアプリのエラーログをCloudWatch Logsに集約し、「ERRORが1分に10件超えたら通知」も設定

深夜に投稿が殺到しても、担当者が寝ている間にCloudWatchが自動でサーバーを増やし、朝には落ち着いて台数も戻っている——「見える化」だけでなく「自動対応」までつながるのがCloudWatchの真価です。

読んでみよう

CloudWatch は「今どうなっているか(性能・状態)」を見るサービス、と覚えましょう。次のレッスンの CloudTrail(誰が操作したか)とは役割がはっきり違います。

次のレッスンへ →