本页面介绍了如何在 Distributed Cloud 区域中创建和管理 Google Distributed Cloud 连接的路由器资源。
此功能仅适用于已连接 Distributed Cloud 的机架。 Distributed Cloud 连接的服务器不支持路由器资源。
如需详细了解 Distributed Cloud 路由器,请参阅 Distributed Cloud Connected 的工作原理。
请注意以下几点:
您可以为每个 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 connected 可用区所属的 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 Connected Zone 所属的 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:配置了目标互连附件的互连的 IP 地址。IP_MASK_LENGTH:指定互连 IP 地址的掩码长度。REGION:目标 Distributed Cloud connected 可用区所属的 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 connected 可用区所属的 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_ADDRESSES \
--location=REGION \
--zone=ZONE_NAME
替换以下内容:
ROUTER_NAME:目标路由器的名称。INTERFACE_NAME:此接口的描述性名称。LOOPBACK_ADDRESSES:环回接口的 IPv4 入站和出站地址,以英文逗号分隔。REGION:目标 Distributed Cloud connected 可用区所属的 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 connected 可用区所属的 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_IPv4_RANGE \
--peer-ipv6-range=PEER_IPv6_RANGE \
--interface=INTERFACE_NAME \ \
--location=REGION \
--zone=ZONE_NAME
替换以下内容:
ROUTER_NAME:目标路由器的名称。PEER_NAME:相应对等互连的描述性名称。PEER_ASN:相应对等体的自治系统编号 (ASN)。您可以指定双字节值或四字节值。支持公共和专用 ASN 值。PEER_IPv4_RANGE:相应对等方的 IPv4 CIDR 范围。 此地址范围必须与关联的互连连接、子网或网络的 IP 地址或地址范围位于同一子网中。PEER_IPv6_RANGE:相应对等方的 IPv6 CIDR 范围。此地址范围必须与关联的互连连接、子网或网络的 IP 地址或地址范围位于同一子网中。INTERFACE_NAME:与目标 BGP 会话对应的接口的名称。REGION:目标 Distributed Cloud connected 可用区所属的 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 Connected Zone 所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 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 connected 可用区所属的 Google Cloud 区域。ZONE_NAME:目标 Distributed Cloud 已连接区域的名称。ROUTER_ID:目标路由器的 ID。