AWS Organizations
## Organizations で実現できること
- 複数のアカウントを一元管理
- アカウントをグループ化できる
- アカウントの新規作成を自動化
- 請求を一括管理
## 構成要素
- AWSアカウント
- 組織(Organization):複数AWSアカウントのセット
- マスターアカウント: Organization組織の全体を管理する権限を持つAWSアカウント
- メンバーアカウント
- 組織単位(OU): 組織内にある複数AWSアカウントのグループ
- 管理用ルート: 組織単位(OU)階層の開始点
- 管理ポリシー: 組織内で適用しているAWSアカウントを管理する仕組み
- サービス管理ポリシー(SCP): 利用できるAWSサービスとアクションを制御
## 機能セット
- すべての機能
- 一括請求のみ
- 一括請求
- アカウントの新規作成・招待・削除
## 作成時のtips
- マスターアカウントはアカウントの管理のみを行うアカウントにする
- スイッチロールを利用してユーザが複数のパスワードを覚えずに使える方法をとる
- 既存アカウントをOrganizations に追加することも可能
- 組織からアカウントを削除して、独立したアカウントにすることも可能
- 組織単位のSCP・組織ルートに割り当てられたSCP・IAMポリシーがAND条件として機能
- アカウントごとにVPN接続はVPCごとにhituyou(Direct Connect を利用するにしても準備が必要)
- リソースタグを切らなくても、アカウントごとに料金がわかるメリット
- CloudFormation のスタックセットはテンプレートをOrganizationsの組織単位を対象に複数のAWSアカウントにまたがってデプロイできる
- マスターアカウントを別のアカウントにすることは再作成しないとできないので設計は慎重に
## 管理ユーザの管理
- IAMユーザを1アカウントに集約し、そこから特定のロールにスイッチロール
- スイッチロールするアカウントのユーザ数を絞れる。メンバーの管理は1アカウントで良い
- AWS SSO を利用
- 既存のActive Directory のユーザ名・パスワードで実現できる
## 雑感
複数アカウントで同じオペレーションをしたいと思った時に、1アカウントだとSSMで簡単にできるが、複数アカウントに展開して実行するのが意外と面倒なので Organizations が有効に使えたらなと思っている。(Black belt は概要だけなので自分のしたいことができるかはわからなかった)。
CloudFormationはまたいでできるのは嬉しい。SSMのドキュメント共有だったり、パラメータストアのクロスアカウント共有がもっと楽にできるようになればなぁと思う。