Amazon Web Services ブログ

VMware Cloud on AWS で自分の IP アドレスを使用する (BYOIP)

AWS で Sr. Specialist Solutions Architect を務める Rene van den Bedem による記事です。

VMware Cloud on AWS-dark

この記事では、お客様が独自のパブリック IPv4 アドレス (BYOIP) を使用してレガシーアプリケーションを VMware Cloud on AWS に移行する方法について説明いたします。

VMware Cloud on AWS は、アマゾン ウェブ サービス (AWS) と VMware が共同開発した統合ハイブリッドクラウドサービスです。

現在、VMware Cloud on AWS 自体では、オンプレミスネットワークから VMware Cloud on AWS への独自のパブリックルーティング可能な IPv4 アドレス範囲の作成をサポートしていません。 ただし、AWS では、パブリックにルーティング可能な IPv4 または IPv6 アドレス範囲の一部または全部を、オンプレミスのネットワークから AWS アカウントに導入することができます。

引き続きアドレス範囲を所有できますが、AWS はこれをインターネット上でアドバタイズします。アドレス範囲を AWS に設定すると、そのアドレス範囲はアドレスプールとして AWS アカウントに表示されます。

この記事では、VMware Cloud on AWS 上でお客様が所有する静的パブリック IPv4 アドレスを使用して、マルチリージョンでビジネスクリティカルなレガシーモノリシックアプリケーションをサポートする方法について説明いたします。 AWS Cloud を使用して Amazon Virtual Private Cloud(VPC)、Network Load Balancer(NLB)、Elastic IP アドレス(EIP)、Amazon Route 53VMware Transit Connect(VTGW)を用いて BYOIP を実現します。

マルチサイト 3 層アプリケーショントポロジ

次の図は、複数サイトにおけるビジネスクリティカルなレガシー 3 層アプリケーションアーキテクチャを示しています。

VMC-AWS-BYOIP-1

図 1:マルチサイトのビジネスクリティカルなレガシーアプリケーショントポロジ

アプリケーションは、高速なWide Area Network (WAN) リンクで接続された 2 つのデータセンターでホストされます。 アプリケーションユーザーは、ロードバランサー層のグローバルサイトロードバランサー (GSLB) によってサポートされている app.corp.com の URL を介してサービスにアクセスしています。 GSLB は、URL を静的パブリック IP アドレスに変換し、ネットワークアドレス変換 (NAT) を介して、選択したWeb サーバーのプライベート IP アドレスに転送します。

Web サーバー層はアプリケーションサーバー層に接続し、アプリケーションサーバー層はデータベースサーバー層にアクセスするます。 アプリケーションサーバー層は、WAN リンクを使用して、データベースクラスタの読み取り/書き込みノードにリモートアクセスします。

データベースサーバー層は、マルチサイトのリレーショナルデータベース管理システム(RDBMS)クラスタです。アクティブな読み取り/書き込みノードは、ローカルエリアネットワーク (LAN) および WAN リンクを介してデータベースクラスタ内の他の読み取り専用ノードにデータベースの変更をレプリケートします。

VMware Transit Connect

VMware Transit Connect は、SDDC グループ内のSoftware Defined Data Center(SDDC)への広帯域、低遅延、および回復力のある接続を提供します。 VMware Transit Connect は、 AWS Transit Gateway (TGW) を使用しサービスを提供しています。

SDDC グループは、VTGW を利用し、SDDC、Amazon VPC、およびお客様管理の TGW を相互接続する論理エンティティです。 また、AWS Direct Connect ゲートウェイ (DXGW) を使用して、オンプレミスのデータセンターへのハイブリッド接続を確立します。

さらに、VMware Transit Connect は、SDDC のネットワークを各 SDDC および VTGW のルートテーブルに自動でルート伝播することにより、大規模な管理を簡素化するのに役立ちます。 SDDC は、同じ SDDC グループ内の他の SDDC によってアドバタイズされたルートと、その他の VPC、TGW、オンプレミスネットワークから VTGW および DXGW を介してアドバタイズされたネットワークを自動的に学習します。 お客様は VMware Transit Connect に共有したい特定のルートを設定する事ができます。

