image.png

3.5.1 使用标签分类工作节点

标签可以附加到任何 Kubernetes 对象上.

为了演示在 node 上添加标签, 先看看有哪些 node:

  1. $ kubectl get nodes
  2. NAME STATUS ROLES AGE VERSION
  3. minikube Ready control-plane,master 44h v1.20.2

为 node 添加标签:

  1. $ kubectl label node minikube gpu=true
  2. node/minikube labeled

通过标签过滤 node:

  1. $ kubectl get nodes -l gpu=true
  2. NAME STATUS ROLES AGE VERSION
  3. minikube Ready control-plane,master 44h v1.20.2

3.5.2 将 pod 调度到特定节点

  1. apiVersion: v1
  2. kind: Pod
  3. metadata:
  4. name: hello-pod-gpu
  5. spec:
  6. nodeSelector:
  7. gpu: "true"
  8. containers:
  9. - image: jdxj/study_kubernetes:v0.1.0
  10. name: test-study-k8s
  11. ports:
  12. - containerPort: 8080
  13. protocol: TCP

3.5.3 调度到一个特定节点

  • 键为: kubernetes.io/hostname