Files
kubernetes/restic-exporter/restic-exporter.yaml
Dustin C. Hatch 5079599423 restic-exporter: Deploy Restic Prometheus exporter
The [restic-exporter][0] exposes metrics about Restic snapshots as
Prometheus metrics.  This allows us to get similar data as we have for
BURP backups.  Chiefly important among the metrics are last backup time
and size, which we can use to determine if backups are working
correctly.

[0]: https://github.com/ngosang/restic-exporter
2024-06-26 18:29:49 -05:00

58 lines
1.5 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: restic-exporter
labels:
app.kubernetes.io/name: restic-exporter
app.kubernetes.io/component: restic-exporter
app.kubernetes.io/part-of: restic-exporter
spec:
selector:
matchLabels:
app.kubernetes.io/name: restic-exporter
app.kubernetes.io/component: restic-exporter
template:
metadata:
labels:
app.kubernetes.io/name: restic-exporter
app.kubernetes.io/component: restic-exporter
app.kubernetes.io/part-of: restic-exporter
spec:
containers:
- name: restic-exporter
image: git.pyrocufflink.net/containerimages/restic-exporter
ports:
- containerPort: 8001
name: metrics
envFrom:
- configMapRef:
name: restic-exporter
optional: true
env:
- name: RESTIC_PASSWORD_FILE
value: /run/secrets/restic/password
- name: XDG_CACHE_HOME
value: /var/cache
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /run/secrets/restic
name: secrets
- mountPath: /tmp
name: tmp
subPath: tmp
- mountPath: /var/cache
name: tmp
subPath: cache
securityContext:
fsGroup: 8001
runAsGroup: 8001
runAsNonRoot: true
runAsUser: 8001
volumes:
- name: secrets
secret:
secretName: restic-exporter
- name: tmp
emptyDir: {}