Partner Interconnect で 99.99% の可用性を実現する

このチュートリアルでは、Partner Interconnect を使用して 99.99% の可用性を達成するためのリソースを作成して構成します。ダウンタイムの許容度が低く、ミッション クリティカルな運用が必要となるような本番環境レベルのアプリケーションには、この構成が推奨されています。

99.99% の可用性を達成するには、次のリソースと設定が必要です。

  • 少なくとも 4 つの VLAN アタッチメント(Google Cloud リージョンごとに 2 つ)。1 つのリージョンだけに仮想マシン(VM)インスタンスがある場合でも、2 つのリージョンを使用する必要があります。リージョン全体の問題が発生した場合、もう一方のリージョン経由でお客様の VM に到達するようにルートが変更されます。各 VLAN アタッチメントには、専用の Cloud Router が必要です(4 つの Cloud Router)。
  • 各リージョンのアタッチメントは、それぞれ別々のメトロの相互接続に接続する必要があります。相互接続のロケーションの選択の詳細については、接続のリクエストをご覧ください。
  • Virtual Private Cloud(VPC)ネットワークの動的ルーティング モードはグローバルにする必要があります。グローバル動的ルーティングを利用すると、Cloud Router はすべてのサブネットをアドバタイズし、学習したルートをサブネットのリージョンに関係なく、すべてのサブネットに伝播できます。
  • ハードウェアと可用性の要件に応じて、オンプレミス ネットワークで 1 つ以上のルーターを使用できます。

次のチュートリアルでは、以下のリソース名、リージョン、相互接続ロケーションを使用します。チュートリアルを進めるときは、これらの値を実際の値で置き換えてください。

リージョン ルーター名 VLAN アタッチメント名 接続ロケーション エッジ アベイラビリティ ドメイン
us-central1 router-central-a attach-central-a Dallas 1
us-central1 router-central-b attach-central-b Dallas 2
us-east4 router-east-a attach-east-a Ashburn 1
us-east4 router-east-b attach-east-b Ashburn 2

次のトポロジ例は、2 つのメトロの 4 つのレイヤ 2 接続を示しています。各大都市圏内で、各接続は異なるエッジ アベイラビリティ ドメイン(Dallas - domain 1Dallas - domain 2Ashburn - domain 1Ashburn - domain 2)にあります。vpc1 ネットワーク内の us-central1 リージョンと us-east4 リージョンに Cloud Router があります(VLAN アタッチメントごとに 1 つ)。レイヤ 2 接続の場合、ユーザーがオンプレミス ルーターと各 Cloud Router の BGP セッションを構成します。

レイヤ 2 を使用して 99.9% の可用性を実現するための冗長相互接続の図(クリックして拡大)
99.99% の可用性のための冗長相互接続(クリックで拡大)

レイヤ 2 トポロジと同様に、次のレイヤ 3 トポロジは、2 つの大都市圏および異なるエッジ アベイラビリティ ドメインでの 4 つの接続を示しています。vpc1 ネットワーク内の us-central1 リージョンと us-east4 リージョンに Cloud Router があります(VLAN アタッチメントごとに 1 つ)。レイヤ 3 接続の場合、サービス プロバイダが BGP セッションを構成します。

レイヤ 3 を使用して 99.9% の可用性を実現するための冗長相互接続の図(クリックして拡大)
99.99% の可用性のための冗長相互接続(クリックで拡大)

優先されるパス

99.99% の可用性を実現するには、VPC ネットワークの動的ルーティング モードをグローバルに設定する必要があります。グローバル動的ルーティングでは、Cloud Router は VPC ネットワーク内のすべてのサブネットへのルートをアドバタイズします。ただし、Cloud Router がアドバタイズするリモート サブネット(Cloud Router のリージョン外のサブネット)へのルートは、ローカル サブネット(Cloud Router のリージョン内にあるサブネット)と比較して優先度が低くなります。詳細については、Cloud Router のドキュメントの動的ルーティング モードをご覧ください。

