apiVersion: apps/v1 kind: Deployment metadata: name: prometheus namespace: monitoring spec: strategy: type: Recreate selector: matchLabels: app: prometheus template: metadata: labels: app: prometheus annotations: prometheus.io/scrape: "true" prometheus.io/port: prometheus spec: serviceAccountName: prometheus containers: - image: prom/prometheus:latest imagePullPolicy: Always args: [ "--storage.tsdb.path", "/opt/prometheus/data", "--config.file", "/etc/prometheus/prometheus.yaml", "--web.external-url", "https://prometheus.pydis.wtf", "--web.enable-lifecycle", "--web.enable-admin-api", "--web.page-title", "Python Discord Prometheus", "--storage.tsdb.retention.size", "28GB", "--storage.tsdb.retention.time", "100d" ] name: prometheus ports: - name: prometheus containerPort: 9090 securityContext: readOnlyRootFilesystem: true volumeMounts: - name: prometheus-data mountPath: /opt/prometheus/data - name: prometheus-config mountPath: /etc/prometheus - name: prometheus-alerts mountPath: /opt/pydis/prometheus/alerts.d - image: ghcr.io/owl-corp/inotify-base:latest imagePullPolicy: Always name: prometheus-reloader securityContext: readOnlyRootFilesystem: true volumeMounts: - name: prometheus-config mountPath: /opt/monitor/prom-config - name: prometheus-alerts mountPath: /opt/monitor/prom-alerts - name: reloader-hook mountPath: /opt/pydis - name: reloader-tmpfs mountPath: /tmp env: - name: INOTIFY_HOOK_SCRIPT value: /opt/pydis/hook.sh # When a ConfigMap volume updates we see a delete event for the old # container timestamp - name: INOTIFY_WATCH_EVENTS value: delete - name: INOTIFY_HOOK_DELAY value: "5" envFrom: - secretRef: name: prometheus-reloader-env restartPolicy: Always securityContext: fsGroup: 2000 runAsUser: 1000 runAsNonRoot: true volumes: - name: prometheus-data persistentVolumeClaim: claimName: prometheus-storage - name: prometheus-config configMap: name: prometheus-config - name: prometheus-alerts configMap: name: prometheus-alert-rules - name: reloader-hook configMap: name: prometheus-reloader-script defaultMode: 0777 - name: reloader-tmpfs emptyDir: medium: Memory sizeLimit: 50Mi