apiVersion: apps/v1 kind: Deployment metadata: name: prometheus namespace: monitoring spec: replicas: 1 selector: matchLabels: name: prometheus phase: prod template: metadata: labels: name: prometheus phase: prod spec: nodeSelector: node-role.kubernetes.io/master: "" tolerations: - key: node-role.kubernetes.io/master operator: Exists effect: NoSchedule serviceAccountName: prometheus containers: - name: prometheus image: quay.io/prometheus/prometheus:v2.2.1 args: - '--config.file=/etc/prometheus/prometheus.yaml' ports: - name: web containerPort: 9090 volumeMounts: - name: config mountPath: /etc/prometheus - name: rules mountPath: /etc/prometheus/rules - name: data mountPath: /var/lib/prometheus dnsPolicy: ClusterFirst restartPolicy: Always terminationGracePeriodSeconds: 30 volumes: - name: config configMap: name: prometheus-config - name: rules configMap: name: prometheus-rules - name: data emptyDir: {}