pod节点反亲和性

定义两个pod,第一个pod作为基准,第二个pod跟它调度节点相反

[root@master01 yaml]# cat pod-required-anti-affinity-demo.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: pod-first
  labels:
    app1: myapp1
    tier: frontend
spec:
    containers:
    - name: myapp
      image: ikubernetes/myapp:v1
---
apiVersion: v1
kind: Pod
metadata:
  name: pod-second
  labels:
    app: backend
    tier: db
spec:
    containers:
    - name: busybox
      image: busybox:latest
      imagePullPolicy: IfNotPresent
      command: ["sh","-c","sleep 3600"]
    affinity:
      podAntiAffinity:
         requiredDuringSchedulingIgnoredDuringExecution:
         - labelSelector:
              matchExpressions:
              - {key: app1, operator: In, values: ["myapp1"]}
           topologyKey: kubernetes.io/hostname

创建一下

[root@master01 yaml]# kubectl apply -f pod-required-anti-affinity-demo.yaml 
pod/pod-ani unchanged
pod/pod-second created

查看刚创建的pod,会发现他们不会调度到同一节点

最后在附上张美图

发表评论

后才能评论