为专用互连建立 99.99% 可用性配置

使用专用互连时,以下配置可实现 99.99% 可用性。对于生产级应用,如对停机时间容忍度低的关键任务型操作,Google 建议采用该配置。

要实现 99.99% 可用性,需要以下资源和设置:

  • 四个互连,其中两个互连在一个都市圈(城市),两个互连在另一个都市圈。同一都市圈中的互连必须位于不同的都市可用性地区。
  • 四个 Cloud Router,每个 GCP 区域两个。即使您的虚拟机实例都在一个区域内,您也必须使用两个区域。如果发生区域范围问题,则 GCP 可通过另一个区域将流量重新路由到您的虚拟机实例。而且,每个 Cloud Router 必须连接到不同互连(四个不同 VLAN 连接)。
  • VPC 网络的动态路由模式必须是全局。通过全局动态路由,Cloud Router 可以通告所有子网,并将学到的路由传播至所有子网(无论子网的区域如何)。
  • 根据您的可用性要求,您的本地网络中可以有两个路由器,每个路由器连接到其中一个 GCP 区域。

以下示例拓扑显示了位于两个不同都市圈、每个都市圈两个可用性地区的四个互连:lga-zone1-16lga-zone2-1422iad-zone1-1iad-zone2-1。云端路由器(每个互连一个)位于 us-central1us-east1 区域的 vpc1 网络中。每个路由器都有自己的 BGP 会话。

可实现 99.99% 可用性的冗余互连图(点击可放大)
可实现 99.99% 可用性的冗余互连(点击可放大)

首选路径

通过全局动态路由,云端路由器向 VPC 网络中的所有子网通告路由。云端路由器向远程子网(云端路由器区域以外的子网)通告路由所采用的优先级,低于向本地子网(位于云端路由器区域的子网)通告的优先级。

在示例拓扑中,VPC 网络的入站流量优先经过 us-central1,因为这些路由的优先级高于 us-east1 区域中的路由。只有当 us-east1 中的连接失败时,流量才会遍历 us-central1

您可以在配置云端路由器的 BGP 会话时更改路由优先级。BGP 会话提供一个选项,供您选择通告路由优先级(一个 MED 值)。值越小,优先级越高。例如,您可为 us-east1 中的 BGP 会话配置较高优先级,使该区域成为首选路径。

过程

以下部分介绍创建前述拓扑的步骤。要量身定制自己的拓扑,请将示例输入值替换成您的资源的相应值。例如,将 vpc1 网络名称替换成您的 VPC 网络名称。

更改 VPC 网络的动态路由模式

对于 vpc1 网络,将动态路由模式更改为全局。

Console

  1. 转到 Google Cloud Platform Console 中的“VPC 网络”页面。
    转到“VPC 网络”页面
  2. 选择 vpc1 网络。
  3. 点击修改以修改其动态路由模式。
  4. 动态路由模式部分中,选择全局
  5. 点击保存

gcloud

gcloud compute networks update vpc1\
    --bgp-routing-mode global

订购互连

您可以使用 Google Cloud Platform Console 或 gcloud 命令行工具来订购重复的互连。

Console

  1. 转到 Google Cloud Platform Console 中的 Cloud Interconnect“物理连接”标签。
    转到“物理连接”标签
  2. 选择设置连接
  3. 选择专用互连,然后选择继续
  4. 选择订购新的专用互连,然后选择继续
  5. 指定互连的详细信息,然后选择下一步
    • 名称 - 指定 int-lga1
    • 说明 - 指定 Example interconnect in LGA ZONE1
    • 位置 - 选择 Digital Realty | Telx New York (111 8th Ave) 作为位置,这是 lga-zone1-16 位置的 PeeringDB 名称。
    • 容量 - 使用默认容量 (10 Gbps)。
  6. 指定副本互连的详细信息,然后选择下一步
    • 名称 - 指定 int-lga2
    • 说明 - 指定 Example interconnect in LGA ZONE2 以表示该互连用于本示例拓扑。
    • 位置 - 选择 zColo New York - 60 Hudson St 作为位置,这是 lga-zone2-1422 位置的 PeeringDB 名称。
    • 容量 - 使用默认容量 (10 Gbps)。
  7. 指定您的联系信息。
    • 公司名称 - 此示例使用值 The Customer 作为公司名称。此名称将在 LOA-CFA 中用作有权请求交叉连接的一方。
    • 技术联系人 - 此示例使用值 customer@customer.com 作为技术联系人。您不需要输入自己的地址;所有通知都会发送给您。
  8. 查看您的订单。检查您的互连详细信息和联系信息是否正确。如果所有信息均正确,选择下订单。如果信息有误,请返回并修改互连详细信息。
  9. 在订单确认页面上,查看后续步骤,然后选择完成
  10. 在位置 Equinix Ashbun (DC1-DC11) 再订购两个互连(int-iad1int-iad2),这是 iad-zone1-1iad-zone2-1 位置的 PeeringDB 名称。由于阿什本提供商有两个地区,因此 Console 会自动为冗余互连选择同一提供商,但会选择不同地区。