さらに、 SDDC バージョン 1.15 より、最大 3 つの AWS リージョンから最大 20 の SDDC を同じ SDDC グループに統合できるようになりました。 マルチリージョンの VMware Transit Connect は、ルーティングと接続を簡素化し、BYOIP ユースケースの基盤となります。 次のセクションでは、このアーキテクチャについて説明します。

BYOIP VPC アーキテクチャ

このリファレンスアーキテクチャは、数百のレガシーアプリケーションを VMware Cloud on AWS に移行し、サービスの制約となる静的パブリック IPv4 アドレスを持つ複数の AWS お客様向けに開発されました。 VMware Cloud on AWS がサポートしている Amazon のパブリック IPv4 アドレスのプールからの DHCP 機能は使用することはできません。

次の図は、マルチリージョンの VMware Transit Connect および BYOIP VPC を使用して VMware Cloud on AWS で実行される、複数サイトにおけるビジネスクリティカルなレガシー 3 層アプリケーションアーキテクチャを示しています。

VMC-AWS-BYOIP-2.1

図 2 — VMware Cloud on AWS における BYOIP

Route 53、EIP、および NLB は、VMware Cloud on AWS で実行されるレガシーなビジネスクリティカルの仮想マシン(VM)用のマルチリージョン負荷分散ソリューションを作成するために使用されます。 お客様のRoute Origin Authorization (ROA) は、関連するリージョンのインターネットレジストリから AWS に許可を与え、AWS からお客様所有の IPv4 ネットワークをアドバタイズするために使用されます。

Route 53 は、レイテンシーまたは地理的近接性ルーティングポリシーを使用して、DNS 解決とマルチリージョンのトラフィック制御を提供します。

ROA は、Amazon ASN 16509 および 14618 からお客様所有の IPv4 ネットワークを AWS がアドバタイズできるようにするために使用されます。 お客様の BYOIP ネットワークは、Elastic IP アドレス割り当て用の”BYOIP” パブリック IPv4 アドレスプールとしてお客様の AWS アカウントで使用できるようになります。

“BYOIP” パブリック IPv4 アドレスプールの EIP は、VMware Cloud on AWS で実行されているWeb サーバー VM の IP アドレスをターゲットグループとして含む Network Load Balancer などの VPC リソースに割り当てられます。

SDDC グループは、VTGW を使用して、以下の間に広帯域、低遅延の接続を提供します。

  • SDDC グループ内の SDDC 間
  • SDDC と 1 つ以上の VPC 間
  • SDDC と 1 つのネイティブ TGW 間(リージョン内)
  • SDDC と オンプレミス間 (DXGW 経由)
  • リージョン間の SDDC

Amazon VPC は VPC アタッチメントを使用して VTGW に接続し、VTGW に接続されたネットワークとの通信を確立します。

VTGW ピアリングアタッチメントは、VTGW A と VTGW B に接続されている SDDC の管理およびコンピューティングネットワーク間のクロスリージョン通信を可能にします。

セットアップ

以下の例では、BYOIP を AWS にデプロイし、VMware Transit Connect を使用して VMware Cloud on AWS と統合します。

VMC-AWS-BYOIP-3.1

図 3:ラボ環境の構成

設定を開始する前に、このラボ環境の前提条件として、以下の項目を事前に準備しプロビジョニングしました。

  • 各リージョンに SDDC バージョン 1.15 以降の SDDC をそれぞれデプロイ
  • SDDC グループに”外部” VPC として接続される、リージョンごとに 1 つの VPC が設定された AWS アカウント。 各 VPC にパブリックサブネットを設定
  • 各 SDDC で Web、アプリケーション、およびデータベース VM のペアの実行
  • お客様所有の IPv4 サブネットを各リージョンで指定された”外部” VPC にインポート
  • Amazon Route 53 パブリックホストゾーンの設定
  • 各 SDDC に Web、アプリケーション、データベース層のトラフィックを許可するように North-South カスタマーゲートウェイのネットワークセキュリティポリシーを構成
  • 各 VPC にインターネット、NLB、Web 層のトラフィックを許可するようにセキュリティグループおよびネットワークアクセスコントロールリスト(NACL)を設定

