apiVersion: apps/v1 kind: DaemonSet metadata: name: icecream-daemonset spec: selector: matchLabels: app: icecream template: metadata: labels: app: icecream spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/arch operator: In values: - amd64 containers: - name: icecream image: qdii/icecream env: - name: SCHEDULER_HOST value: "icecream-scheduler.default.svc" volumeMounts: - name: data mountPath: "/var/cache/icecream" ports: - containerPort: 10245 protocol: TCP name: icecream-port volumes: - name: data emptyDir: sizeLimit: 10Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: icecream-scheduler spec: replicas: 1 selector: matchLabels: app: icecream-scheduler template: metadata: labels: app: icecream-scheduler spec: containers: - name: icecream-scheduler image: qdii/icecream-scheduler ports: - containerPort: 8765 name: scheduler protocol: TCP - containerPort: 8766 name: telnet protocol: TCP --- apiVersion: v1 kind: Service metadata: name: icecream-scheduler spec: selector: app: icecream-scheduler ports: - name: scheduler port: 8765 targetPort: scheduler protocol: TCP - name: telnet port: 8766 targetPort: telnet protocol: TCP