トポロジの例では、VPC ネットワークへの上りトラフィックは us-central1 を経由するほうが優先されます。これは、このルートは us-east4 リージョンからのルートよりも優先度が高いためです。us-central1 での接続が失敗した場合に限り、トラフィックが us-east4 を通過します。

Cloud Router の BGP セッションを構成するとき、ルートの優先度を変更できます。BGP セッションには、アドバタイズされたルートの優先度のオプションがあります(MED 値)。値が小さければ小さいほど、優先度が高くなります。たとえば、us-east4 の BGP セッションに高い優先度を構成し、そのリージョンを優先パスにできます。詳細については、Cloud Router のドキュメントのルート指標をご覧ください。

手順

以下のセクションでは、以前のトポロジを作成する手順について説明します。目的に合わせたトポロジを作成するには、サンプルの入力値を独自の値に置き換えます。たとえば、vpc1 というネットワーク名を実際の VPC ネットワーク名に置き換えます。

VPC ネットワークの作成

vpc1 ネットワークに対して、カスタム サブネットがあるネットワークを作成し、その動的ルーティング モードをグローバルに設定します。詳細については、VPC のドキュメントのカスタム サブネットを使用して新しい VPC ネットワークを作成するをご覧ください。

Console

  1. Google Cloud Console で [VPC ネットワーク] ページに移動します。
    [VPC ネットワーク] ページに移動
  2. [VPC ネットワークを作成] をクリックします。
  3. [名前] フィールドに「vpc1」と入力します。
  4. [サブネット作成モード] で [カスタム] を選択します。
  5. サブネットの詳細を指定します。
    1. 名前 - 「subnet-uscentral1」と入力します。
    2. リージョン - us-central1 を選択します。
    3. IP アドレス範囲 - IP 範囲を指定します(例: 192.168.1.0/24)。オンプレミス ネットワークと重複しない範囲を使用します。
  6. [サブネットを追加] をクリックします。
  7. 2 番目のサブネットの詳細を指定します。
    1. 名前 - 「subnet-useast4」と入力します。
    2. リージョン - us-east4 を選択します。
    3. IP アドレス範囲 - IP 範囲を指定します(例: 192.168.2.0/24)。オンプレミス ネットワークと重複しない範囲を使用します。
  8. [ダイナミック ルーティング モード] セクションで、[グローバル] を選択します。
  9. [作成] をクリックします。

gcloud

  1. カスタム サブネット ネットワークを作成します。

    gcloud compute networks create vpc1 \
      --subnet-mode custom \
      --bgp-routing-mode global
    
  2. us-central1 リージョンと us-east4 リージョンのサブネット接頭辞を指定します。

    gcloud compute networks subnets create subnet-uscentral1 \
      --network vpc1 \
      --region us-central1 \
      --range 192.168.1.0/24
    
    gcloud compute networks subnets create subnet-useast4 \
      --network vpc1 \
      --region us-east4 \
      --range 192.168.2.0/24
    

Cloud Router の作成

VLAN アタッチメントごとに 1 つずつ、4 つの Cloud Router を作成します。Partner Interconnect の場合、すべての Cloud Router でローカル ASN として 16550 を使用する必要があります。

Console

  1. Google Cloud Console で [クラウド ルーターを作成] ページに移動します。
    ルーターページに移動
  2. Cloud Router の詳細を指定します。
    • 名前 - 最初の Cloud Router の名前として router-central-a を指定します。
    • VPC ネットワーク - vpc1 を指定します。この値は、オンプレミス ネットワークの拡張先となるネットワークの名前です。
    • リージョン - us-central1 を指定します。この値は、トポロジの例に示すように、Cloud Router が構成されているリージョンです。
    • Google ASN - 16550 を指定します。この値は、Partner Interconnect では必須です。
  3. 最初の Cloud Router を複製し、名前を router-central-b に変更します。
  4. 同じ属性を持つ Cloud Router を us-east4 リージョンにさらに 2 つ作成し、名前を router-east-arouter-east-b にします。

