容器服务 Service 跨 VPC 绑定

使用公网 CLB 型 Service 时,默认是在当前集群所在 VPC 内的随机可用区生成 CLB,目前 TKE 的公网 CLB Service 已支持指定可用区,包括其他地域的可用区。这里说明如何通过控制台和 YAML 两种方式为 CLB Service 跨 VPC 绑定和指定可用区。

相关产品
容器服务 产品页,含版本规格、价格与购买入口。

一、应用场景

·需要支持 CLB 的跨地域接入或跨 VPC 接入,即 CLB 所在的 VPC 和当前集群所在的 VPC 不在同一 VPC 内。

·需要指定 CLB 的可用区以实现资源的统一管理。

注意:说明:

注意:1. 跨 VPC 绑定仅支持“带宽上移账户”。若你无法确定账户类型,请参见 判断账户类型。

注意:2. 如需使用非本集群所在 VPC 的 CLB,需先通过 云联网 打通当前集群 VPC 和 CLB 所在的 VPC。

注意:2.1 云联网需要提前规划各个地域 VPC 的网段,不能出现冲突。否则冲突的路由规则将不会生效,导致数据面无法转发。

注意:2.2 集群所在 VPC 不能同时加入多个云联网中,否则会出现路由不唯一的情况,导致数据面无法转发。

注意:3. 在确保 VPC 已经打通之后,请 在线咨询 申请使用该功能。

注意:4. 以下 YAML 中,需要你输入地域 ID,你可以通过 地域和可用区 查看地域 ID。

二、操作步骤

公网 CLB Service 跨 VPC 绑定和指定可用区支持通过控制台和 YAML 两种方式进行操作,操作步骤如下:

控制台方式YAML 方式

三、创建 Service

1. 登录 容器服务控制台,选择左侧导航栏中的集群。

2. 在集群管理页面单击目标集群 ID,进入集群基本信息页面。

3. 选择左侧导航中的服务与路由,在 Service 页面单击新建。

4. 在新建服务与路由页面中,找到访问设置(Service),配置相关可用区规则。配置规则说明如下:

·服务访问方式:选择“公网 LB 访问”。

·VPC:选择“其他 VPC”。

注意:仅支持通过 云联网 将当前集群的 VPC 打通的其它 VPC。

5. 其他参数按照 Service 创建时的配置即可。

四、更新 Service

你可以通过 容器服务控制台 > 集群 ID > 服务与路由,在 Service 页面,点击目标 Service 右侧的编辑 Annotation,为 Service 添加相关注解,以实现跨 VPC 绑定。

完整 Service Annotation 说明请参见 Service Annotation 说明 文档。

注意:说明:

注意:1. 如需使用非本集群所在 VPC 的 CLB,需先通过 云联网 打通当前集群 VPC 和 CLB 所在的 VPC。

注意:2. 在确保 VPC 已经打通之后,请 在线咨询 申请使用该功能。

你可以通过编辑 YAML 文件的方式,为 Service 添加相关注解,以实现跨 VPC 绑定。

五、示例1

如果仅需指定本集群所在 VPC 的可用区,例如集群的 VPC 在广州地域,CLB Service 需要指定广州一区的 CLB,可以在 Service 的 YAML 中添加如下 annotation:

service.kubernetes.io/service.extensiveParameters: '{"ZoneId":"ap-guangzhou-1"}'

六、示例2

如需使用非本集群所在 VPC 内的 CLB,可以在 Service 的 YAML 中添加如下 annotation:

service.cloud.tencent.com/cross-region-id: "ap-guangzhou" service.cloud.tencent.com/cross-vpc-id: "vpc-646vhcjj"

注意:如果你还需要指定可用区,需要再添加示例1中的 annotation。

七、示例3

选择已有负载均衡进行异地接入,示例如下:

service.cloud.tencent.com/cross-region-id: "ap-guangzhou" service.kubernetes.io/tke-existed-lbid: "lb-342wppll"

八、示例4

annotation 在 Service YAML 中的写法如下所示:

# 创建异地接入的负载均衡apiVersion: v1kind: Servicemetadata: annotations: service.cloud.tencent.com/cross-region-id: "ap-chongqing" service.cloud.tencent.com/cross-vpc-id: "vpc-mjekzyps" name: echo-server-service namespace: defaultspec: …… — # 用户复用其他地域负载均衡的场景apiVersion: v1kind: Servicemetadata: annotations: service.cloud.tencent.com/cross-region-id: "ap-chongqing" service.kubernetes.io/tke-existed-lbid: "lb-o8ugf2wb" name: echo-server-service namespace: defaultspec: …… 

完整 Service Annotation 说明请参见 Service Annotation 说明 文档。

赞 (0)
上一篇 4天前
下一篇 4天前