CKA – 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: 80
Pod案例
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
nodeSelector:
disktype: ssd
containers:
- name: my-container
image: nginx
ports:
- containerPort: 80
2. 为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评论