◆はじめに
はじめまして
エンジニアとしてちょこちょこインプットはしていましたが、
アウトプットの場が欲しくなりましたので、Qiitaでの投稿を初めてみます
得意領域はAWS,ネットワークインフラです
ということで早速本題です
◆背景
Organizationを利用している環境でメンバーアカウントが増加した結果、
各アカウント内のリソースを把握しきれないという問題が発生
↓
解決のためにResourceExplorerでの運用提案を検討
◆ゴール
アカウント毎にリソースの一覧を可視化
+
定期的な棚卸し作業として運用化
◆参考
◆実際にやってみた
テスト環境として、
・管理アカウント
・委任用アカウント
・メンバーアカウント(参照用なので無くても問題はありません)
を準備
1.管理アカウントでの操作
AWSコンソールからReource Explorer > 設定 にアクセスし、「組織でResource Explorerを設定」を選択
信頼されたアクセスを有効化のチェックを2つともチェック
(サービスリンクロールが作成済の場合はグレーアウトしている模様)
有効化の表示が出るので、「QuickSetupで設定を作成」を選択
アグリゲーターインデックスの作成場所を指定し、ターゲットを組織全体にして作成
(試していませんが、チェックをつけておくと既に子アカウントで別リージョンを指定して
Resource Explorerを有効化されている場合、ここで指定したリージョンに置き換わる模様)
QuickSetupの完了を待ちます
※アカウント数によるのかもしれませんが、30分ほどでした
※途中、SSMの関連付けに保留中がある状態でも、デプロイ自体が完了したタイミングで
ステータスバーでは正常終了と出ます
2.委任用アカウントでの操作
完了したら管理権限を委任したアカウントへ移動し、Reource Explorer > ビューを開いて
ビューの作成を選択
スコープは組織全体としてRootOUを指定、
リージョンはデフォルトで入っていると思いますがアグリゲーターインデックスがあるリージョンを指定、
他はデフォルトのままで作成
リソースの検索へ移動し、ビューを変更すると、
管理アカウントを除いた組織アカウントのリソースが表示されていました
◆気づき/留意点
・管理アカウントでQuickSetupを実行したタイミングで、
自動的に組織で「SystemManager」「CloudFormationStackSet」が有効化される
・一時的な棚卸し作業には十分なはずですが、運用に落とし込むには
もう一仕事必要ですね。(後日予定)
・参考元でも言及されていますが、管理アカウントのResorceExplorerは自動的には有効化されません
・正確に測っていませんが、子アカウント側でリソースの検出が完了するまでは結構な時間がかかります
(筆者は時間がかかりそうだったので一晩おいて確認しました)
・QuickSetupの操作を委任アカウントで実行可能かは試してみましたが、ダメでした
そこまでの権限は委任されていないようです
※ロールを作成することで可能かは、筆者の想定環境では試す意義が少なかったので未確認
◆最後に
現場によってはAWSパートナーの請求代行を利用していて組織設定をおいそれとは変更できない環境も多いかと思います
一応代替案として子アカウント側で有効化してRAMで管理用のアカウントへ共有という力業もあるとは思いますが・・できれば楽したいですよね
パートナーによっては対応して頂ける可能性もあるかもしれませんので、一度相談なさってはいかがでしょうか