CloudWatchアラームとOpsCenterが統合されたのでやってみる
Systems ManagerのOpsCenterは、オペレーションエンジニアやITプロフェッショナルがAWSリソースに関連するOpsItems(運用作業項目)というものを作成し、一元管理する場所です。インシデント解決までの平均時間を短縮する目的で提供されていました。
最近、CloudWatchアラームとの統合が可能になったので実際に試してみようと思います。
CloudWatchアラームに設定したものがアラーム状態になると、自動的にOpsItemを作成してくれるという内容になっています。
やってみる
EC2インスタンスで試します。
アラーム作成
CloudWatch アラームのコンソールから新規アラームを作成します。
メトリクスの選択をクリックし、対象のインスタンスとメトリクスを選択します。
今回はCPUUtilization
にしました。
しきい値の種類を静的、条件は5分間の平均CPU使用率が30%以上とします。
Systems Manager OpsCenter アクションの作成
アラームの条件を設定した後、OpsCenterアクションを作成します。
デフォルトのアクションは削除しておきます。
Systems Manager OpsCenter アクションのセクションに移動し、追加していきます。
重要度とカテゴリーを選択します。
アラームの名前と説明を入力して次へ
ボタンを押し、設定内容を確認したら作成ボタンを押して完了です。
CPU攻撃する
設定したEC2インスタンスのCPU使用率を上昇させてアラームを起こします。
方法はなんでもいいですが、今回はGremlinを使ってCPU攻撃を行いました。
5分間CPUを50%専有する攻撃です。
しばらくすると閾値の30%を超えてアラーム状態になります。
OpsCenterを確認
OpsCenterのコンソールに移動し、OpsItemsを確認します。
CloudWatchアラームがソースとなってOpsItemが作成されていることがわかります。
OpsItemをクリックすると
OpsItemの詳細情報、関連リソース、推奨Runbookなどが表示されています。
Runbookは問題を解決するための方法が色々とリスト化されています。OpsCenter内から実行することが可能です(例えばEC2を再起動するとか).
関連リソースのArnをクリックすると、今回のCPUUtilizationのグラフを含む関連アラーム情報,EC2インスタンスの情報がOpsCenter内で表示されます。
CloudWatchやEC2のコンソールに移動しなくていいので良いですね。
何かのリソースでアラームがでたりおさまったりを繰り返しても、OpsItemが複数作られないように重複排除も行ってくれます。
以前作成されたOpsItemの状態が更新されますが、関連リソースのhistoryを確認すると状態の変化がわかります。
このOpsCenterとの統合機能を使うと、何かしらのリソースで問題が発生した後の調査データが一つの箇所で確認できるので、 原因究明や解決までのスピードが上がると思います。是非使っていきたいですね。