# Source: prometheus/charts/kube-state-metrics/templates/deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: name: prometheus-kube-state-metrics namespace: monitoring labels: helm.sh/chart: kube-state-metrics-5.28.1 app.kubernetes.io/managed-by: Helm app.kubernetes.io/component: metrics app.kubernetes.io/part-of: kube-state-metrics app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/instance: prometheus app.kubernetes.io/version: "2.14.0" spec: selector: matchLabels: app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/instance: prometheus replicas: 1 strategy: type: RollingUpdate revisionHistoryLimit: 10 template: metadata: labels: helm.sh/chart: kube-state-metrics-5.28.1 app.kubernetes.io/managed-by: Helm app.kubernetes.io/component: metrics app.kubernetes.io/part-of: kube-state-metrics app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/instance: prometheus app.kubernetes.io/version: "2.14.0" spec: nodeSelector: nodegroup: prometheus automountServiceAccountToken: true hostNetwork: false serviceAccountName: prometheus-kube-state-metrics securityContext: fsGroup: 65534 runAsGroup: 65534 runAsNonRoot: true runAsUser: 65534 seccompProfile: type: RuntimeDefault containers: - name: kube-state-metrics args: - --port=8080 - --resources=certificatesigningrequests,configmaps,cronjobs,daemonsets,deployments,endpoints,horizontalpodautoscalers,ingresses,jobs,leases,limitranges,mutatingwebhookconfigurations,namespaces,networkpolicies,nodes,persistentvolumeclaims,persistentvolumes,poddisruptionbudgets,pods,replicasets,replicationcontrollers,resourcequotas,secrets,services,statefulsets,storageclasses,validatingwebhookconfigurations,volumeattachments - --metric-labels-allowlist=pods=[workload-name],nodes=[nodegroup],namespaces=[project-name] imagePullPolicy: Always image: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.14.0 ports: - containerPort: 8080 name: "http" livenessProbe: failureThreshold: 3 httpGet: httpHeaders: path: /livez port: 8080 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 readinessProbe: failureThreshold: 3 httpGet: httpHeaders: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 resources: requests: cpu: 50m memory: 125Mi limits: cpu: 100m memory: 250Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true --- # Source: prometheus/charts/prometheus-pushgateway/templates/deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: labels: helm.sh/chart: prometheus-pushgateway-2.17.0 app.kubernetes.io/name: prometheus-pushgateway app.kubernetes.io/instance: prometheus app.kubernetes.io/version: "v1.11.0" app.kubernetes.io/managed-by: Helm name: prometheus-prometheus-pushgateway namespace: monitoring spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app.kubernetes.io/name: prometheus-pushgateway app.kubernetes.io/instance: prometheus template: metadata: labels: helm.sh/chart: prometheus-pushgateway-2.17.0 app.kubernetes.io/name: prometheus-pushgateway app.kubernetes.io/instance: prometheus app.kubernetes.io/version: "v1.11.0" app.kubernetes.io/managed-by: Helm spec: nodeSelector: nodegroup: prometheus serviceAccountName: prometheus-prometheus-pushgateway automountServiceAccountToken: true containers: - name: pushgateway image: "quay.io/prometheus/pushgateway:v1.11.0" imagePullPolicy: Always ports: - name: metrics containerPort: 9091 protocol: TCP livenessProbe: httpGet: path: /-/healthy port: 9091 initialDelaySeconds: 10 timeoutSeconds: 10 readinessProbe: httpGet: path: /-/ready port: 9091 initialDelaySeconds: 10 timeoutSeconds: 10 volumeMounts: - name: storage-volume mountPath: "/data" subPath: "" resources: requests: cpu: 100m memory: 256Mi limits: cpu: 200m memory: 512Mi securityContext: fsGroup: 65534 runAsNonRoot: true runAsUser: 65534 volumes: - name: storage-volume emptyDir: {} --- # Source: prometheus/templates/deploy.yaml apiVersion: apps/v1 kind: Deployment metadata: labels: app.kubernetes.io/component: server app.kubernetes.io/name: prometheus app.kubernetes.io/instance: prometheus app.kubernetes.io/version: v3.1.0 helm.sh/chart: prometheus-27.3.1 app.kubernetes.io/part-of: prometheus name: prometheus-server namespace: monitoring spec: selector: matchLabels: app.kubernetes.io/component: server app.kubernetes.io/name: prometheus app.kubernetes.io/instance: prometheus replicas: 1 revisionHistoryLimit: 10 strategy: type: Recreate rollingUpdate: null template: metadata: labels: app.kubernetes.io/component: server app.kubernetes.io/name: prometheus app.kubernetes.io/instance: prometheus app.kubernetes.io/version: v3.1.0 helm.sh/chart: prometheus-27.3.1 app.kubernetes.io/part-of: prometheus spec: nodeSelector: nodegroup: prometheus enableServiceLinks: true serviceAccountName: prometheus-server containers: - name: prometheus-server-configmap-reload image: "quay.io/prometheus-operator/prometheus-config-reloader:v0.79.2" imagePullPolicy: "Always" args: - --watched-dir=/etc/config - --listen-address=0.0.0.0:8080 - --reload-url=http://127.0.0.1:9090/-/reload ports: - containerPort: 8080 name: metrics livenessProbe: httpGet: path: /healthz port: metrics scheme: HTTP initialDelaySeconds: 2 periodSeconds: 10 readinessProbe: httpGet: path: /healthz port: metrics scheme: HTTP periodSeconds: 10 volumeMounts: - name: config-volume mountPath: /etc/config readOnly: true - name: prometheus-server image: "quay.io/prometheus/prometheus:v3.1.0" imagePullPolicy: "Always" args: - --storage.tsdb.retention.time=180d - --config.file=/etc/config/prometheus.yml - --storage.tsdb.path=/data - --web.console.libraries=/etc/prometheus/console_libraries - --web.console.templates=/etc/prometheus/consoles - --web.enable-lifecycle ports: - containerPort: 9090 readinessProbe: httpGet: path: /-/ready port: 9090 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 5 timeoutSeconds: 4 failureThreshold: 3 successThreshold: 1 livenessProbe: httpGet: path: /-/healthy port: 9090 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 15 timeoutSeconds: 10 failureThreshold: 3 successThreshold: 1 volumeMounts: - name: config-volume mountPath: /etc/config - name: storage-volume mountPath: /data subPath: "" resources: requests: cpu: 2100m memory: 12Gi limits: cpu: 2100m memory: 16Gi dnsPolicy: ClusterFirst securityContext: fsGroup: 65534 runAsGroup: 65534 runAsNonRoot: true runAsUser: 65534 terminationGracePeriodSeconds: 300 volumes: - name: config-volume configMap: name: prometheus-server - name: storage-volume persistentVolumeClaim: claimName: prometheus-server