文档首页/ 云容器引擎 CCE/ 最佳实践/ 容器/ 在CCE Turbo集群中配置Pod延时启动参数
更新时间:2024-05-10 GMT+08:00

在CCE Turbo集群中配置Pod延时启动参数

应用场景

CCE Turbo集群在某些特定场景下(例如跨VPC、专线互联),会出现对端Pod的路由规则生效慢的情况。在这种情况下,可以利用Pod延时启动的能力进行规避。

您也可以使用企业路由器连接对端VPC来解决该问题,详情请参见集群通过企业路由器连接对端VPC

约束与限制

仅以下指定版本的CCE Turbo集群支持配置Pod延时启动参数:

  • v1.19集群:v1.19.16-r40及以上版本
  • v1.21集群:v1.21.11-r0及以上版本
  • v1.23集群:v1.23.9-r0及以上版本
  • v1.25集群:v1.25.4-r0及以上版本

通过kubectl命令行设置

您可以通过对工作负载添加annotations来设置是否开启Pod延时启动功能,如下所示。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 10
  selector:
    matchLabels:
      app: nginx
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: nginx
      annotations:
        cni.yangtse.io/readiness-delay-seconds: "20"
    spec:
      containers:
        - name: container-0
          image: nginx:alpine
          resources:
            limits:
              cpu: 100m
              memory: 200Mi
            requests:
              cpu: 100m
              memory: 200Mi
      imagePullSecrets:
        - name: default-secret

该示例为一个需要配置访问跨VPC虚机IP的Deployment,该Deployment的副本数最大为10且滚动升级最大浪涌为25%,即升级过程中可能的最大Pod数为13。在该工作负载注解中,指定了Pod延时启动时间为20s,在该时间内保证Pod正常启动后,跨VPC网络可正常访问。

表1 Pod延迟启动annotation配置

注解

默认值

参数说明

取值范围

cni.yangtse.io/readiness-delay-seconds

Pod健康检查延时等待的时间。

0-60