创建和管理路由器

本页面介绍了如何在 Distributed Cloud 区域中创建和管理 Google Distributed Cloud 路由器资源。

如需详细了解 Distributed Cloud 路由器,请参阅 Distributed Cloud 的运作方式

请注意以下几点:

  • 您可以为每个 Distributed Cloud 网络创建一个路由器。

  • 建议您同时创建路由器及其对应的互连连接。如需详细了解如何创建互连连接,请参阅创建互连连接

创建路由器

如需创建 Distributed Cloud 路由器,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers create 命令:

gcloud edge-cloud networking routers create ROUTER_NAME \
    --network=NETWORK_NAME \
    --location=REGION \
    --zone=ZONE_NAME \
    --asn=ASN

替换以下内容:

  • ROUTER_NAME:唯一标识相应路由器的描述性名称。
  • NETWORK_NAME:相应路由器所服务的网络的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • ASN:相应路由器的自治系统编号 (ASN)。您可以指定双字节值或四字节值。支持公共和专用 ASN 值。

API

projects.locations.zones.routers.create 方法发出 POST 请求:

POST /v1/projects/PROJECT_ID/locations/REGION/zones/ZONE_NAME/routers?routerId=ROUTER_ID
{
 "labels": { LABELS,
  },
 "network": { NETWORK_NAME,
  },
 "asn": { ASN,
  },      
}

替换以下内容:

  • PROJECT_ID:目标 Google Cloud 项目的 ID。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • ROUTER_ID:唯一标识相应路由器的 ID。
  • LABELS:要应用于相应路由器资源的标签列表。
  • NETWORK_NAME:相应路由器所服务的网络的名称。
  • ASN:相应路由器的自治系统编号 (ASN)。您可以指定双字节值或四字节值。支持公共和专用 ASN 值。

在路由器上建立 BGP 对等互连会话

路由器允许您建立以下类型的边界网关协议 (BGP) 对等互连会话:

通过向路由器添加接口来建立 BGP 对等互连会话,以用于与对等互连会话类型对应的分布式云网络组件。

建立北向对等互连会话

如需在具有互联附件的路由器上建立北向对等互联会话,请完成本部分中的步骤。目标互联附件必须与目标路由器相关联。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers add-interface 命令:

gcloud edge-cloud networking routers add-interface ROUTER_NAME \
    --interface-name=INTERFACE_NAME \
    --interconnect-attachment=ATTACHMENT_NAME \
    --ip-address=INTERCONNECT_ADDRESS \
    --ip-mask-length=IP_MASK_LENGTH \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • INTERFACE_NAME:此接口的描述性名称。
  • ATTACHMENT_NAME:目标路由器中的目标互联连接的名称。
  • INTERCONNECT_ADDRESS:配置了目标互联附件的互联的 IPv4 地址。
  • IP_MASK_LENGTH:指定互连 IP 地址的掩码长度。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

建立下行对等互连会话

如需在具有子网的路由器上建立南向对等互联会话,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers add-interface 命令:

gcloud edge-cloud networking routers add-interface ROUTER_NAME \
    --interface-name=INTERFACE_NAME \
    --subnet=SUBNETWORK_NAME \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • INTERFACE_NAME:此接口的描述性名称。
  • SUBNETWORK_NAME:目标子网的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

建立环回对等互连会话

如需在具有网络的路由器上建立环回对等互连会话,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers add-interface 命令:

gcloud edge-cloud networking routers add-interface ROUTER_NAME \
    --interface-name=INTERFACE_NAME \
    --loopback-ip-addresses=LOOPBACK_ADDRESSSES \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • INTERFACE_NAME:此接口的描述性名称。
  • LOOPBACK_ADDRESSES:环回接口的 IPv4 入站和出站地址,以英文逗号分隔。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

终止 BGP 对等互连会话

如需终止路由器与互连连接、子网或网络之间的 BGP 对等互连会话,您必须从目标路由器中删除相应网络组件的接口。如需删除接口,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers remove-interface 命令:

gcloud edge-cloud networking routers remove-interface ROUTER_NAME \
    --interface-name=INTERFACE_NAME \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • INTERFACE_NAME:此接口的描述性名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

在 BGP 对等互连会话中配置对等体

您可以在路由器与互连连接、子网或网络之间建立的 BGP 对等会话中添加和移除 BGP 对等体。当您向 BGP 对等互连会话添加对等端时,系统会自动在目标路由器上启用双向转发检测 (BFD),并设置 100 毫秒的时间间隔、100 毫秒的最小接收窗口和 3 的系数。

将对等方添加到目标 BGP 对等互联会话后,您便可以将对等方 IP 地址分配给运行工作负载的 Pod。如需查找对等 IP 地址,请完成获取有关路由器的信息中的步骤。

向 BGP 对等互连会话添加对等方