gcloud

  1. 订购四个名为 int-lga1int-lga2int-iad1int-iad2 的互连。

    gcloud compute interconnects create int-lga1 \
    --customer-name "The Customer" \
    --description "Example interconnect in LGA ZONE1" \
    --interconnect-type DEDICATED \
    --link-type ETHERNET_10G_LR \
    --location lga-zone1-16 \
    --requested-link-count 1 \
    --noc-contact-email customer@customer.com
    gcloud compute interconnects create int-lga2 \
    --customer-name "The Customer" \
    --description "Example interconnect in LGA ZONE2" \
    --interconnect-type DEDICATED \
    --link-type ETHERNET_10G_LR \
    --location lga-zone2-1422 \
    --requested-link-count 1 \
    --noc-contact-email customer@customer.com
    gcloud compute interconnects create int-iad1 \
    --customer-name "The Customer" \
    --description "Example interconnect in IAD ZONE1" \
    --interconnect-type DEDICATED \
    --link-type ETHERNET_10G_LR \
    --location iad-zone1-1 \
    --requested-link-count 1 \
    --noc-contact-email customer@customer.com
    gcloud compute interconnects create int-iad2 \
    --customer-name "The Customer" \
    --description "Example interconnect in IAD ZONE2" \
    --interconnect-type DEDICATED \
    --link-type ETHERNET_10G_LR \
    --location iad-zone2-1 \
    --requested-link-count 1 \
    --noc-contact-email customer@customer.com

订购互连后,Google 会通过电子邮件向您发送确认,并为您分配端口。分配完成后,Google 会针对您的交叉连接生成 LOA-CFA,并将其通过电子邮件发送给您。所有自动发送的电子邮件将发送给 NOC 联系人和订购此互连的人员。

只有在配置并测试了交叉连接后,您才可以使用互连。如需详细了解配置过程,请参阅配置概览

创建云端路由器

创建四个云端路由器,每个互连一个。

Console

  1. 转到 Google Cloud Platform Console 中用于创建云端路由器的页面。
    转到路由器页面
  2. 指定 Cloud Router 详细信息。
    • 名称 - 指定 rtr-cent1 作为第一个 Cloud Router 的名称。
    • VPC 网络 - 指定 vpc1,这是本地网络扩展到的目标网络的名称。
    • 区域 - 指定 us-central1,这是配置了 Cloud Router 的区域,如示例拓扑所示。
    • Google ASN - 指定 64513,这是示例 Cloud Router 的 ASN。
  3. 复制第一个 Cloud Router,但将名称更改为 rtr-cent2
  4. us-east1 区域额外创建两个具有相同属性的 Cloud Router,名称分别为 rtr-east1rtr-east2

gcloud

  1. us-central1 区域的 vpc1 网络中创建两个 Cloud Router。为这两个 Cloud Router 使用 ASN 64513

     gcloud compute routers create rtr-cent1 
    --asn 64513
    --network vpc1
    --region us-central1

     gcloud compute routers create rtr-cent2 
    --asn 64513
    --network vpc1
    --region us-central1

  2. us-east1 区域的 vpc1 网络中创建两个 Cloud Router。为这两个 Cloud Router 使用 ASN 64513

     gcloud compute routers create rtr-east1 
    --asn 64513
    --network vpc1
    --region us-east1

     gcloud compute routers create rtr-east2 
    --asn 64513
    --network vpc1
    --region us-east1

创建 VLAN 连接

互连准备就绪可供使用(处于 ACTIVE 状态)后,创建 VLAN 连接,以便将互连与云端路由器相连。创建四个连接,每个互连-云端路由器配对一个。连接如以下列表所述:

  • rtr-cent1 连接到 int-lga1
  • rtr-cent2 连接到 int-lga2
  • rtr-east1 连接到 int-iad1
  • rtr-east2 连接到 int-iad2