gcloud

  1. vpc1 ネットワーク内の us-central1 リージョンに 2 つの Cloud Router を作成します。両方の Cloud Router に ASN 16550 を使用します。

    gcloud compute routers create router-central-a \
      --asn 16550 \
      --network vpc1 \
      --region us-central1
    
    gcloud compute routers create router-central-b \
     --asn 16550 \
     --network vpc1 \
     --region us-central1
    
  2. vpc1 ネットワーク内の us-east4 リージョンに 2 つの Cloud Router を作成します。両方の Cloud Router に ASN 16550 を使用します。

    gcloud compute routers create router-east-a \
     --asn 16550 \
     --network vpc1 \
     --region us-east4
    
    gcloud compute routers create router-east-b \
     --asn 16550 \
     --network vpc1 \
     --region us-east4
    

VLAN アタッチメントの作成

次のリストに示すように、4 つの VLAN アタッチメントを作成し、Cloud Router とペアにします。

  • router-central-aattach-central-a に関連付けられます。
  • router-central-battach-central-b に関連付けられます。
  • router-east-aattach-east-a に関連付けられます。
  • router-east-battach-east-b に関連付けられます。

Console

  1. Google Cloud Console で Cloud Interconnect の [VLAN アタッチメント] タブに移動します。
    [VLAN アタッチメント] タブに移動
  2. [VLAN アタッチメントを追加] を選択します。
  3. [パートナーの相互接続] を選択して専用 VLAN アタッチメントを作成し、[続行] を選択します。
  4. [すでにサービス プロバイダを利用しています] を選択します。
  5. [冗長な VLAN ペアを作成する] を選択します。
  6. [ネットワーク] フィールドで vpc1 ネットワーク、[リージョン] フィールドで us-central1 リージョンを選択します。この値は、接続先の VPC ネットワークとリージョンを示します。
  7. 最初の VLAN アタッチメントの詳細を指定します。
    • Cloud Router - Cloud Router router-centreal-a を選択します。
    • VLAN アタッチメント名 - アタッチメント名として attach-central-a を指定します。この名前は Console に表示され、gcloud コマンドライン ツールでこのアタッチメントを参照するために使用されます。
  8. 2 番目の VLAN アタッチメントの詳細を指定します。
    • Cloud Router - Cloud Router router-centreal-b を選択します。
    • VLAN アタッチメント名 - アタッチメント名として attach-central-b を指定します。
  9. [作成] を選択してアタッチメントを作成します。完了するまで数分かかります。
  10. [OK] を選択して VLAN アタッチメントのリストに戻ります。
  11. [VLAN アタッチメントを追加] を選択して、別のアタッチメントの冗長ペアを us-east4 リージョン用に作成します。

gcloud

  1. アタッチメントを作成します。

    gcloud compute interconnects attachments partner create attach-central-a \
      --router router-central-a \
      --region us-central1 \
      --edge-availability-domain availability-domain-1
    
    gcloud compute interconnects attachments partner create attach-central-b \
      --router router-central-b \
      --region us-central1 \
      --edge-availability-domain availability-domain-2
    
    gcloud compute interconnects attachments partner create attach-east-a \
      --router router-east-a \
      --region us-east4 \
      --edge-availability-domain availability-domain-1
    
    gcloud compute interconnects attachments partner create attach-east-b \
      --router router-east-b \
      --region us-east4 \
      --edge-availability-domain availability-domain-2
    

ペアリングキーの取得

VLAN アタッチメントを作成すると、GCP は VLAN アタッチメントごとにペアリングキーを生成します。プロジェクトやリソースの名前に関する情報を共有しなくても、ペアリングキーによりサービス プロバイダは VLAN アタッチメントを識別できます。

Console

  1. Google Cloud Console で Cloud Interconnect の [VLAN アタッチメント] タブに移動します。
    [VLAN アタッチメント] タブに移動
  2. VLAN アタッチメント attach-central-a を見つけて、[手順を表示] を選択します。

    コンソールにアタッチメントのペアリングキーが表示されます。キーをコピーして記録します。このキーは、サービス プロバイダとの接続をリクエストするときにそのサービス プロバイダに伝えます。

  3. [OK] を選択して、VLAN アタッチメントのリストに戻ります。

  4. VLAN アタッチメント attach-central-battach-east-aattach-east-b のペアリングキーを取得します。

