CKA [Workoad] – Node Selector的使用
什么是Node Selector?
Node Selector是让你的pod可以决定在哪个worker node上运行
为什么需要使用Node Selector?
1. 可以决定你的pod运行在那个worker node,因为有可能你的worker node的size并不是每个都一样,有可能你想在比较大台的worker node运行比较多pod

2. 出于合规性、性能和隔离目的而隔离工作负载
使用案例
1. 可以在pod或deployment当中添加nodeSelector
Deployment案例
apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      nodeSelector:
        disktype: ssd
      containers:
      - name: my-container
        image: nginx
        ports:
        - containerPort: 80Pod案例
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  nodeSelector:
    disktype: ssd
  containers:
  - name: my-container
    image: nginx
    ports:
    - containerPort: 802. 为node添加label
【查看你所有的worker node】
kubectl get nodes
【为node添加label】
kubectl label nodes [你的node名] disktype=ssd
【查看node详情】
kubectl describe nodes [你的node名]
【从node list查看label】
kubectl get nodes --show-labels

3. 如果标签都设对的话, 就会有以下的结果
kubectl get pods -o wide
4. 如果标签设错的话, 就会有以下的结果
kubectl get pods -o wide
kubectl describe pods my-pod

 ![]()
		Facebook评论