feat: Add longhorn backup job

This commit is contained in:
2025-12-13 02:13:44 +01:00
parent 913b98333a
commit d24347a93c
7 changed files with 65 additions and 0 deletions

View File

@@ -14,3 +14,4 @@ resources:
- ../../configs/letsencrypt/letsencrypt.yaml - ../../configs/letsencrypt/letsencrypt.yaml
- ../../configs/certificates/certificates.yaml - ../../configs/certificates/certificates.yaml
- ../../configs/telegram-alerts/telegram-alerts.yaml - ../../configs/telegram-alerts/telegram-alerts.yaml
- ../../configs/longhorn-jobs/longhorn-jobs.yaml

View File

@@ -24,3 +24,8 @@ spec:
copy: copy:
- from: "@foundation/configs/telegram-alerts/**" - from: "@foundation/configs/telegram-alerts/**"
to: "@artifact/" to: "@artifact/"
- name: longhorn-jobs
originRevision: "@foundation"
copy:
- from: "@foundation/configs/longhorn-jobs/**"
to: "@artifact/"

View File

@@ -0,0 +1,6 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- recurring-job-backup.yaml
- recurring-job-snapshot.yaml
- recurring-job-trim.yaml

View File

@@ -0,0 +1,16 @@
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: longhorn-jobs
namespace: flux-system
spec:
interval: 1h
retryInterval: 2m
timeout: 5m
dependsOn:
- name: longhorn
sourceRef:
kind: ExternalArtifact
name: longhorn-jobs
prune: true
wait: true

View File

@@ -0,0 +1,14 @@
apiVersion: longhorn.io/v1beta2
kind: RecurringJob
metadata:
name: backup
namespace: longhorn-system
spec:
cron: "0 5 * * *"
task: "backup"
retain: 14
concurrency: 1
groups:
- default
parameters:
full-backup-interval: "7"

View File

@@ -0,0 +1,12 @@
apiVersion: longhorn.io/v1beta2
kind: RecurringJob
metadata:
name: snapshot
namespace: longhorn-system
spec:
cron: "0 */12 * * *"
task: "snapshot"
retain: 14
concurrency: 1
groups:
- default

View File

@@ -0,0 +1,11 @@
apiVersion: longhorn.io/v1beta2
kind: RecurringJob
metadata:
name: trim
namespace: longhorn-system
spec:
cron: "0 0 7 * *"
task: "filesystem-trim"
concurrency: 1
groups:
- default