gcloud

  1. 各 VLAN アタッチメントに対して describe コマンドを実行し、そのペアリングキーを取得します。これらのキーを使用して、サービス プロバイダとの接続をリクエストします。

    gcloud compute interconnects attachments describe attach-central-a \
      --region us-central1
    

    前のコマンドは、次の情報を出力します。

    adminEnabled: false
    edgeAvailabilityDomain: AVAILABILITY_DOMAIN_1
    creationTimestamp: '2017-12-01T08:29:09.886-08:00'
    id: '7976913826166357434'
    kind: compute#interconnectAttachment
    labelFingerprint: 42WmSpB8rSM=
    name: attach-central-a
    pairingKey: 7e51371e-72a3-40b5-b844-2e3efefaee59/us-central1/1
    region: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1
    router: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1/routers/router-central-a
    selfLink: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1/interconnectAttachments/attach-central-a
    state: PENDING_PARTNER
    type: PARTNER
    
  2. 各 VLAN アタッチメントの pairingKey の値を記録します。

サービス プロバイダへの接続リクエスト

サービス プロバイダに連絡し、4 つの接続(VLAN アタッチメントごとに 1 つ)をリクエストします。サービス プロバイダでは、各アタッチメントのペアリングキー、容量、ロケーションが必要になります。

1 つの GCP リージョン内のアタッチメントは、単一のロケーション(都市)に接続する必要があります。この例では、attach-central-aattach-central-b が Dallas に接続されています。一方、attach-east-aattach-east-b は Ashburn に接続されています。

構成の完了後、アタッチメントを有効にできることを示すメール通知が届きます。

VLAN アタッチメントの有効化

サービス プロバイダが VLAN アタッチメントを構成した後、トラフィックを通過させるためには、それらの VLAN アタッチメントを有効にする必要があります。アタッチメントを事前に有効にしている場合は、このセクションはスキップしてください。

Console

  1. Google Cloud Console で [VLAN アタッチメント] タブに移動します。
    [VLAN アタッチメント] タブに移動
  2. VLAN アタッチメント attach-central-a を選択し、詳細ページを表示します。
  3. アタッチメントのステータスが Waiting for service provider の場合は、サービス プロバイダが VLAN の構成を完了するまで待機します。
  4. [相互接続] の情報を参照して、指定されているサービス プロバイダが VLAN アタッチメントを構成したことを確認します。
  5. [有効化] をクリックして有効にします。
  6. [VLAN アタッチメント] ページに戻り、他のアタッチメントを有効にします。

gcloud

  1. 次の例に示すように、各 VLAN アタッチメントに対して describe コマンドを実行し、サービス プロバイダがそれらの構成を完了したかどうかを確認します。

    gcloud compute interconnects attachments describe attach-central-a \
      --region us-central1 \
      --format '(name,state,partnerMetadata)'
    
    gcloud compute interconnects attachments describe attach-central-b \
      --region us-central1 \
      --format '(name,state,partnerMetadata)'
    
    gcloud compute interconnects attachments describe attach-east-a \
      --region us-east4 \
      --format '(name,state,partnerMetadata)'
    
     gcloud compute interconnects attachments describe attach-east-b \
      --region us-east4 \
      --format '(name,state,partnerMetadata)'
    

    サービス プロバイダが VLAN アタッチメントを構成した後、アタッチメントの状態は PENDING_PARTNER から PENDING_CUSTOMER に変わります。状態がまだ PENDING_PARTNER の場合は、サービス プロバイダが VLAN の構成を完了するまで待機します。

  2. partnerMetadata フィールドを確認して、正しいサービス プロバイダが VLAN アタッチメントを構成したことを確認します。

    予期せぬ第三者により VLAN アタッチメントが構成されている場合は、アタッチメントを削除して、新しいアタッチメントを作成します。これにより、新しいペアリングキーが生成されます。新しいペアリングキーを使用して、サービス プロバイダとの新しい接続をリクエストします。

  3. VLAN アタッチメントが正しいサービス プロバイダによって構成されている場合は、次の例に示すように、--admin-enabled フラグを使用して有効にします。

    gcloud compute interconnects attachments partner update attach-central-a \
    --region us-central1 \
    --admin-enabled
    
    gcloud compute interconnects attachments partner update attach-central-b \
    --region us-central1 \
    --admin-enabled
    
    gcloud compute interconnects attachments partner update attach-east-a \
    --region us-east4 \
    --admin-enabled
    
    gcloud compute interconnects attachments partner update attach-east-b \
    --region us-east4 \
    --admin-enabled
    