如需向 BGP 对等互连会话添加对等方,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers add-bgp-peer 命令:

gcloud edge-cloud networking routers add-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME> \
    --peer-asn=PEER_ASN \
    --peer-ipv4-range=PEER_IP_RANGE \
    --interface=INTERFACE_NAME \                                                       \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • PEER_NAME:相应对等互连的描述性名称。
  • PEER_ASN:相应对等体的自治系统编号 (ASN)。您可以指定双字节值或四字节值。支持公共和专用 ASN 值。
  • PEER_IP_RANGE:相应对等方的 IPv4 CIDR 范围。 此地址范围必须与关联的互连连接、子网或网络的 IP 地址或地址范围位于同一子网中。
  • INTERFACE_NAME:与目标 BGP 会话对应的接口的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

从 BGP 对等互连会话中移除对等方

如需从 BGP 对等互连会话中移除对等互连方,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers remove-bgp-peer 命令:

gcloud edge-cloud networking routers remove-bgp-peer ROUTER_NAME \
    --peer-name=PEER_NAME> \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • PEER_NAME:目标对等方的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

列出路由器

如需列出在分布式云区域内配置的路由器,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Viewer 角色 (roles/edgenetwork.viewer)。

gcloud

使用 gcloud edge-cloud networking routers list 命令:

gcloud edge-cloud networking routers list \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

API

projects.locations.zones.routers.list 方法发出 GET 请求:

 GET /v1/PROJECT_ID/locations/REGION/zones/ZONE_NAME/routers?filter=FILTER&pageSize=PAGE_SIZE&orderBy=SORT_BY&pageToken=PAGE_TOKEN

替换以下内容:

  • PROJECT_ID:目标 Google Cloud 项目的 ID。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • FILTER:将返回的结果限制为特定值的表达式。
  • PAGE_SIZE:每页要返回的结果数。
  • SORT_BY:用于对返回的结果进行排序的字段名称的英文逗号分隔列表。默认排序顺序为升序;如需降序排序,请在所需字段前加上 ~
  • PAGE_TOKEN:在响应的 nextPageToken 字段中,对上一个列表请求的响应中收到的令牌。发送此令牌可接收一页结果。

获取有关路由器的信息

如需获取有关分布式云路由器的信息,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Viewer 角色 (roles/edgenetwork.viewer)。

gcloud

使用 gcloud edge-cloud networking routers describe 命令:

gcloud edge-cloud networking routers describe ROUTER_NAME \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

API

projects.locations.zones.routers.get 方法发出 GET 请求:

GET /v1/projects/PROJECT_ID/locations/REGION/zones/ZONE_NAME/routers/ROUTER_ID

替换以下内容:

  • PROJECT_ID:目标 Google Cloud 项目的 ID。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • ROUTER_ID:目标路由器的 ID。

此操作会返回有关资源的详细信息,包括其预配状态:

  • PENDING:资源尚未开始预配,也尚未在整个可用区内传播。
  • PROVISIONING:资源正在预配;您必须等待资源传播到整个可用区。
  • RUNNING:资源已成功预配并传播到整个可用区;资源已可供使用。
  • FAILED:资源预配未成功;资源尚未在整个可用区中传播。

检查路由器的运行状态

如需检查分布式云路由器的运行状态,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Viewer 角色 (roles/edgenetwork.viewer)。

gcloud

使用 gcloud edge-cloud networking routers get-status 命令:

gcloud edge-cloud networking routers get-status ROUTER_NAME \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

API

projects.locations.zones.routers.diagnose 方法发出 GET 请求:

 GET /v1/projects/PROJECT_ID/locations/REGION/zones/ZONE_NAME/routers/ROUTER_ID:diagnose

替换以下内容:

  • PROJECT_ID:目标 Google Cloud 项目的 ID。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • ROUTER_ID:目标路由器的 ID。

删除路由器

如需删除 Distributed Cloud 路由器,请完成本部分中的步骤。

如需完成此任务,您必须在 Google Cloud 项目中拥有 Edge Network Admin 角色(roles/edgenetwork.admin)。

gcloud

使用 gcloud edge-cloud networking routers delete 命令:

gcloud edge-cloud networking routers delete ROUTER_NAME \
    --location=REGION \
    --zone=ZONE_NAME

替换以下内容:

  • ROUTER_NAME:目标路由器的名称。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。

API

projects.locations.zones.routers.delete 方法发出 DELETE 请求:

 DELETE /v1/projects/PROJECT_ID/locations/REGION/zones/ZONE_NAME/routers/ROUTER_ID

替换以下内容:

  • PROJECT_ID:目标 Google Cloud 项目的 ID。
  • REGION:目标 Distributed Cloud 可用区所属的 Google Cloud 区域。
  • ZONE_NAME:目标 Distributed Cloud 可用区的名称。
  • ROUTER_ID:目标路由器的 ID。

后续步骤