はじめに
「Amazon CloudWatch」についてまとめてみました。
自分用なのでだいぶ雑ですが、参考になればうれしいです。
目次
Amazon CloudWatch
Amazon CloudWatch とは、AWSのリソースの使用状況を監視できるサービスです。CloudWatchはメトリクス、ログ、イベントの3つのデータを扱うことができます。
それぞれについてまとめます。
メトリクス
メトリクスとは、リソースの使用状況を収集し、数値化された時系列のデータセットのことです。コンソール、CLI、APIから参照することが可能です。メトリクスには標準メトリクスとカスタムメトリクスがあります。
標準メトリクス
CPU使用率やディスクI/Oなどの、AWS側で提供できる範囲のあらかじめ用意されているメトリクスです。何も設定をしなくてもEC2インスタンスを起動しただけで収集されます。
カスタムメトリクス
標準メトリクスでは収集することのできないメトリクスを収集できます。ユーザが独自に設定することができ、CloudWatchエージェントを導入することで、EC2のOS内部のメトリクスを取得することも可能です。
CloudWatch アラーム
また、CloudWatch アラームを設定することで、取得したメトリクスを分析して、アラーム通知をすることが可能です。
アラームには3つの状態があります。
- OK ・・・ 閾値の範囲内
- ALARM ・・・ 閾値を超えている
- INSUFFICIENT_DATA ・・・アラーム開始直後であるが、メトリクスが利用できないかデータが不足しているため、状態を判定できない
ログ
CloudWatch Logsを使用することでEC2、CloudTrail、Route53などからログファイルをモニタリング、保存、アクセスることが可能です。メトリクスフィルターを使用することで、ログのパターン街を行い、メトリクスの値を増加することができます。EC2のログを外部で保持することによって、よりステートレスにすることが可能です。
イベント
CloudWatch Events をつかうことで、AWSリソースの変更を伴うシステムイベントをトリガーとして、対応したAWSサービスによるアクションを自動化できます。トリガーには時間ベース、AWSリソースのシステムイベントの2種類を設定することが可能です。Amazon EventBridge はCloudWatch Eventsをベースに拡張されたサービスらしいです。
おわりに
Amazon CloudWatchについてまとめてみました。
まだ十分に理解できていないですが、少し整理された気がします。
SysOpsの勉強頑張ります。