CI部の村上です。最近、Transit Gateway(以下、TGW)に触れる機会があり、「これなに?」と思った設定項目がありましたので、今回はそれを記事にします。
Auto accept shared attachments(共有アタッチメントを自動的に受け入れる)ってなんだ?
AWS Resource Access Manager (RAM)を使用し、異なるアカウント間でTGWを共有しているとします。 Auto accept shared attachmentsは、TGW共有先のアカウントがアタッチメントを作成しようとしたときに、TGW共有元が自動的にそれを承認するかどうか設定する項目です。
トランジットゲートウェイの共有
トランジットゲートウェイ - Amazon Virtual Private Cloud
どんな感じなのか、実際に設定して試してみます。
実際にやってみる
Auto accept shared attachmentsを無効にしたとき
TGWの作成(TGW共有元アカウント)
まずはTGW共有元アカウントでTGWを作成します。Auto accept shared attachmentsの設定はデフォルトでは無効になっています。 とりあえず無効のまま作成してみます。
RAMの設定(TGW共有元アカウント)
次にRAMの画面から先ほど作成したTGWを共有します。
TGW共有の承認(TGW共有先アカウント)
上記が完了すると、TGW共有先アカウントのRAMの画面から、共有されたリソースの確認できますのでこれを承認します。
TGWアタッチメントの作成(TGW共有先アカウント)
次にアタッチメントを作成しますが、ここでひとつ注意点があります。 共有されたTGWを使って作成できるTGWアタッチメントはVPCアタッチメントだけになります。
TGWアタッチメントを作成しても「pending acceptance」の状態になり、すぐには使用できません。Auto accept shared attachmentsを無効にしているので、TGW共有元アカウントで承認される必要があります。
TGWアタッチメント共有の承認(TGW共有元アカウント)
TGW共有元での承認は以下のように「アクション」から行います。
これでTGWアタッチメントがめでたく共有できました。
Auto accept shared attachmentsを有効にしたとき
Auto accept shared attachmentsを有効にすると、上記のような承認フローなしでTGWアタッチメントを作成することができます。 設定を有効にして、先程と同じようにTGWを作成・共有します。
TGWアタッチメントの作成(TGW共有先アカウント)
TGWを共有されたアカウントでTGWアタッチメントを作成すると、以下のように「pending」の状態になり、しばらくすると使用可能な状態になります。TGW共有元では承認することなく、いきなりコンソール画面に作成されたアタッチメントが表示されます。
その他の考慮事項
TGWアタッチメント共有には考慮すべきポイントが他にもいくつかあります。
- TGW共有先アカウントではTGWルートテーブルを作成、変更、削除することはできません。
- TGW共有先アカウントではTGWルートテーブルの伝播と関連付けもできません。
- TGWのアタッチメントごとの料金は、TGWにアタッチされた VPC のアカウント所有者に請求されます。
参考
トランジットゲートウェイの共有に関する考慮事項 - Amazon Virtual Private Cloud
料金 - AWS Transit Gateway | AWS
まとめ
いかがでしたでしょうか。TGW共有は組織内の異なるアカウント間での利用シーンが多いと思われますが、組織ごとのルールに合わせてAuto accept shared attachmentsの有効・無効も判断していきたいところです。