首页/云/云与容器速查/K8s 清单结构(apiVersion/kind/metadata/spec)
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条容器与 Docker106 条
Kubernetes68 条
容器排障33 条

K8s 清单结构(apiVersion/kind/metadata/spec)

所有 K8s 资源清单都是同一骨架:apiVersion+kind 定位资源类型,metadata 描述对象身份,spec 是期望状态;status 由控制器回填,写清单时永远不碰。

云与容器速查云更新于 2026-10-12
apiVersionAPI 组与版本,如 apps/v1、networking.k8s.io/v1、v1
kind资源类型:Deployment/Service/ConfigMap…
metadataname/namespace/labels/annotations;集群内唯一
spec期望状态:副本数、模板、端口、规则……
status实际状态:只读,由控制器维护,别写进清单

最小清单骨架

最小清单骨架
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web
  namespace: dev
  labels:
    app: web
spec:
  replicas: 2
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
        - name: web
          image: nginx:1.27-alpine
资源写法不确定时用 kubectl explain <kind>.<字段路径> 查当前集群的真实 schema,比搜旧文章可靠。

易错点

  • 把 status 段落拷进新清单:apply 时被忽略或报错,纯噪音
  • namespace 写错或没写:资源进了 default,找起来费半天

数据来源与参考

  • Kubernetes Docs:Objects In Kubernetes
  • Kubernetes Docs:API Conventions

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