ルーターの構成

Google が自動的に各 Cloud Router に BGP ピアを追加します。レイヤ 2 接続の場合は、お客様がオンプレミス ASN を各 BGP ピアに追加する必要があります。レイヤ 3 接続の場合、お客様は何もする必要はありません。Google が自動的にサービス プロバイダの ASN を使用して Cloud Router を構成します。

Console

  1. Google Cloud Console で [VLAN アタッチメント] タブに移動します。
    [VLAN アタッチメント] タブに移動
  2. VLAN アタッチメント attach-central-a を選択し、詳細ページを表示します。
  3. [BGP を構成する] をクリックして、この VLAN アタッチメントに関連付けられている Cloud Router を構成します。
  4. [ピア ASN] フィールドに、オンプレミス ルーターの ASN を追加します。
  5. [保存して次へ] をクリックします。
  6. [VLAN アタッチメント] ページに戻り、オンプレミス ASN を他の Cloud Router に追加します。

gcloud

  1. attach-central-a VLAN アタッチメントに関連付けられている Cloud Router に対して describe コマンドを実行します。出力の中から、VLAN アタッチメントに関連付けられている、自動的に作成された BGP ピアの名前を見つけます。BGP ピアの ipAddresspeerIpAddress の値は、アタッチメントの cloudRouterIpAddresscustomerRouterIpAddress の値に一致している必要があります。

      gcloud compute routers describe router-central-a \
        --region us-central1
    
    bgp:
      advertiseMode: DEFAULT
      asn: 16550
    bgpPeers:
    — interfaceName: auto-ia-if-attachment-central-a-c2c53a710bd6c2e
      ipAddress: 169.254.67.201
      managementType: MANAGED_BY_ATTACHMENT
      name: auto-ia-bgp-attachment-central-a-c2c53a710bd6c2e
      peerIpAddress: 169.254.67.202
    creationTimestamp: '2018-01-25T07:14:43.068-08:00'
    description: 'test'
    id: '4370996577373014668'
    interfaces:
    — ipRange: 169.254.67.201/29
      linkedInterconnectAttachment: https://www.googleapis.com/compute/alpha/projects/customer-project/regions/us-central1/interconnectAttachments/customer-attachment1-partner
      managementType: MANAGED_BY_ATTACHMENT
      name: auto-ia-if-attachment-central-a-c2c53a710bd6c2e
    kind: compute#router
    name: partner
    network: https://www.googleapis.com/compute/v1/projects/customer-project/global/networks/vpc1
    region: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1
    selfLink: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1/routers/router-central-a
    
  2. オンプレミス ルーターの ASN を指定して BGP ピアを更新します。

      gcloud compute routers update-bgp-peer router-central-a \
        --peer-name auto-ia-bgp-attachment-central-a-c2c53a710bd6c2e \
        --peer-asn [ON-PREM ASN] \
        --region us-central1
    

BGP セッションが確立された後に、サービス プロバイダのネットワークを通じて、VPC とオンプレミス ネットワークの間で通信を行うことができます。

次のステップ

  • これらの各ステップの詳細については、関連する Partner Interconnect の入門ガイドをご覧ください。