こんにちは、技術1課の小倉です。
2020/4/7にアップデートがあり、AWS Transit Gatewayでリージョン間ピアリングが11リージョンで使えるようになりました(東京リージョン含む)!
AWS Transit Gateway がリージョン間ピアリングのサポートを 11 の追加リージョンで開始
AWS Transit Gatewayリージョン間ピアリングについては以下のブログにまとまっていますので、こちらをご参照ください。
Transit Gatewayで実現するマルチリージョン構成・マルチアカウント構成
AWS Transit Gatewayとは
AWS Transit Gateway は Amazon VPCとオンプレミスネットワークを単一のゲートウェイに接続できるようにするサービスです。AWS Transit Gatewayに接続できるのは、Amazon VPC、AWS VPN、AWS Direct Connect Gatewayです。
AWSドキュメント : AWS Transit Gateway
VPCピアリングの例で、VPCが5つあってすべてのVPCとVPCピアリングをする場合、VPCピアリングを10回設定します(左図)。それに対してTransit Gatewayを導入するとすべてのVPCをTransit Gatewayに接続してルートテーブルを設定するだけでVPC間の通信ができるようになり、構成が簡略化されます。
また、VPCピアリングはリージョン間でもできますので、今回のアップデートでリージョン間の構成も簡略化できるようになりました。
またTransit Gatewayの料金は以下のサイトに記載されていますが、Transit Gatewayに接続しているVPC等の数×時間当たりの使用料金と1GBあたりの通信料がかかります。
リージョン間ピアリングですが、料金サイトの記載を読む限り、別リージョンのTransit Gatewayが接続している状態となるので、時間当たりの使用料金がかかりますが、通信料はかからないとなっています。
設定手順
東京リージョン(172.16.0.0/16)とシンガポールリージョン(172.31.0.0/16)をTransit Gatewayのピアリング接続を経由して通信できるようにします。
東京リージョン側
Transit Gatewayを作成します。
- マネジメントコンソールにログインして、VPCのコンソールを開きます。
- 左メニューの[Transit Gateway]をクリックし、[Create Transit Gateway]をクリックします。
- Create Transit Gatewayの画面で、Name tagとDescriptionを入力して、[Create Transit Gateway]をクリックします。
Transit GatewayをVPCにアタッチします。
- VPCのコンソールで、左メニューの[Transit Gatewayアタッチメント]をクリックし、[Create Transit Gateway Attachment]をクリックします。
- Create Transit Gateway Attachmentの画面で、以下を設定し、[Create attachment]をクリックします。
- Transit Gateway ID : 先ほど作成したTransit Gatewayを選択
- Attachment type : VPCを選択
- VPC ID : Transit Gateway経由で通信させたいVPCを選択
- Subnet IDs : Transit Gateway経由で通信させたいサブネットを選択
シンガポールリージョン側
東京リージョンと同様の手順でTransit Gatewayを作成し、Transit GatewayをVPCにアタッチします。
Transit Gatewayピアリングを設定します(これは東京リージョンのTransit Gatewayから実施してもできます)。
- VPCのコンソールで、左メニューの[Transit Gatewayアタッチメント]をクリックし、[Create Transit Gateway Attachment]をクリックします。
- Create Transit Gateway Attachmentの画面で、以下を設定し、[Create attachment]をクリックします。
- Transit Gateway ID : 先ほど作成したTransit Gatewayを選択
- Attachment type : Peering Connectionを選択
-
Account : My Accountを選択(今回は同じアカウントの別リージョンのため)
- Region : 東京リージョンを選択(接続先のリージョンを選択します)
- Transit gateway (accepter) : 東京リージョンで接続するTransit GatewayのIDを入力
東京リージョン側
シンガポールリージョンのTransit Gatewayからピアリングのリクエストがきていますので、承認します。
- VPCのコンソールで、左メニューの[Transit Gatewayアタッチメント]をクリックします。
- Resource typeがPeeringが追加されていますので、[右クリック] - [Accept]をクリックします。
Stateがavailableになったら利用できます。
この状態でTransit Gatewayのピアリングは設定できているのですが、別リージョンあてのルートテーブルがないため、Transit Gatewayルートテーブルの設定が必要です。
- VPCのコンソールで、左メニューの[Transit Gatewayルートテーブル]をクリックし、先ほど作成したTransit Gateway IDのルートテーブルを選択します。
- 画面下のRoutesタブをクリックして、[Create route]をクリックします。
- Create routeの画面で、以下を設定し、[Create route]をクリックします。
- CIDR : シンガポールリージョンのCIDRを入力(今回は172.31.0.0/16)
- Choose attachment : Resource IDがTransit Gatewayを選択
VPC内のルートテーブルにもルートを追加します。
- VPCのコンソールで、左メニューの[ルートテーブル]をクリックし、Transit GatewayでアタッチしたVPCのサブネットが利用しているルートテーブルを選択します。
- 画面下のルートタブをクリックし、ルートの編集をクリックします。
- ルートの編集画面で、以下を設定し、[ルートの保存]をクリックします。
- 送信先 : シンガポールリージョンのCIDRを入力(今回は172.31.0.0/16)
- ターゲット : Transit Gatewayを選択して、ピアリング接続をしたTransit Gateway IDを選択
シンガポールリージョン側
シンガポールリージョン側も同様にTransit Gatewayルートテーブルの追加とVPC内のルートテーブルの追加を実施します。
これで設定は完了です。
東京リージョンとシンガポールリージョンにそれぞれEC2をつくってpingが通ることを確認しました。以下は東京リージョンのEC2(172.16.1.175)からシンガポールリージョンのEC2(172.31.19.144)へのpingの実行結果です。またtracerouteを実行しましたが、途中の経路はでてきませんでした。
[ec2-user@ip-172-16-1-175 ~]$ ping 172.31.19.144 PING 172.31.19.144 (172.31.19.144) 56(84) bytes of data. 64 bytes from 172.31.19.144: icmp_seq=1 ttl=253 time=81.7 ms 64 bytes from 172.31.19.144: icmp_seq=2 ttl=253 time=81.1 ms 64 bytes from 172.31.19.144: icmp_seq=3 ttl=253 time=81.0 ms 64 bytes from 172.31.19.144: icmp_seq=4 ttl=253 time=81.3 ms 64 bytes from 172.31.19.144: icmp_seq=5 ttl=253 time=81.0 ms ^C --- 172.31.19.144 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4005ms rtt min/avg/max/mdev = 81.053/81.271/81.779/0.450 ms [ec2-user@ip-172-16-1-175 ~]$ traceroute 172.31.19.144 traceroute to 172.31.19.144 (172.31.19.144), 30 hops max, 60 byte packets 1 * * * 2 * * * 3 172.31.19.144 (172.31.19.144) 70.456 ms * 70.308 ms
まとめ
AWS Transit Gatewayでリージョン間ピアリングができるリージョンが増えました。このアップデートによって、多数のVPCピアリングなどをしている場合は接続経路が簡略化して管理が楽になります。管理コストとAWS Transit Gatewayの料金との兼ね合いかと思いますが、リージョン間で複数のVPCピアリングなどをしている方は利用を検討してみてはいかがでしょうか。
また、本ブログの内容は2020/4/15(水) 12:00よりYouTube Liveで配信される「30分でわかる AWS UPDATE!」でも取り上げる予定ですので、ぜひご覧ください!
もしリアルタイムで見逃しても、アーカイブ動画から内容を確認できます。
https://youtu.be/6fsFNkpnQns
小倉 大(記事一覧)
アプリケーションサービス部エデュケーショナルサービス課 札幌在住
AWSトレーニングの講師をしています。
最近は7歳の息子と遊ぶのが楽しいです!
Twitter: @MasaruOgura