■目的
Megaport は Network As A Service (NaaS)プロバイダーです。
Megaport Cloud Router(MCR)は、世界中の600を超える主要なデータセンターから、レイヤ3でのプライベート接続のための仮想ルーティング機能を備えており、日本のMegaportサービス拠点は既に21箇所あります
・@Tokyo CC1
・Equinix TY2
・Equinix TY4
・Colt東京塩浜
・Equinix OS1
・NTTデータ堂島
物理的なインフラがなくても、コストは必要帯域幅のみでクラウドからクラウドへの接続および Megaport Network上のあらゆるプロバイダへ直接接続することができます。
ということで、MCR で Google Cloud(GCP) と AWS と Oracle Cloud Infrastructure(OCI)を Multicloud 接続してみます。
■構成
前回のAWSとOCIを接続した構成にGCP(us-east4:北バージニア)を追加接続してみてみます
■Megaport:MCR作成
Megaport:MCR作成とOCI接続は下記を参考に設定
・参考:Megaport Cloud Router(MCR)でAWSとOracle Cloudを接続してみてみた
■GCP:相互接続作成
GCPコンソールでMCRと接続するための相互接続設定を行います
① 相互接続画面
[ハイブリッド接続] > 相互接続画面で[使ってみる]をクリック
② 相互接続のタイプ画面
Megaportを使用するので、[パートナーの相互接続]をクリック
③ パートナーVLANアタッチメントの追加画面
[すでにサービス プロバイダを使用しています]をクリック
④ パートナーVLANアタッチメントの追加画面②
以下設定をして、[クラウドルーター]項目から[新しいルーターを作成します]をクリック
・冗長性: ここでは、冗長しない1本接続するので、[単一のVLANを作成する]を選択
・VPCネットワーク: 接続するVPCを選択
・リージョン: ここでは、us-east4 を選択
⑤ ルーターの作成画面
以下設定を行い、[作成]をクリック
・名前: 任意の名前を設定
・ネットワーク: 接続するVPCを選択
・リージョン: ここでは、us-east4 を選択
・Google ASN: デフォルト値16550を確認
・アドバタイズされたルート: デフォルトを選択
⑥ パートナーVLANアタッチメントの追加画面②
設定した内容を確認し、[作成]をクリック
⑦ VPCネットワークへの接続画面
「これらのVLANアタッチメントを事前に有効にする」項目の[有効にする]をクリック
⑧ VLANアタッチメントを事前に有効にする画面
[理解したうえで有効にする]をクリック
⑨ VPCネットワークへの接続画面
設定した内容を確認し、MCR接続情報で必要な「ペアリングキー」をコピーして、[OK]をクリック
⑩ 相互接続画面
VLANアタッチメントが作成されたことを確認
ステータスは「サービスプロバイダを待機しています」となり、次のMCR接続を行うことでで有効になります
■ Megaport:MCRとGCP接続
ここからは、MegaportのコンソールでGCPで作成したVLNと接続します
① Services画面
Megaportのコンソールから[Services]を選択し、GCPを接続するMCRアイコンの[Connection]をクリック
② New Connection:Select Type画面
[Cloud]をクリック
③ New Connection:Select Port画面
以下のように設定し、[Next]をクリック
・Select Provider: [Google Inc]アイコンを選択
・Google Partner Pairing Key: GCPの「VPCネットワークへの接続」で発行された[ペアリングキー]を記入
・Choose from available Google Ports: ここでは[Ashburn]を選択
④ New Connection:Connection Details画面
以下のように必要項目を設定し[Next]をクリック
・Name your Connection: 接続名を設定
・Rate Limit: 作成したMCRの帯域範囲内の帯幅を設定
⑤ New Connection:MCR A End画面
[Next]をクリック
⑥ New Connection:Summary画面
設定項目を描き人して、[Add VXC]をクリック
⑦ Megaport Services画面
GCPとの接続が作成されたことを確認し、左ペインにある[Order]をクリック
⑧ Order Services画面
書かれている重要事項を確認し、[Order Now]をクリック
⑨ Order Services画面
数分しばらくするとアイコンがグリーンとなり開通します
■ GCP VLANアタッチメント稼動確認
GCP画面より、[ハイブリッド接続]>[相互接続]画面より、
作成したVLANアタッチメントのステータスが「稼働中」であることを確認
そのほか、BGP IPアドレスが付与されていることも確認できます
■ 各Cloudのルートとファイアーウォール設定
OCIとGCP間で疎通できるようにそれぞれのルートとファイアーウォール設定を行います
● OCI:ルート・テーブルとセキュリティ・リスト設定
① ルート・テーブル設定
OCIのVCN SubnetからGCP側CIDR 10.150.0.0/20へ通るよう設定
② セキュリティ・リスト設定
GCP側CIDR 10.150.0.0/20が通るように設定
● GCP:ルートとセキュリティグループ設定
① ルートテーブル設定
GCPの SubnetからOCI側CIDR 10.10.0.0/24へ通るよう設定
GCPの場合、OCIからBGPで伝搬されたルートが自動で反映されるので、反映されていることを確認
###②セキュリティグループ設定
OCI側CIDR 10.10.0.0/24が通るように設定
・ここでは、以下2つのファイアウォール ルールを作成し設定しています
・megaport-cloud-fw-down
・megaport-cloud-fw-up
■ OCI-GCPインスタンス導通確認
● OCI --> GCP接続確認
① traceroute:経路確認
OCIのBGP IP(192.168.255.1)の経路で疎通していることを確認
[root@oci-inst01 opc]# traceroute 10.150.0.3
traceroute to 10.150.0.3 (10.150.0.3), 30 hops max, 60 byte packets
1 140.91.196.22 (140.91.196.22) 0.089 ms 140.91.196.21 (140.91.196.21) 0.070 ms 140.91.196.22 (140.91.196.22) 0.063 ms
2 192.168.255.1 (192.168.255.1) 0.696 ms 0.673 ms 0.626 ms
3 * * *
4 10.150.0.3 (10.150.0.3) 2.844 ms 3.744 ms 2.728 ms
② ping:疎通確認
pingが通ることを確認
[root@oci-inst01 opc]# ping 10.150.0.3 -c 3
PING 10.150.0.3 (10.150.0.3) 56(84) bytes of data.
64 bytes from 10.150.0.3: icmp_seq=1 ttl=62 time=8.54 ms
64 bytes from 10.150.0.3: icmp_seq=2 ttl=62 time=8.55 ms
64 bytes from 10.150.0.3: icmp_seq=3 ttl=62 time=8.54 ms
--- 10.150.0.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 8.541/8.547/8.552/0.004 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@oci-inst01 opc]# iperf3 -c 10.150.0.3
Connecting to host 10.150.0.3, port 5201
[ 4] local 10.10.0.2 port 60988 connected to 10.150.0.3 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 78.4 MBytes 657 Mbits/sec 881 47.4 KBytes
[ 4] 1.00-2.00 sec 10.5 MBytes 88.4 Mbits/sec 205 44.7 KBytes
[ 4] 2.00-3.00 sec 11.6 MBytes 97.6 Mbits/sec 271 14.9 KBytes
[ 4] 3.00-4.00 sec 11.0 MBytes 92.5 Mbits/sec 223 48.8 KBytes
[ 4] 4.00-5.00 sec 11.2 MBytes 94.0 Mbits/sec 283 38.0 KBytes
[ 4] 5.00-6.00 sec 11.3 MBytes 94.5 Mbits/sec 192 19.0 KBytes
[ 4] 6.00-7.00 sec 11.2 MBytes 94.0 Mbits/sec 279 44.7 KBytes
[ 4] 7.00-8.00 sec 10.7 MBytes 89.4 Mbits/sec 235 33.9 KBytes
[ 4] 8.00-9.00 sec 11.9 MBytes 99.6 Mbits/sec 228 16.3 KBytes
[ 4] 9.00-10.00 sec 10.7 MBytes 89.9 Mbits/sec 235 24.4 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 178 MBytes 150 Mbits/sec 3032 sender
[ 4] 0.00-10.00 sec 177 MBytes 148 Mbits/sec receiver
iperf Done.
④ ssh接続確認
sshでGCPインスタンスへ接続できることを確認
[root@oci-inst01 opc]# ssh -i id_rsa gcp@10.150.0.3 hostname
gcp-inst01
● GCP--> OCI接続確認
① traceroute:経路確認
BGP IP(169.254.28.57)の経路で疎通していることを確認
[root@gcp-inst01 gcp]# traceroute 10.10.0.2
traceroute to 10.10.0.2 (10.10.0.2), 30 hops max, 60 byte packets
1 169.254.48.154 (169.254.48.154) 2.609 ms 2.335 ms 2.430 ms
2 140.91.196.27 (140.91.196.27) 2.606 ms 140.91.196.26 (140.91.196.26) 2.296 ms 140.91.196.27 (140.91.196.27) 9.062 ms
3 * 10.10.0.2 (10.10.0.2) 2.244 ms *
② ping:疎通確認
pingが通ることを確認
[root@gcp-inst01 gcp]# ping 10.10.0.2 -c 3
PING 10.10.0.2 (10.10.0.2) 56(84) bytes of data.
64 bytes from 10.10.0.2: icmp_seq=1 ttl=61 time=10.6 ms
64 bytes from 10.10.0.2: icmp_seq=2 ttl=61 time=9.04 ms
64 bytes from 10.10.0.2: icmp_seq=3 ttl=61 time=9.02 ms
--- 10.10.0.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 9.021/9.567/10.636/0.759 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@gcp-inst01 gcp]# iperf3 -c 10.10.0.2
Connecting to host 10.10.0.2, port 5201
[ 4] local 10.150.0.3 port 59132 connected to 10.10.0.2 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 12.8 MBytes 107 Mbits/sec 0 313 KBytes
[ 4] 1.00-2.00 sec 12.2 MBytes 102 Mbits/sec 0 595 KBytes
[ 4] 2.00-3.00 sec 11.9 MBytes 100 Mbits/sec 0 886 KBytes
[ 4] 3.00-4.00 sec 12.5 MBytes 105 Mbits/sec 0 1.14 MBytes
[ 4] 4.00-5.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.43 MBytes
[ 4] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec 110 1.12 MBytes
[ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.24 MBytes
[ 4] 7.00-8.00 sec 12.5 MBytes 105 Mbits/sec 0 1.34 MBytes
[ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.41 MBytes
[ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.46 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 118 MBytes 99.1 Mbits/sec 110 sender
[ 4] 0.00-10.00 sec 116 MBytes 97.5 Mbits/sec receiver
iperf Done.
④ ssh接続確認
sshでGCPインスタンスへ接続できることを確認
[root@gcp-inst01 gcp]# ssh -i id_rsa opc@10.10.0.2 hostname
oci-inst01
■ GCP-AWSインスタンス導通確認
● GCP--> AWS接続確認
① traceroute:経路確認
OCIのBGP IP(192.168.255.1)の経路で疎通していることを確認
[root@gcp-inst01 gcp]# traceroute 172.31.0.10
traceroute to 172.31.0.10 (172.31.0.10), 30 hops max, 60 byte packets
1 169.254.48.154 (169.254.48.154) 3.074 ms 3.018 ms 3.042 ms
2 169.254.28.57 (169.254.28.57) 3.495 ms 3.480 ms 9.755 ms
3 172.31.0.10 (172.31.0.10) 3.201 ms 3.187 ms 3.217 ms
② ping:疎通確認
pingが通ることを確認
[root@gcp-inst01 gcp]# ping 172.31.0.10 -c 3
PING 172.31.0.10 (172.31.0.10) 56(84) bytes of data.
64 bytes from 172.31.0.10: icmp_seq=1 ttl=245 time=10.2 ms
64 bytes from 172.31.0.10: icmp_seq=2 ttl=245 time=9.06 ms
64 bytes from 172.31.0.10: icmp_seq=3 ttl=245 time=8.98 ms
--- 172.31.0.10 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 8.984/9.443/10.279/0.592 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@gcp-inst01 gcp]# iperf3 -c 172.31.0.10
Connecting to host 172.31.0.10, port 5201
[ 4] local 10.150.0.3 port 42816 connected to 172.31.0.10 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 8.93 MBytes 74.9 Mbits/sec 0 129 KBytes
[ 4] 1.00-2.00 sec 11.7 MBytes 98.1 Mbits/sec 0 220 KBytes
[ 4] 2.00-3.00 sec 11.7 MBytes 98.1 Mbits/sec 0 295 KBytes
[ 4] 3.00-4.00 sec 11.7 MBytes 98.1 Mbits/sec 0 367 KBytes
[ 4] 4.00-5.00 sec 12.3 MBytes 103 Mbits/sec 0 564 KBytes
[ 4] 5.00-6.00 sec 11.3 MBytes 95.0 Mbits/sec 0 782 KBytes
[ 4] 6.00-7.00 sec 12.3 MBytes 103 Mbits/sec 0 1018 KBytes
[ 4] 7.00-8.00 sec 12.2 MBytes 103 Mbits/sec 0 1.21 MBytes
[ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.42 MBytes
[ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 116 1.11 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 115 MBytes 96.2 Mbits/sec 116 sender
[ 4] 0.00-10.00 sec 113 MBytes 94.8 Mbits/sec receiver
iperf Done.
④ ssh接続確認
sshでGCPインスタンスへ接続できることを確認
[root@gcp-inst01 gcp]# ssh -i AWS_id_rsa ec2-user@172.31.0.10 hostname
ip-172-31-0-10.ec2.internal
● AWS--> GCP接続確認
① traceroute:経路確認
BGP IP(169.254.28.57)の経路で疎通していることを確認
[root@ip-172-31-0-10 ec2-user]# traceroute 10.150.0.3
traceroute to 10.150.0.3 (10.150.0.3), 30 hops max, 60 byte packets
1 169.254.255.21 (169.254.255.21) 1.279 ms 169.254.255.5 (169.254.255.5) 61.157 ms 169.254.255.21 (169.254.255.21) 1.446 ms
2 169.254.28.57 (169.254.28.57) 1.690 ms 1.687 ms 1.706 ms
3 169.254.28.58 (169.254.28.58) 1.439 ms 1.447 ms 1.459 ms
4 * * *
5 ip-10-150-0-3.ec2.internal (10.150.0.3) 3.319 ms 3.228 ms 3.235 ms
② ping:疎通確認
pingが通ることを確認
[root@ip-172-31-0-10 ec2-user]# ping 10.150.0.3 -c 3
PING 10.150.0.3 (10.150.0.3) 56(84) bytes of data.
64 bytes from 10.150.0.3: icmp_seq=1 ttl=62 time=9.35 ms
64 bytes from 10.150.0.3: icmp_seq=2 ttl=62 time=9.41 ms
64 bytes from 10.150.0.3: icmp_seq=3 ttl=62 time=9.33 ms
--- 10.150.0.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 9.338/9.366/9.410/0.031 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@ip-172-31-0-10 ec2-user]# iperf3 -c 10.150.0.3
Connecting to host 10.150.0.3, port 5201
[ 4] local 172.31.0.10 port 53228 connected to 10.150.0.3 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 66.3 MBytes 556 Mbits/sec 208 44.7 KBytes
[ 4] 1.00-2.00 sec 11.3 MBytes 95.0 Mbits/sec 162 29.8 KBytes
[ 4] 2.00-3.00 sec 11.3 MBytes 95.0 Mbits/sec 158 20.3 KBytes
[ 4] 3.00-4.00 sec 11.3 MBytes 95.0 Mbits/sec 112 62.4 KBytes
[ 4] 4.00-5.00 sec 11.3 MBytes 95.0 Mbits/sec 144 33.9 KBytes
[ 4] 5.00-6.00 sec 11.8 MBytes 98.6 Mbits/sec 130 55.6 KBytes
[ 4] 6.00-7.00 sec 11.3 MBytes 95.0 Mbits/sec 139 44.7 KBytes
[ 4] 7.00-8.00 sec 11.3 MBytes 95.0 Mbits/sec 133 62.4 KBytes
[ 4] 8.00-9.00 sec 11.3 MBytes 95.0 Mbits/sec 167 25.8 KBytes
[ 4] 9.00-10.00 sec 11.3 MBytes 95.0 Mbits/sec 149 29.8 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 169 MBytes 141 Mbits/sec 1502 sender
[ 4] 0.00-10.00 sec 168 MBytes 141 Mbits/sec receiver
iperf Done.
④ ssh接続確認
sshでGCPインスタンスへ接続できることを確認
[root@ip-172-31-0-10 ec2-user]# ssh -i GCP_id_rsa gcp@10.150.0.3 hostname
gcp-inst01
■参考
・Megaport
・Megaport DCロケーション
・Megaport価格 | Megaport Networks
・MCR – Oracle via FastConnect (OCI)
・Connect to Oracle Cloud | Megaport Networks
・Connect to Google Cloud Platform | Megaport Networks