Megaport Cloud Routerを利用してAWSとGoogle Cloudを接続してみた

AWS

2023.4.14

Topics

はじめに

Megaportのサービスを利用してAWSとGoogle Cloud間を閉域網で接続してみましたので、実施した内容について共有します。今回の構成は最も基本的な構成になると思います。

Megaportとは

グローバルで780以上のデータセンター、360以上のサービスプロバイダーと閉域網接続が可能なNaaS(Network As A Service)プロバイダーです。サービスは以下のような特徴をもっており、特にCSP(クラウドサービスプロバイダー)間の閉域網接続に最適なサービスになっています。

  • 初期費用なし。月額は利用期間に応じて従量課金または月額固定のいずれか。
  • 必要なときに管理ポータル(Webインターフェース)からすぐに構築・変更が可能。

対応しているCSPについて

さまざまなCSPに対応しており、以下のようなものがあります。Megaportのサービスを利用することでこれらのCSP間を閉域網で接続することができます。

  • AWS(Amazon Web Services)
  • Microsoft Azure
  • Google Cloud
  • Oracle Cloud
  • Alibaba Cloud
  • IBM Cloud
  • Salesforce

構成

以下の構成で検証をしてみました。AWS・Google Cloud内のインスタンス同士でPing疎通ができるところまでを確認しました。

導入手順

前提

AWS・Google Cloudの内部ネットワークの設定は完了しているものとします。Megaportとの接続に関連する部分について解説します。