以下のステップの設定について説明していきます。

  1. VMware Transit Connect と VPC
  2. BYOIP と Network Load Balancer
  3. Route 53 と Network Load Balancer

パート 1: VMware Transit Connect と VPC

VMware Cloud on AWS コンソールから、SDDC グループを作成し、既存の SDDC をメンバーとして含めることから始めます。 これにより、高速な VPC アタッチメントを介して SDDC に接続する VTGW(AWS リージョンごとに 1 つ)の自動デプロイがトリガーされます。

VMware Transit Connect と SDDC の接続ステータスが”接続済み”と表示されると、外部 VPC を持つ AWS アカウントを SDDC グループに関連付けることができます。 外部 VPC のアカウントのステータスは “ASSOCIATING” と表示されます。

VMC-AWS-BYOIP-4

図 4 — AWS アカウントを SDDC グループに関連付ける

AWS マネジメントコンソールでAWS Resource Access Manager (RAM) で、共有された VTGW リソースが表示されます。 各リージョンで共有を承認すると、外部 VPC アカウントのステータスが “関連付け済み” に変わります。

VMC-AWS-BYOIP-5

図 5 — 両方のリージョンで VTGW リソース共有を受け入れる

AWS コンソールで、各リージョンの外部 VPC を VTGW に接続する為に Transit Gateway アタッチメントを作成します。

VMC-AWS-BYOIP-6

図 6 — VTGW への外部 VPC の Transit Gateway アタッチメントの作成

SDDC グループのコンソールに戻り、新しく作成した TGW アタッチメントを受け入れます。 各外部 VPC の TGW アタッチメントのステータスが”承認保留中”から”利用可能”に変わります。

VMC-AWS-BYOIP-7

図 7 — 各リージョンの外部 VPC アタッチメントの受け入れ

最近のアップデートで各 TGW アタッチメントに静的ルートが追加できるようになりました。静的ルートは両方の SDDC に自動的に伝播されます。これは、「ネットワークとセキュリティ」 > 「中継接続」 の 「学習済みのルート」 セクションで確認できます。

VMC-AWS-BYOIP-8

図 8 — 外部 VPC の CIDR 範囲を静的ルートとして追加

次に、各外部 VPC の静的ルートを設定します。 これにより、NLB で終端するすべてのインターネットトラフィックを SDDC で実行されている Web サーバーに転送できます。各外部 VPC のルートテーブルに SDDC の管理およびコンピューティング CIDR 範囲のターゲットとして VTGW を指定します。

VMC-AWS-BYOIP-9

図 9 — SDDC の CIDR 範囲を各外部 VPC の静的ルートとして追加

パート 2: BYOIP と Network Load Balancer

AWS コンソールで、Amazon Elastic Compute Cloud(Amazon EC2)コンソールで EIP にお客様所有の静的な IPv4 アドレスを割り当てます。 オンプレミスネットワークから移行された IPv4 アドレスを消費するには、「顧客所有の IPv4 アドレスのプール」を選択します。 両方の AWS リージョンでこのタスクを実行します。

VMC-AWS-BYOIP-10

図 10 — 各リージョンの EIP として 2 つの静的パブリック IPv4 アドレスを割り当てる

次に、Amazon EC2 コンソールからロードバランサーのターゲットグループを作成します。 「IP アドレス」ターゲットタイプを使用して、外部 VPC を選択します。

VMC-AWS-BYOIP-11

図 11 — リージョンごとにロードバランサーのターゲットグループを作成

「その他のプライベート IP アドレス」 ネットワークオプションを選択し、VMware Cloud on AWS 内の Web サーバーの IP アドレスをターゲットとして指定します。 両方のリージョンでこのタスクを実行します。

