[新機能] マルチアカウント・リージョン対応!AWS Systems Manager Explorer がやってきた!!

2019.11.21

こんにちは 園部です。

re:Invent を目前にして、漏れ出してくる新しいリリースに毎日驚いています!

今回は、AWS Systems Manager に新しく仲間入りした Explorer を見ていきたいと思います。

Today, AWS announces Systems Manager Explorer, an operations dashboard providing you with an at-a-glance graphical view of relevant operations data, such as EC2 instance summaries and their patch compliance. With Explorer, you can view your operations data across your AWS accounts and Regions to see where attention, investigation, and remediation may be required.

(引用: Introducing AWS Systems Manager Explorer

上記によると、EC2インスタンスの概要やパッチコンプライアンスなどの運用データを表示する運用ダッシュボードです。かつ、AWSアカウントとリージョン全体の運用データを確認することができるサービスのようです。

百聞は一見にしかず!やって、見ていきましょう!

やってみる

シナリオ

今回は、シングルアカウントでマルチリージョンに展開しているサービスを想定して、以下のリージョンについて Explorer のダッシュボードに表示することをゴールとします。

  • 東京リージョン
  • バージニア北部リージョン

設定(下準備)

1. Explorer と OpsCenter 設定

AWS Systems Manager >>> Explorer を選択
まだ何もしていない状況であれば、説明のページが表示されます。 Configure Settings を選択

  • Explorer で利用する IAM Role

作成されるロールや権限は こちらのドキュメント で確認できます。

  • Explorer では OpsCenter へ登録されている OpsItem を表示するため、OpsItem の収集を開始する CloudWatch Event を作成するかを選択 (CloudWatch Event 側で個別に有効/無効/削除が可能)

※ CloudWatch Event に13個ルールが登録されます。

  • Explorer で扱う OpsData の対象が表示 (あとで対象から外すことも可能)
    • Systems Managerパッチコンプライアンス
    • Amazon EC2
    • OpsCenter OpsItems

  • Explorer 内で利用できる フィルタリングのキーを選択(あとで追加・削除可能)
  • Enable Explorer を選択

2. AWS Config 設定

AWS Config >>> 設定 >>> 「記録はオン」 になっていることを確認

シングルリージョンでの利用

設定が完了すると、以下のような画面になります。 ウィジェット(各項目)は自由に移動可能で、やりすぎてしまった場合は レイアウトをリセット でデフォルトの状態に戻ります。それでは一つずつ見ていきます。

  • OpsData フィルタ
    • アカウント・リージョン単位でフィルタリングすることが可能です。(画面上は、シングルアカウント・リージョンの状態のため、グレーアウト)
    • OpsData ( OpsItem Source, Related Resource Tag Key, Related Resource Tag Value, OpsItem Status, OpsItem Severity, Source Account Id ) でフィルタリングすることが可能です。

  • インスタンス数
    • 対象となる EC2 数が表示されます。タグによるグルーピングが可能なため、サービスや役割を事前にタグ付けしておくことでグループ分けすることも可能です。
  • マネージドインスタンス
    • Systems Manager の対象となるインスタンスと非インスタンスを表示
  • AMI 別インスタンス
    • 対象インスタンスを AMI 別に表示

  • OpsItems に関する項目
    • ステータス別, 重要度別, 概要, 経過時間 などの切り口で表示

  • パッチマネージャーの結果を表示

それぞれのリンク先では、OpsData にフィルタがかかった状態で対象が表示されるため、確認が簡単です。 問題を抱える AMI を利用している EC2 の把握や、パッチベースラインを準拠していない EC2 の確認が Explorer のダッシュボードを用いることで関係者の間で、状況を共有することが簡易になりそうです。ここを見ようぜ!という共有意識。

続いて同期設定を行い、シングルアカウントでのマルチリージョン管理を可能にしていきます。

マルチリージョンでの利用

データ同期設定

AWS Systems Manager >>> Explorer >>> Create resource data sync を選択

今回は、シングルアカウントのため、「 リソースデータの同期名 」と「 含めるリージョン (必須) 」を選択

現在および将来のすべてのリージョンを含める という選択肢が素敵です!!

完了です。

Explorer 画面

先ほどは、グレーアウトしていた部分が選択できるようになっています。 先ほど作成した 同期名を選択

東京リージョン: 4台、 バージニア北部リージョン: 1台 EC2 を作成しているため、計5台と表示されます。

リージョンでグルーピングすることも可能です。このアカウントには、各リージョンでこれだけの EC2 があるのか!とひと目で確認することが可能です!

エクスポート

フィルタした結果を csv で出力することが可能です。最後にエクスポート機能をやってみます。

AWS Systems Manager >>> Explorer >>> 設定 を選択

データエクスポートを設定 >>> 編集 を選択

S3 バケットは新しく作成し、SNS トピックは メールへの送信を選択

Explorer の画面から エクスポート を選択

出力先を確認 >>> エクスポート を選択

裏側では、 Automation が実行されているようです。

S3 にエクスポートされた csv ファイルが保存されています。

内容としては、こんなイメージです。

メール通知もされています。

ハマったこと

「 EC2 に関連するデータ( Instance Count, Managed Instances, Instance By AMI )がなかなか表示されませんでした。」

こちらの OpsData は AWS Config から情報を取得しています。冒頭の設定を行っていましたが...なかなか表示されません。理由としては下記に書かれているように、データの連携までの時間が最大6時間かかるというものでした。必ずしも何時間もかかるわけではありませんでしたが、反映されない時は設定を確認したら、気長に待ちましょう。

After you enable configuration recorder, Systems Manager can take up to six hours to display data in Explorer widgets that display information about your Amazon EC2 instances.

(引用: 公式ドキュメント

さいごに

今回の内容には含まれていませんが、冒頭のリンクでも紹介されているように、マルチアカウントでも利用可能です。先日は CloudWatch でも同様にマルチアカウント・マルチリージョンに対応する機能がリリースされています。 AWS Summit などでも取り上げられていた マルチアカウント戦略をサポートする機能が徐々に整備されてきているのを感じます。

(ドントコイ!マルチアカウント!!)