CKA [Workoad] – Labels and Selectors的使用

命令行使用label

1. 创建nginx pod

kubectl run nginx --image=nginx:latest

2. 为已创建的nginx pod 添加label (多打几次可以多添加多个不同的label)

kubectl label pod nginx env=dev
kubectl label pod nginx test=true

3. 查看所有的pod, 并且显示列出label

kubectl get pods --show-labels

4. 去除不想要的label , 比如去除test label

kubectl label pod nginx test-

5. 测试完后就删完所有的pod

kubectl delete pods --all

使用filter 条件过滤想要的pod

以下的使用案例是列出所有的pod , 条件是 label env 不等于dev

kubectl get pods -l env!=dev --show-labels

使用命令行查询label的更多功能

kubectl label --help

Yaml文件当中可以添加更多tag

使用yaml来创建资源可以比较方便,也能在文档当中添加多个label

1. 使用命令行生成yaml

kubectl run nginx --image=nginx:latest --dry-run=client -o yaml

【使用以下命令输出在pod.yaml】
kubectl run nginx --image=nginx:latest --dry-run=client -o yaml > pod.yaml

2. 以下是在原本输出的yaml当中,添加了新的label,也就是env:dev

apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: nginx
    env: dev
  name: nginx
spec:
  containers:
  - image: nginx:latest
    name: nginx
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Always
status: {}

Loading

Facebook评论