VMC-AWS-BYOIP-12

図 12 — 各ロードバランサーのターゲットグループに Web サーバーの IP アドレスを追加

次に、Amazon EC2 コンソールから Network Load Balancer を作成します。 ロードバランサータイプとして「Network Load Balancer」を指定し、「インターネット向け」、「IPv4」アドレスタイプを使用します。

外部 VPC を選択し、2 つのアベイラビリティーゾーン (AZ) にマッピングし、IPv4 アドレスとして 「Elastic IP アドレスの使用」を選択します。 各 AZ の「IP アドレス」ドロップダウンメニューから BYOIP アドレスを選択します。

最後に、リスナーとして以前に構成したターゲットグループを選択します。 両方のリージョンでこのタスクを実行します。

VMC-AWS-BYOIP-13

図 13 — リージョン毎に NLB を構成

パート 3:Route 53

次に、「エイリアス」を有効にした 2 つの A レコードを Route 53 のパブリックホストゾーンに追加します。 トラフィックのルーティング先として「Network Load Balancer へのエイリアス」を選択し、以前に作成した NLB 名を選択します。適切なルーティングポリシーを選択します。リージョンごとに 1 つの A レコードが必要です。

VMC-AWS-BYOIP-14

図 14 — Amazon Route 53 のパブリックホストゾーンに A レコードを追加

これで、Web ブラウザにアプリケーションサービスの URL を入力できます。トラフィックは Route 53 に到達し、いずれかのリージョンの NLB に渡され、その後、VMware Cloud on AWS で実行されている Web サーバーに転送されます。

Network Load Balancer は、パブリック IPv4 から プライベート IPv4 への NAT 機能を実行します。 Web サーバーは、アプリケーションサーバーにトラフィックを送信し、そこからデータベースクラスタにトラフィックが送信されます。

その他の考慮事項

設計上の考慮事項

  • AWS では、リージョンごとに最大 5 つの BYOIP サブネットをサポートします。
  • AWS では、最小の BYOIP サブネットサイズとして /24 がサポートされます(例: /25 はサポートされません。/23 はサポートされます)。
  • 1 つの VMware Transit Connect で最大 3 つのリージョンに接続できます。
  • 1 つの VMware Transit Connect で最大 64 の外部 VPC をサポートします。
  • 1 つの VMware Transit Connect で最大 20 個の SDDC をサポートします。

非対称トラフィックフロー

VMware Cloud on AWS で複数のルーティングドメインと複数のデフォルトルート(DXGW、SDDC、VTGW、VPC)を使用するリスクの 1 つは、非対称トラフィックフローです。

このリファレンスアーキテクチャは、対称トラフィックフローのベストプラクティスに従います。NLB はインターネットからの各着信 TCP 接続を終端し、各 Web サーバーへの新しい TCP 接続を作成します。プライベート IP アドレスはいずれもデフォルトルートを使用しません。

移行計画

VMware HCX(VMware Cloud on AWS のサービスに含まれます)を使用すると、お客様所有の IPv4 サブネットはお客様のオンプレミスルーターによって引き続きホストされる一方で、レイヤ 2 ネットワークをオンプレミスから VMware Cloud on AWS に拡張できます。これにより、ネットワークのカットオーバー計画の進行中に、アプリケーションを VMware Cloud on AWS に移行できます。

まとめ

この記事では、VMware Transit Connect を使用して自分の IP アドレス (BYOIP) を VMware Cloud on AWS に持ち込む方法を詳しく見てみました。

また、2 つのリージョン構成で、お客様が所有する静的なパブリック IPv4 アドレスを使用して、マルチリージョンでビジネスクリティカルなレガシーアプリケーションを VMware Cloud on AWS で実行する例についても説明しました。

今回紹介したサービスの詳細については、以下の追加リソースを参照下さい。

翻訳はPartner SA 豊田が担当しました。原文はこちらです。