■ 目的
Megaport は Network As A Service(NaaS)プロバイダーです。
Megaport Cloud Router(MCR)は、世界中の600を超える主要なデータセンターから、レイヤ3でのプライベート接続のための仮想ルーティング機能を備えており、日本のMegaportサービス拠点は既に21箇所あります
・@Tokyo CC1
・Equinix TY2
・Equinix TY4
・Colt東京塩浜
・Equinix OS1
・NTTデータ堂島
MCRは、物理的なインフラがなくてもコストは必要帯域幅のみでクラウドからクラウドへの接続およびMegaport Network上のあらゆるプロバイダへ直接接続することができます。
ということで、MCR で Azuer, Google Cloud (GCP), AWS と Oracle Cloud Infrastructure (OCI)を Multicloud 接続してみます。
■ 構成
前回のGCP,AWSとOCIを接続した構成にAzure(US East)を追加接続してみてみます
■ Megaport:MCR作成とGCP,AWSとOCI接続
Megaport:MCR作成とOCI,AWS,GCP接続は下記を参考に設定します。
ここでは、OCI,AWS,GCP接続された状態で、Azureを追加します。
・参考:
Megaport Cloud Router(MCR)でAWSとOracle Cloudを接続してみてみた
Megaport Cloud Router(MCR)でGoogle Cloud とAWSとOracle Cloudを接続してみてみた
■ Azure:ExpressRoute設定
-
「ExpressRoute回線の作成」画面で以下のように設定し、[作成]をクリックし作成
・回線名:任意の名前を設定
・プロバイダー:[Oracle Cloud FastConnect]を選択
・ピアリングの場所:[Washington DC]を選択
・帯域幅:50Mbps〜10Gbps の範囲から選択
・SKUと課金モデル:[制限無]もしくは[従量課金]を選択
・場所:(米国)米国東部を選択
■ Megaport:MCRとAzure接続
ここからは、MegaportのコンソールでAzureで作成したExpressRouteと接続します
① Services画面
Megaportのコンソールから[Services]を選択し、Azureを接続するMCRアイコンの[Connection]をクリック
② New Connection:Select Type画面
[Cloud]をクリック
③ New Connection:Select Port画面
以下のように設定し、[Next]をクリック
・Select Provider: [Azure ExpressRoute]アイコンを選択
・Microsoft Azure Service Key: Azureの「Express Route」作成で発行された[Service Key]を記入
・Choose from available Google Ports: ここでは[Washington DC Primary]を選択、2本目は[Secondary]を選択
④ New Connection:Connection Details画面
以下のように必要項目を設定し[Next]をクリック
・Name your Connection: 接続名を設定
・Rate Limit: 作成したMCRの帯域範囲内の帯幅を設定
⑤ New Connection:MCR A End画面
[Next]をクリック
⑥ New Connection:Summary画面
設定項目を確認して、[Add VXC]をクリック
⑦ Megaport Services画面
Azureとの接続が作成されたことを確認し、左ペインにある[Order]をクリック
⑧ Order Services画面
書かれている重要事項を確認し、[Order Now]をクリック
■ Azure:ExpressRouteとVNet(Virtual Network)接続
VNet内のインスタンスがExpressRouteを通るようExpressRouteとVNetを接続します
● 仮想ネットワークゲートウェイ作成
VNetとExpressRouteを接続するためのゲートウェイを作成します
-
仮想ネットワーク ゲートウェイの作成画面
以下必要内容を設定し、[確認および作成]をクリック・地域:(米国)米国西部を選択
・ゲートウェイの種類:[ExpressRoute]を選択
・SKU:必要なSKUを選択
・仮想ネットワーク:付属させる仮想ネットワークを選択
・ゲートウェイサブネットのアドレス範囲:選択した仮想ネットワーク内に配置するための専用サブネットを設定
・パブリックIPアドレス:作成する仮想ネットワーク ゲートウェイのIPを設定
・パブリックIPアドレス名:任意の名前を設定
- 確認および作成画面
設定した内容を確認して[作成]をクリック
5)仮想ネットワーク ゲートウェイ画面
作成されたことを確認
● ExpressRouteとVNet(仮想ネットワーク)を接続
ExpressRouteとVNetのデータセンターを接続します
-
接続:[基本]画面
以下のように設定・接続の種類: [ExpressRoute]を選択
・サブスクリプション: [従量課金]を選択
・リソースグループ: 接続するvNETのグループを選択
・場所: [米国]米国西部を選択
-
接続:[設定]画面
以下のように設定・仮想ネットワークゲートウェイ:作成したExpressRoute用の仮想ネットワークゲートウェイを選択
・ExpressRoute回線:作成したExpressRoute回線を選択
・接続名:任意の名前を設定
・ルーティングの重み:他NWとは接続しないため、[0]を設定
■ Azure:セキュリティとルート設定
● ネットワーク セキュリティ グループ設定
以下のように各CLoudとの通信が受信/送信セキュリティ規則が通るように設定
今回は次のPrivate IPを設定します
10.0.0.0/8
172.16.0.0/12
● ルートテーブル設定
Azureと対向の各Cloud間を通すルートを設定
ここでは、次のPrivate IPを設定しています
10.0.0.0/8
172.16.0.0/12
■ 各Cloudのインスタンス間導通確認
Azureと各Cloudが導通するか確認します
Cloudのファイアウォールだけでなく、各コマンドが通るようOSのファイアーウォールも事前に通るよう設定しておきまます
● Azure-OCI
① traceroute:経路確認
[root@azure-inst01 azure]# traceroute 10.10.0.2
traceroute to 10.10.0.2 (10.10.0.2), 30 hops max, 60 byte packets
1 172.20.1.4 (172.20.1.4) 64.149 ms 64.132 ms 64.108 ms
2 169.254.195.161 (169.254.195.161) 64.252 ms 64.232 ms 64.209 ms
3 * * *
4 10.10.0.2 (10.10.0.2) 64.339 ms 64.310 ms 64.264 ms
② ping:疎通確認
pingが通ることを確認
[root@azure-inst01 azure]# 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=60 time=71.8 ms
64 bytes from 10.10.0.2: icmp_seq=2 ttl=60 time=70.5 ms
64 bytes from 10.10.0.2: icmp_seq=3 ttl=60 time=71.9 ms
--- 10.10.0.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 70.546/71.447/71.955/0.638 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@azure-inst01 azure]# iperf3 -c 10.10.0.2
Connecting to host 10.10.0.2, port 5201
[ 4] local 172.20.0.4 port 44546 connected to 10.10.0.2 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 22.7 MBytes 191 Mbits/sec 0 6.01 MBytes
[ 4] 1.00-2.00 sec 45.0 MBytes 377 Mbits/sec 0 6.01 MBytes
[ 4] 2.00-3.00 sec 46.2 MBytes 388 Mbits/sec 0 6.01 MBytes
[ 4] 3.00-4.00 sec 26.2 MBytes 220 Mbits/sec 2318 687 KBytes
[ 4] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 3892 742 KBytes
[ 4] 5.00-6.00 sec 12.5 MBytes 105 Mbits/sec 227 662 KBytes
[ 4] 6.00-7.00 sec 8.75 MBytes 73.4 Mbits/sec 19 592 KBytes
[ 4] 7.00-8.00 sec 8.75 MBytes 73.4 Mbits/sec 0 626 KBytes
[ 4] 8.00-9.00 sec 10.0 MBytes 83.9 Mbits/sec 0 649 KBytes
[ 4] 9.00-10.00 sec 10.0 MBytes 83.9 Mbits/sec 0 660 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 200 MBytes 168 Mbits/sec 6456 sender
[ 4] 0.00-10.00 sec 197 MBytes 166 Mbits/sec receiver
④ ssh接続確認
sshでAzureインスタンスへ接続できることを確認
[root@azure-inst01 azure]# ssh -i id_rsa opc@10.10.0.2 hostname
oci-inst01
● Azure-GCP
① traceroute:経路確認
OCIのBGP IP(192.168.255.1)の経路で疎通していることを確認
[root@azure-inst01 azure]# traceroute 10.150.0.3
traceroute to 10.150.0.3 (10.150.0.3), 30 hops max, 60 byte packets
1 172.20.1.4 (172.20.1.4) 64.319 ms 64.308 ms 64.283 ms
2 169.254.195.161 (169.254.195.161) 64.261 ms 64.237 ms 64.214 ms
3 * * *
4 10.150.0.3 (10.150.0.3) 66.902 ms 66.887 ms 66.858 ms
② ping:疎通確認
pingが通ることを確認
[root@azure-inst01 azure]# 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=61 time=72.2 ms
64 bytes from 10.150.0.3: icmp_seq=2 ttl=61 time=64.3 ms
64 bytes from 10.150.0.3: icmp_seq=3 ttl=61 time=72.0 ms
--- 10.150.0.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 64.399/69.572/72.270/3.658 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@azure-inst01 azure]# iperf3 -c 10.150.0.3
Connecting to host 10.150.0.3, port 5201
[ 4] local 172.20.0.4 port 33394 connected to 10.150.0.3 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 22.8 MBytes 191 Mbits/sec 0 6.00 MBytes
[ 4] 1.00-2.00 sec 35.0 MBytes 294 Mbits/sec 1431 493 KBytes
[ 4] 2.00-3.00 sec 12.5 MBytes 105 Mbits/sec 3938 732 KBytes
[ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 235 776 KBytes
[ 4] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 7 586 KBytes
[ 4] 5.00-6.00 sec 8.75 MBytes 73.4 Mbits/sec 0 626 KBytes
[ 4] 6.00-7.00 sec 10.0 MBytes 83.9 Mbits/sec 0 651 KBytes
[ 4] 7.00-8.00 sec 10.0 MBytes 83.9 Mbits/sec 0 665 KBytes
[ 4] 8.00-9.00 sec 10.0 MBytes 83.9 Mbits/sec 0 670 KBytes
[ 4] 9.00-10.00 sec 8.75 MBytes 73.4 Mbits/sec 0 672 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 139 MBytes 117 Mbits/sec 5611 sender
[ 4] 0.00-10.00 sec 137 MBytes 115 Mbits/sec receiver
iperf Done.
④ ssh接続確認
sshでGCPインスタンスへ接続できることを確認
[root@azure-inst01 azure]# ssh -i GCP_id_rsa gcp@10.150.0.3 hostname
gcp-inst01
● Azure-AWS
① traceroute:経路確認
BGP IP(169.254.28.57)の経路で疎通していることを確認
[root@azure-inst01 azure]# traceroute 172.31.0.10
traceroute to 172.31.0.10 (172.31.0.10), 30 hops max, 60 byte packets
1 172.20.1.4 (172.20.1.4) 64.072 ms 64.073 ms 64.048 ms
2 169.254.195.161 (169.254.195.161) 65.193 ms 65.177 ms 65.153 ms
3 169.254.28.57 (169.254.28.57) 66.993 ms 66.975 ms 73.236 ms
4 172.31.0.10 (172.31.0.10) 65.534 ms 65.482 ms 65.440 ms
② ping:疎通確認
pingが通ることを確認
[root@azure-inst01 azure]# 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=244 time=72.2 ms
64 bytes from 172.31.0.10: icmp_seq=2 ttl=244 time=72.1 ms
64 bytes from 172.31.0.10: icmp_seq=3 ttl=244 time=65.9 ms
--- 172.31.0.10 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 65.985/70.152/72.282/2.954 ms
③ iperf3:帯域確認
今回は100Mで設定しているので、100M程度あることを確認
[root@azure-inst01 azure]# iperf3 -c 172.31.0.10
Connecting to host 172.31.0.10, port 5201
[ 4] local 172.20.0.4 port 43068 connected to 172.31.0.10 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 10.1 MBytes 84.8 Mbits/sec 508 1.45 MBytes
[ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 257 777 KBytes
[ 4] 2.00-3.00 sec 12.5 MBytes 105 Mbits/sec 0 825 KBytes
[ 4] 3.00-4.00 sec 12.5 MBytes 105 Mbits/sec 0 854 KBytes
[ 4] 4.00-5.00 sec 12.5 MBytes 105 Mbits/sec 0 873 KBytes
[ 4] 5.00-6.00 sec 12.5 MBytes 105 Mbits/sec 0 881 KBytes
[ 4] 6.00-7.00 sec 13.8 MBytes 115 Mbits/sec 0 884 KBytes
[ 4] 7.00-8.00 sec 12.5 MBytes 105 Mbits/sec 0 884 KBytes
[ 4] 8.00-9.00 sec 13.8 MBytes 115 Mbits/sec 0 884 KBytes
[ 4] 9.00-10.00 sec 12.5 MBytes 105 Mbits/sec 0 890 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 124 MBytes 104 Mbits/sec 765 sender
[ 4] 0.00-10.00 sec 122 MBytes 102 Mbits/sec receiver
④ ssh接続確認
sshでAWSインスタンスへ接続できることを確認
[root@azure-inst01 azure]# ssh -i AWS_id_rsa ec2-user@172.31.0.10 hostname
ip-172-31-0-10.ec2.internal
■ 参考
・Megaport 日本
・Megaport
・Megaport DCロケーション
・Megaport価格 | Megaport Networks
・MCR – Oracle via FastConnect (OCI)
・Connect to Oracle Cloud | Megaport Networks
・Connect to Amazon Web Services | Megaport Networks
・Connect to Google Cloud Platform | Megaport Networks
・Connect to Microsoft Azure | Megaport Networks