apiVersion: apps/v1 kind: Deployment metadata: name: flink-taskmanager spec: replicas: 1 selector: matchLabels: app: flink component: taskmanager template: metadata: labels: app: flink component: taskmanager spec: serviceAccountName: flink-service-account nodeSelector: 'eks.amazonaws.com/capacityType': 'SPOT' containers: - name: taskmanager image: <<ACCOUNT-ID>>.dkr.ecr.<<REGION>>.amazonaws.com/flink-demo:latest imagePullPolicy: Always resources: requests: cpu: 250m memory: "4096Mi" limits: cpu: 500m memory: "8192Mi" env: args: ["taskmanager"] ports: - containerPort: 6122 name: rpc - containerPort: 6125 name: query-state livenessProbe: tcpSocket: port: 6122 initialDelaySeconds: 30 periodSeconds: 60 volumeMounts: - name: flink-config-volume mountPath: /opt/flink/conf/ securityContext: runAsUser: 9999 # refers to user _flink_ from official flink image, change if necessary volumes: - name: flink-config-volume configMap: name: flink-config items: - key: flink-conf.yaml path: flink-conf.yaml - key: log4j-console.properties path: log4j-console.properties