文档首页/ 云容器实例 CCI/ 用户指南/ 通过CCE使用CCI/ 使用Sidecar工具容器/ 配置Kubernetes原生Sidecar(原生定义)
更新时间:2026-04-11 GMT+08:00
分享

配置Kubernetes原生Sidecar(原生定义)

应用场景

在CCE突发弹性引擎(对接 CCI)场景下,支持使用Kubernetes的原生SidecarContainers特性。与通过插件动态注入的方式不同,本章节介绍如何在创建工作负载的YAML中直接定义原生Sidecar。通过在Pod的initContainers中将容器的 restartPolicy设置为Always,该容器将作为Sidecar容器启动。这类容器在主业务容器启动前就绪,并会在Pod的整个生命周期内一直运行,不会阻塞主业务容器的启动。

约束与限制

  • 需确保调度到CCI 2.0Pod配置了对应的标签(如 bursting.cci.io/burst-to-cci: enforce)。
  • 该功能依赖CCE突发弹性引擎(对接 CCI)插件1.5.80及以上版本。

操作步骤

在创建Pod的YAML文件中,直接在spec.template.spec.initContainers字段下添加容器配置,并指定restartPolicy: Always,即可启用原生Sidecar功能。

apiVersion: apps/v1      
kind: Deployment         
metadata:
  name: test-1     
  namespace: test
  labels:
    bursting.cci.io/burst-to-cci: enforce # 将pod强制调度到 CCI 2.0
spec:
  replicas: 1            
  selector:             
    matchLabels:
      appName: test-1 
  template:              
    metadata:
      labels:
        appName: test-1 
    spec:
      # 配置Sidecar容器
      initContainers:
        - name: container2
          image: nginx:latest             # 请替换为您实际的镜像地址
          restartPolicy: Always           # 在initContainers中配置restartPolicy为Always则表示开启initSidecarContainer
      # 配置主业务容器
      containers:
      - image: nginx:latest
        name: container-1
        command:
          - /bin/sh
          - '-c'
          - while true ;do echo hello ;sleep 3;  done
        resources:
          requests:
            cpu: 10m
            memory: 200Mi
      imagePullSecrets:
      - name: default-secret
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 35%
      maxSurge: 35%

相关文档