apiVersion: apps/v1 kind: Deployment metadata: name: {{.Name}} labels: group: {{.Group}} spec: replicas: {{.Replicas}} selector: matchLabels: name: {{.Name}} template: metadata: labels: name: {{.Name}} group: {{.Group}} spec: containers: - image: k8s.gcr.io/pause:3.1 name: {{.Name}} ports: resources: requests: cpu: {{.CpuRequest}} memory: {{.MemoryRequest}} affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: NodeType operator: In values: - hollow-nodes # Add not-ready/unreachable tolerations for 15 minutes so that node # failure doesn't trigger pod deletion. tolerations: - key: "node.kubernetes.io/not-ready" operator: "Exists" effect: "NoExecute" tolerationSeconds: 900 - key: "node.kubernetes.io/unreachable" operator: "Exists" effect: "NoExecute" tolerationSeconds: 900 - key: "provider" value: "kubemark" operator: "Equal" effect: "NoSchedule"