Label (标签)

可以用来组织pod,也可以组织其他Kubenetes资源。标签是可以附加到资源的任意键值对,用以选择具有该标签的资源

  1. apiVersion: v1
  2. kind: Pod
  3. metadata:
  4. name: kubia-manual-v2
  5. labels:
  6. creation_method: manual # 该pod拥有两个标签
  7. env: prod
  8. spec:
  9. containers:
  10. - image: luksa/kubia
  11. name: kubia
  12. ports:
  13. - containerPort: 8080
  14. protocol: TCP
  • 给node打上标签并且将pod调度到该node
    1. $ kubectl label node xxx-node gpu=true
    kubia-gpu.yaml
    1. apiVersion: v1
    2. kind: Pod
    3. metadata:
    4. name: kubia-gpu
    5. spec:
    6. nodeSelector:
    7. gpu: "true" # 只将pod部署到包含标签 gpu=true的节点上
    8. containers:
    9. - image: luksa/kubia
    10. name: kubia

    注解pod

    注解也是键值对,注解不能对对象进行分组。注解可以为每个pod或其他API对象添加说明。
    注解的内容总共不超过256KB
    kubectl annotate pod kubia-manual mycompany.com/someannotation="foo bar"