I have 6 nodes,all of them have labels "group:emp",4 of them have labels "iKind:spot",2 of them have labels "ikind:normal".
I use the deployment yaml to assign one pod to the normal node and others on the spot node, but it didn't work.
I start to increase the num of the pod from 1 to 6,but when it comes to 2,all the pod are assigned on th spot node
kind: Deployment
apiVersion: apps/v1
metadata:
name: pod-test
namespace: emp
labels:
app: pod-test
spec:
replicas: 2
selector:
matchLabels:
app: pod-test
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
template:
metadata:
labels:
app: pod-test
spec:
containers:
- name: pod-test
image: k8s.gcr.io/busybox
args: ["sh","-c","sleep 60000"]
imagePullPolicy: Always
resources:
requests:
cpu: 10m
memory: 100Mi
limits:
cpu: 100m
memory: 200Mi
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: group
operator: In
values:
- emp
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 70
preference:
matchExpressions:
- key: ikind
operator: In
values:
- spot
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: app
operator: In
values:
- pod-test
topologyKey: ikind
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- pod-test
topologyKey: "kubernetes.io/hostname"
restartPolicy: Always
terminationGracePeriodSeconds: 10
dnsPolicy: ClusterFirst
schedulerName: default-scheduler
```