首页/云/Kubernetes 速查/Sidecar 容器与原生 sidecar

Sidecar 容器与原生 sidecar

辅助容器与主容器同 Pod 协作(日志收集、代理、守护);较新版本支持 init 容器配 restartPolicy: Always 实现启动顺序可控的原生 sidecar。

Kubernetes 速查云更新于 2026-10-12

经典 sidecar(普通容器)

经典 sidecar(普通容器)
containers:
  - name: app
    image: registry.example.com/app:1.26.0
  - name: log-shipper
    image: registry.example.com/fluent-bit:2.2
    volumeMounts:
      - name: logs
        mountPath: /var/log/app

原生 sidecar 写法

原生 sidecar 写法
initContainers:
  - name: proxy
    image: registry.example.com/envoy:v1.29
    restartPolicy: Always      # init 容器设为总是重启 = 原生 sidecar
  containers:
    - name: app
      image: registry.example.com/app:1.26.0
原生 sidecar 随主容器一起生命周期管理、可先于主容器启动并最后退出,解决了经典 sidecar 的顺序与退出问题。

易错点

  • 经典 sidecar 的退出顺序无保证:Job 场景可能因 sidecar 常驻导致任务永不完成
  • 旧版本集群不支持 init 容器 restartPolicy: Always 字段,使用前确认集群版本

数据来源与参考

  • Kubernetes 官方文档 · Sidecar Containers
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