MCR(Megaport Cloud Router)の作成

  1. 事前に作成したユーザーアカウントでMegaport(https://portal.megaport.com/login)にログイン

  2. メニューからサービスタブを選択し”MCRの作成”をクリック

  3. MCRを配置するデータセンターを選択
    今回は、”AtTokyo Data Centre”を選択します。

  4. MCRの帯域制限・名前・最低利用期間を設定

    • MCRの帯域制限は、MCRを介する通信の総容量になります。たとえば、2つのCSP間の双方向1Gbpsの通信を実施したい場合は、MCRの帯域制限を2.5Gbps等に設定する必要があります。
      参考 : https://docs.megaport.com/ja/mcr/#_2
    • 最低利用期間は、最低利用期間なし・1年・2年・3年から選択できます。より長い契約になるほど安く利用できますが、今回は検証なので最低利用期間なしを選択します。なお、最低利用期間なしを選択した場合、利用した時間にたいして課金がおこなわれるようになります。たとえば、一時的なデータ転送で1日のみ利用するといった場合は、最低利用期間なしにすることで安価に利用することができます。
    • MCR AS番号は”133937″がデフォルトで設定されていますが、とくに理由がなければそのままでいいと思います。
  5. 概要を確認し問題なければMCRを作成

  6. MCRが作成されていることを確認

AWS DirectConnectの接続

  1. 作成したMCRの”+接続”をクリック

  2. タイプの選択から”クラウド”を選択

  3. AWSのホスト型VIFを選択
    AWSへの接続について、ホスト型VIFとホスト型接続が選択できますが、今回はホスト型VIFで設定を行います。

  4. AWSの接続ロケーションを選択
    今回は、”AtTokyo Data Centre”で接続します。

  5. VXCの名前・帯域制限を設定
    帯域制限はMCRで設定した帯域制限の値までの任意の帯域を選択できます。今回は50Mbpsで設定します。

  6. MCR接続の詳細を確認

  7. AWS接続のタイプ・名前・アカウントID・Amazon AS番号を設定

    • AWSアカウントIDはAWSの管理コンソールに表示されている値をコピーして貼り付けます。
    • Amazon AS番号は入力が必須ではありませんが、入力しないと”7224″が割り当てられてしまいBGPのピアがはれなかったので、入力したほうがいいと思います。DXGWを利用する場合は、DXGWに設定したAS番号をAmazon AS番号の欄に入力します。
  8. 概要を確認し問題なければVXCを作成

  9. AWS向けのVXCが作成されていることを確認

  10. AWSの管理コンソールでVIFが作成されていることを確認し対象のVIFを選択

  11. VIFの詳細画面から”承諾する”のボタンをクリック

  12. 仮想インターフェースの設定画面からDXGWまたはVGWを設定
    今回は事前に作成しておいたDXGWを利用します。

  13. 状態とBGPステータスを確認
    状態が”available”、BGPステータスが”up”に変化したことを確認する。

Google Cloud Interconnectの接続

  1. Google Cloudの管理コンソールの相互接続から”VLANアタッチメントの作成”をクリック

  2. “Partner Interconnect 接続”を選択

  3. 接続の確認から”すでにサービス プロバイダを利用しています”をクリック

  4. 冗長性・VLANを設定

    • 冗長性は今回は、”単一の VLAN を作成する(冗長性なし)”を選択します。
    • ネットワークはあらかじめ作成しておいたVPCを選択し、リージョンは東京を選択します。
    • Cloud Routerは作成済みのものがなければこの画面で作成できます。
  5. ペアリングキーをコピー
    ペアリングキーが払い出されるのでこれをコピーします。コピーしたらOKをクリックします。

  6. MCRの”+接続”をクリック

  7. タイプの選択から”クラウド”を選択

  8. Google Cloudの設定からペアリングキーをペースト
    Google Cloudの管理コンソールでコピーしたペアリングキーをこの画面にペーストする。

  9. Google Cloudの接続ロケーションを選択
    今回は、”Equinix TY2″を選択します。

  10. VXCの名前・帯域制限を設定
    帯域制限はMCRで設定した帯域制限の値までの任意の帯域を選択できます。今回は50Mbpsで設定します。

  11. MCR接続の詳細を確認

  12. 概要を確認し問題なければVXCを作成

  13. Google Cloudの画面で”有効化”をクリック
    作成したVLANアタッチメントの有効化待ち状態になっているので、有効化を行う。

  14. VLANアタッチメントの詳細からBGPセッションの編集を選択

  15. BGPセッションの編集画面を確認
    内容は特に変更する必要は無いので、そのまま”保存して次へ”をクリックする。

  16. VLANアタッチメントの状態を確認
    ステータスが”稼働中”に遷移したことを確認する。

状態確認

  1. Megaportの画面の双眼鏡のアイコンをクリック

  2. MCR Looking glassから状態を確認
    BGPのステータスや経路の受信状況をこの画面から確認することができます。

  3. AWSのルートの状態を確認
    ルート伝播を有効化している場合、VGW経由で受信した経路が確認できます。

  4. Google Cloudのルートの状態を確認

疎通確認

  1. AWSのインスタンスからGoogle Cloudのインスタンスへの疎通確認

    [ec2-user@ip-10-0-0-161 ~]$ ping -c 5 10.146.0.4
    PING 10.146.0.4 (10.146.0.4) 56(84) bytes of data.
    64 bytes from 10.146.0.4: icmp_seq=1 ttl=62 time=4.50 ms
    64 bytes from 10.146.0.4: icmp_seq=2 ttl=62 time=3.51 ms
    64 bytes from 10.146.0.4: icmp_seq=3 ttl=62 time=3.46 ms
    64 bytes from 10.146.0.4: icmp_seq=4 ttl=62 time=3.45 ms
    64 bytes from 10.146.0.4: icmp_seq=5 ttl=62 time=3.51 ms
    
    --- 10.146.0.4 ping statistics ---
    5 packets transmitted, 5 received, 0% packet loss, time 4007ms
    rtt min/avg/max/mdev = 3.452/3.687/4.499/0.406 ms
    
    [ec2-user@ip-10-0-0-161 ~]$ traceroute -I 10.146.0.4
    traceroute to 10.146.0.4 (10.146.0.4), 30 hops max, 60 byte packets
     1  169.254.41.141 (169.254.41.141)  18.681 ms  18.672 ms  18.668 ms
     2  169.254.41.142 (169.254.41.142)  18.664 ms  18.662 ms  18.659 ms
     3  10.146.0.4 (10.146.0.4)  18.649 ms  18.641 ms  18.657 ms
    

  2. Google CloudのインスタンスからAWSのインスタンスへの疎通確認

    [enoki@centos-7-1 ~]$ ping -c 5 10.0.0.161
    PING 10.0.0.161 (10.0.0.161) 56(84) bytes of data.
    64 bytes from 10.0.0.161: icmp_seq=1 ttl=124 time=4.54 ms
    64 bytes from 10.0.0.161: icmp_seq=2 ttl=124 time=3.54 ms
    64 bytes from 10.0.0.161: icmp_seq=3 ttl=124 time=3.38 ms
    64 bytes from 10.0.0.161: icmp_seq=4 ttl=124 time=3.50 ms
    64 bytes from 10.0.0.161: icmp_seq=5 ttl=124 time=3.50 ms
    
    --- 10.0.0.161 ping statistics ---
    5 packets transmitted, 5 received, 0% packet loss, time 4007ms
    rtt min/avg/max/mdev = 3.380/3.696/4.547/0.432 ms
    
    [enoki@centos-7-1 ~]$ sudo traceroute -I 10.0.0.161
    traceroute to 10.0.0.161 (10.0.0.161), 30 hops max, 60 byte packets
     1  * * *
     2  169.254.41.141 (169.254.41.141)  4.083 ms  4.114 ms  4.113 ms
     3  10.0.0.161 (10.0.0.161)  4.902 ms  5.020 ms  5.022 ms
    

最後に

物理インフラの構築が不要かつ、Webインターフェースを利用した簡単な操作で構築が完了するため、非常に便利なサービスと感じました。慣れると1時間程度で構築を完了させることができると思います。

テックブログ新着情報のほか、AWSやGoogle Cloudに関するお役立ち情報を配信中!

Recommends

こちらもおすすめ

Special Topics

注目記事はこちら