[アップデート]Systems Manager Explorerで、AWS Configコンプライアンスのマルチアカウント/リージョンの概要が見れるようになりました
はじめに
こんにちは。大阪オフィスの林です。
2020年11月11日(水)のアナウンスにて「AWS Systems Manager Explorerは、AWS Configコンプライアンスのマルチアカウント、マルチリージョンの概要を提供するようになりました。」と発表がありました。公式ページはこちら
タイトルからだとイメージが付きにくいかもですが、分かりやすく言うと『AWS Systems Manager ExplorerのダッシュボードでAWS Configのコンプライアンス状況(マルチアカウント/リージョン)のレポートも見れるようになった!』というアップデートです。
AWS Systems Manager Explorerとは?
AWS Systems Manager Explorerは、AWS Systems Managerの画面から操作することができる機能で、AWSリソースに関する各種レポートをダッシュボードに表示させることができる機能です。AWS Systems Manager Explorerは、AWSアカウントおよびリージョン全体の運用データ(OpsData)の集約ビューを表示することも可能です。 引用
AWS Systems Manager ExplorerとAWS Configの統合
今回のアップデートによって、AWS Systems Manager ExplorerのダッシュボードでAWS Configのコンプライアンス状況のレポートも表示できるようになりました。AWS Systems Manager Explorerのダッシュボードから見れる内容としては「AWS Configで定義したルールの準拠/非準拠の数」「リソースのルール準拠/非準拠の数」「詳細レポート」を確認することができます。
レポートの数字をクリックすると「どのルールで準拠/非準拠なのか」「どのリソースが準拠/非準拠なのか」の詳細のレポート画面に遷移します。
ルール名のリンクをクリックすると、AWS Configのダッシュボードに遷移するようになっており、AWS Config側で従来通りの詳細を確認することができます。リソースのレポートでも同じです。詳細レポートからリソースをクリックすると、AWS Configのダッシュボードに遷移するようになっています。(下図は「CLOUDTRAIL_S3_DATAEVENTS_ENABLED」というルール名をクリックした際の遷移後の画面です。)
アグリゲータとの違い
ここまでの説明で「あれ?AWS Configで提供されている「アグリゲータ」と同じ機能?」と感じる方もいらっしゃるかと思います。思いつく範囲で違いをまとめてみました。
マルチアカウント集約表示 | 対応 | 対応 |
---|---|---|
マルチリージョン集約表示 | 対応 | 対応 |
レポートのドリルダウン | レポートに含まれるアカウントすべてに対して可能 | レポートを作成したアカウントのみ可能 |
設定の手間 | 少ない | 多い(各アカウント/リージョンで設定が必要) |
結果反映までのタイムラグ | 少ない | アグリゲータより大きい |
レポートのエクスポート | 不可 | 可能 |
料金 | (アグリゲータ自体の使用は)無料 | (Explorer自体の使用は)無料 |
表の内容を下記で補足します。
マルチアカウント/マルチリージョン集約表示およびレポートのドリルダウン
マルチアカウント/マルチリージョン集約表示については「アグリゲータ」を使う場合でも「AWS Systems Manager Explorer」でもアカウントやリージョンを集約してレポートを表示することができます。
ただし「アグリゲータ」は集約されたレポートから別アカウントのルールやリソースをドリルダウンしていけるのに対し「AWS Systems Manager Explorer」は他のアカウントで設定されているルールやリソースの詳細をドリルダウンしていくことができません。
下図をよくよく見てみると、リンクになっているルールと単純なテキストになっているルールがあります。これは自分自身のアカウント(リンク)か別アカウント(テキスト)かの違いになります。
下図は「アグリゲータ」の画面です。「アグリゲータ」の場合は「アグリゲータ」を作成しているアカウントとは異なるアカウントであってもルール名がリンクになっておりドリルダウンして詳細を表示することが可能であることが分かります。
設定の手間
「アグリゲータ」の設定に比べ「AWS Systems Manager Explorer」はアカウント毎やリージョン毎でそれぞれ設定する項目があるため、やや手間が掛かった印象がありました。実際の設定については本ブログの後半の手順を参照頂ければと思います。
結果反映までのタイムラグ
「アグリゲータ」はAWS Configのルールなどの設定変更したあと、比較的早い段階でレポートに結果が反映される印象ですが「AWS Systems Manager Explorer」は「アグリゲータ」に比べると反映までのタイムラグが大きいように感じました。
レポートのエクスポート
「アグリゲータ」で作成されたレポートは、AWSマネージメントコンソールから結果をエクスポートできないのに対し「AWS Systems Manager Explorer」を使うと、CSVをS3にエクスポートしたりSNSで通知することもできるようです。AWSマネージメントコンソールからはスケジューリング設定などはできなさそうだったので定期的にレポートをエクスポートする場合などは別途作りこみが必要になるかと思います。
料金
「アグリゲータ」および「AWS Systems Manager Explorer」自体に利用料金は掛かりません。ただし「AWS Systems Manager Explorer」に関しては、下記の注意事項が御座いますので利用料については留意しておく必要があります。
Explorer では、料金設定された OpsCenter API (GetOpsSummary) を使用してダッシュボードが表示されます。これらの API リクエストに対する料金が適用されます。 [Export to CSV (CSV にエクスポート)] オプションでは、aws:executeScript アクションステップでオートメーションドキュメントを実行します。これらのステップは、オートメーションの料金に基づいて課金される場合があります。
AWS Systems Managerの料金はこちらから。
やってみた
それでは実際に「AWS Systems Manager Explorer」でAWS Configのレポートを表示する設定をやっていきたいと思います。
今回、Organizationsの配下のアカウントすべてのAWSアカウントを集約の対象とするためマスターアカウントで操作します。AWS Systems Managerのダッシュボードから左メニュー「エクスプローラー」を選択します。初めて操作をする場合は「ご利用開始」を選択します。
Explorerのセットアップ画面に遷移します。今回はデフォルトの設定のまま「エクスプローラーの有効化」を選択します。
Explorerの画面に戻ってくるので、右上「リソースデータの同期を作成」を選択します。
任意のリソースデータの同期名を入力し、今回はOrganizationsのすべてアカウントを対象とするため「AWS Organizationsの設定からすべてのアカウントを含める」を選択します。
専用のIAMロールが必要なようなので「ロールの作成」を選択します。
OrganizationsでExplorerのアクセスが有効になっていないので「有効化」を選択します。
リージョンはすべて選択して「リソースデータの同期を作成」を選択します。
しばらくするとコンプライアンス状況のレポートが上がってきました。
その後しばらくたっても、自身のアカウント以外のレポートが上がってきません。
こちらを確認すると、集約するアカウントやリージョン側でも作業が必要なようです。
Explorerがデータにアクセスする各アカウントとリージョンで統合セットアップを完了する必要があります。そうしないと、エクスプローラーは、統合セットアップを完了しなかったアカウントとリージョンのOpsDataとOpsItemsを表示しません。
ということで「統合セットアップ」となるものを実施していきます。
とはいいつつ、イベントのソースを有効にするだけでOKでした。Organizationsのメンバーアカウント側で、同様の手順でExplorerを有効化します。
AWS Systems Managerのダッシュボードから左メニュー「エクスプローラー」を選択します。初めて操作をする場合は「ご利用開始」を選択します。
Explorerのセットアップ画面に遷移します。今回はデフォルトの設定のまま「エクスプローラーの有効化」を選択します。
「Config Compliance」が「Disabled」になっています。
「Config Compliance」を「Enabled」に変更します。
リージョンにまたがっている場合は、リージョンを切り替えて同様の手順でExplorerを有効化します。 AWS Systems Managerのダッシュボードから左メニュー「エクスプローラー」を選択します。初めて操作をする場合は「ご利用開始」を選択します。
「Config Compliance」が「Disabled」になっています。
「Config Compliance」を「Enabled」に変更します。
マスターアカウントに戻り、しばらくすると数字が変わってきました。
レポートの数字をクリックするとアカウントやリージョンをまたがってレポートされていることが分かります。
まとめ
一つの画面で統合的に管理できる点は非常に便利なアップデートだと感じました。似ている機能としてあげた「アグリゲータ」と共通する部分、異なる部分をしっかり押さえておきたいと思います。
以上、大阪オフィスの林がお送りしました!