首页/云/Kubernetes 速查/kubectl kustomize 与 -k 使用
本包目录(307 条)
kubectl 基础56 条
工作负载36 条网络与服务55 条配置与存储54 条调度与资源52 条集群运维与排障54 条

kubectl kustomize 与 -k 使用

Kustomize 内置在 kubectl:用 base + overlay 结构复用清单,通过 patch 与 namePrefix 等生成器管理多环境差异,无需模板语法。

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

目录结构

目录结构
k8s/
  base/
    kustomization.yaml
    deployment.yaml
    service.yaml
  overlays/
    prod/
      kustomization.yaml
      replicas-patch.yaml

kustomization 与命令

kustomization 与命令
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
  - ../base
patches:
  - path: replicas-patch.yaml
namePrefix: prod-
images:
  - name: app
    newTag: "1.26.0"

命令

命令
kubectl kustomize ./k8s/overlays/prod > rendered.yaml
kubectl apply -k ./k8s/overlays/prod
kubectl diff -k ./k8s/overlays/prod
先 kustomize 渲染出完整 YAML 审查再 apply,是安全习惯;渲染结果也可归档供审计。

易错点

  • kubectl 内置的 kustomize 版本随 kubectl 发布,不同开发机渲染结果可能不一致,CI 固定 kubectl 版本
  • patch 目标字段路径写错会静默不生效(或按策略报错),渲染后 grep 验证目标字段

数据来源与参考

  • Kubernetes 官方文档 · Kustomize(Declarative Management)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