Console

  1. 转到 Google Cloud Platform Console 中的 Cloud Interconnect“VLAN 连接”标签。
    转到“VLAN 连接”标签
  2. 选择添加 VLAN 连接
  3. 选择专用互连以创建专用 VLAN 连接,然后选择继续
  4. 选择在此项目中,为您项目中的专用互连创建连接。
  5. 选择 int-lga1 互连,然后选择继续
  6. 选择添加 VLAN 连接以将新 VLAN 连接到互连。
    • 名称 - 指定 attachment-lga1-central1 作为连接名称。
    • 路由器 - 选择 rtr-cent1 Cloud Router。
  7. 选择创建。创建连接需要一点时间。
  8. 对于连接,选择配置以将 BGP 会话添加到 rtr-cent1。Google 和对等 BGP IP 地址已通过 VLAN 连接填充。
  9. 记录每个连接的 IP 地址、ASN 和 VLAN 标记。配置本地路由器需要此信息。
  10. 选择保存配置以添加 BGP 会话。在您在本地路由器上配置 BGP 之前,BGP 会话处于非活动状态。
  11. 为另外三个互连/Cloud Router 配对再创建三个连接。记录每个连接的信息。

gcloud

  1. 创建四个连接。

    gcloud compute interconnects attachments create attachment-lga1-central1 \
      --interconnect int-lga1 \
      --router rtr-cent1 \
      --region us-central1
    gcloud compute interconnects attachments create attachment-lga2-central1 \
      --interconnect int-lga2 \
      --router rtr-cent1 \
      --region us-central1
    gcloud compute interconnects attachments create attachment-iad1-east1 \
      --interconnect int-iad1 \
      --router rtr-east1 \
      --region us-east1
    gcloud compute interconnects attachments create attachment-iad2-east2 \
      --interconnect int-iad2 \
      --router rtr-east2 \
      --region us-east1
  2. 描述 attachment-lga1-central1 连接以检索它分配的资源,如 VLAN ID 和 BGP 对等地址。使用这些值配置 Cloud Router 和本地路由器。

    gcloud compute interconnects attachments describe attachment-lga1-central1 \
      --region us-central1

    以上命令输出以下信息:

    cloudRouterIpAddress: 169.254.58.49/29
    creationTimestamp: '2017-08-15T08:34:11.137-07:00'
    customerRouterIpAddress: 169.254.58.50/29
    id: '5630382895290821276'
    interconnect:
    https://www.googleapis.com/compute/v1/projects/customer-project/global/interconnects/int-lga1
    kind: compute#interconnectAttachment
    name: attachment-lga1-central1
    operationalStatus: ACTIVE
    privateInterconnectInfo:
      tag8021q: 1000
    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/router1
    selfLink: https://www.googleapis.com/compute/v1/projects/customer-project/regions/us-central1/interconnectAttachments/attachment-lga1-central1
      
  3. 记录以下值:

    • tag8021q - 指定 VLAN ID,即 1000。VLAN ID 可识别将经过此连接的流量。使用此值配置本地路由器上已标记的 VLAN 子接口。
    • cloudRouterIpAddress - Cloud Router IP 地址,即 169.254.58.49/29。将此地址分配给 Cloud Router 接口,并将此地址指定为本地路由器上的 BGP 邻居。
    • customerRouterIpAddress - 客户路由器 IP 地址,即 169.254.180.82/29。在 Cloud Router 上,将此地址指定为已为其分配 Cloud Router IP 地址的接口上的 BGP 对等地址。将此地址分配给本地路由器上的 VLAN 子接口。
  4. rtr-cent1 Cloud Router 上,为 attachment-lga1-central1 连接添加接口。

    gcloud compute routers add-interface rtr-cent1 \
      --interface-name rtr-cent1-1 \
      --interconnect-attachment attachment-lga1-central1 \
      --ip-address 169.254.58.49 \
      --mask-length 29 \
      --region us-central1
  5. 向该接口添加一个对等 BGP。对于本示例,本地 ASN 是 12345

    gcloud compute routers add-bgp-peer rtr-cent1 \
      --interface rtr-cent1-1 \
      --peer-name central1 \
      --peer-ip-address 169.254.58.50 \
      --peer-asn 12345 \
      --advertised-route-priority 100 \
      --region us-central1
  6. 描述其他连接,然后按照类似方法在每个 Cloud Router 上配置新的 BGP 会话。

配置本地路由器

使用 VLAN 连接提供的信息来配置本地路由器。以下示例摘自某 Juniper 路由器配置。您可参照该示例来配置您自己的路由器。如需了解详情,请参阅配置本地路由器

interface ae20 {
  flexible-vlan-tagging;
  native-vlan-id 1;
  aggregated-ether-options {
    lacp {
      active;
     }
   }
  unit 1001 {
    vlan-id 1001;
    family inet {
      address 169.254.58.50/29;
    }
  }
}

protocols bgp {
  group google {
    type external;
    multihop {
      ttl 4;
    }
    hold-time 60;
    peer-as 64513;
    local-as 12345;
    local-address 169.254.58.50;
    neighbor 169.254.59.49 {
      ...
    }
  }
}

后续步骤

  • 如需详细了解每个步骤,请参阅相关的专用互连方法指南
  • 如需有关常见问题排查的帮助,请参阅问题排查指南。
此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Interconnect