マルチアカウント環境におけるネットワークアーキテクチャ②(オンプレミスとVPC間の設計)

記事タイトルとURLをコピーする

こんにちは。AWS CLIが好きな福島です。

はじめに

前回、マルチアカウント環境におけるネットワークアーキテクチャのCICR設計について、ブログを書きましたが、 今回は、オンプレミスとマルチアカウント環境で増加するVPC間の設計について、ブログを記載いたします。

blog.serverworks.co.jp

結論

マルチアカウント構成ではアカウントの数に比例してVPCの数が増える(オンプレミスと接続するVPCも増える)傾向にあるため、 拡張性を考慮し、始めからTransit Gatewayの利用を検討することをおすすめいたします。

構成

前提

オンプレミスとVPC間の通信を実装する場合は、Direct Connect(+Direct Connect Gateway)やSite to Site VPNのサービスを利用する必要がございます。

課題(制限)

上記構成には以下の通り、制限があるのですが、マルチアカウント環境では、アカウントの数に比例してVPCの数が増える傾向にあるため、この制限を超える可能性が高くなります。

  • Direct Connect(+Direct Connect Gateway)構成の制限
    1つDirect Connect Gatewayに関連付けられるVirtual Gateway(以降、VGW)の数が最大10個となります。つまり、VPCを10個までしか、オンプレミスと接続できないということになります。
  • Site to Site VPN構成の制限
    Site to Site VPNに関連付けられるVGWの数は1個となります。つまり、VPC1個しか、オンプレミスと接続できないということになります。

課題(制限)を考慮した設計

課題(制限)を考慮し、上記サービスにTransit Gatewayというサービスを組み合わせることが多く、このサービスを利用することでより多くのVPCをオンプレミスと接続可能です。

Transit Gatewayに接続したいリソース(VPC/Direct Connect Gateway/Site to Site VPNなど)は、アタッチメントを作る必要がありますが、このアタッチメントは、最大5000まで作成することが可能です。つまり、最大5000近くのVPCを接続することができます。

また上記には、しれっとネットワークアカウントというアカウントを記載しておりますが、 マルチアカウント構成を組む上では、Direct ConnectやTransit Gatewayといった共通基盤となるリソースは、 1つのアカウントに集約して管理することをおすすめいたします。(Transit GatewayはRAMで個々のアカウントに共有して利用します。)

ということで結論としては、マルチアカウント構成ではアカウントの数に比例してVPCの数が増える(オンプレミスと接続するVPCも増える)傾向にあるため、 拡張性を考慮し、始めからTransit Gatewayの利用を検討するのが良いかと存じます。

ルーティング設計例

構成だけのブログでは少し物足りないかなと思ったため、Direct Connect+Direct Connect Gateway+Transit Gatewayを使った構成のルーティング設計例についても記載いたします。 上記構成の場合、考慮するべき設定は以下の通りです。

  • Direct Connect Gatewayの許可されたプレフィックス
  • Transit Gateway Route Table
  • Subnet Route Table

例として、オンプレミスで使うCIDRがクラスA(10.0.0.0/8)、AWSで使うCIDRがクラスB(172.16.0.0/12)を使う場合のルーティング設計例を記載いたします。

  • Direct Connect Gatewayの許可されたプレフィックス

ここには、AWS側で利用するCIDRを設定いたします。 これにより、オンプレミスのルーターがAWS側にルーティングすべきCIDRの情報を受け取ることができ、適切にオンプレミスからAWSへのルーティングを行うことができます。

  • Transit Gateway Route Table

DXGWアタッチメント用のルートテーブルとVPCアタッチメント用のルートテーブルがあるため、それぞれ記載いたします。

まず、DXGWアタッチメント用のルートテーブルには、VPCへのルートを記載いたします。 ルーティングは、静的か動的で設定が可能ですが、基本的には動的の設定が良いかと存じます。

動的設定の具体的なメリットとしては、以下が考えられます。

  • 静的な場合、設定する際にCIDRとアタッチメントを意識しなければならないが、動的な場合、アタッチメントのみ意識するだけで良い
  • VPCにセカンダリCIDRを追加した場合に、ルートが自動で追加される

続いて、VPCアタッチメント用のルートテーブルについてになります。 このルートテーブルには、オンプレミスへのルートを設定します。 こちらも、静的か動的で設定が可能ですが、基本的には動的の設定が良いかと存じます。 ただし、動的の設定にする場合は、オンプレミス側のルーターからCIDRを広報する設定を実装しておく必要があります。

  • Subnet Route Table

サブネットのルートテーブルには、オンプレミス宛のCIDRはTransit Gatewayへルートするように設定を行う必要があります。 これは動的での設定ができないため、静的(手動)でルートの設定を行う必要があります。

終わりに

今回は、オンプレミスとマルチアカウント環境で増加するVPC間のネットワークアーキテクチャのブログを記載いたしました。 どなたかのお役に立てれば幸いです。

福島 和弥 (記事一覧)

2019/10 入社

AWS CLIが好きです。