cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

release.yaml (3027B)


      1 apiVersion: helm.toolkit.fluxcd.io/v2
      2 kind: HelmRelease
      3 metadata:
      4   name: velero
      5   namespace: velero
      6 spec:
      7   interval: 30m
      8   chart:
      9     spec:
     10       chart: velero
     11       version: "12.0.0"
     12       sourceRef:
     13         kind: HelmRepository
     14         name: vmware-tanzu
     15         namespace: velero
     16       interval: 24h
     17   install:
     18     crds: CreateReplace
     19     remediation:
     20       retries: 3
     21   upgrade:
     22     crds: CreateReplace
     23     remediation:
     24       retries: 3
     25   values:
     26     # Kopia node agent DaemonSet — required for file-system backup of hcloud-volumes
     27     # (hcloud CSI driver does not support VolumeSnapshots)
     28     deployNodeAgent: true
     29 
     30     nodeAgent:
     31       resources:
     32         requests:
     33           cpu: 100m
     34           memory: 256Mi
     35         limits:
     36           cpu: "2"
     37           memory: 2Gi
     38 
     39     metrics:
     40       enabled: true
     41       serviceMonitor:
     42         enabled: true
     43         additionalLabels:
     44           release: prometheus-stack
     45 
     46     configuration:
     47       # EnableCSI: built-in since v1.14, enables CSI snapshots for Longhorn volumes
     48       features: EnableCSI
     49       # Raise API client limits — default 20 QPS / 30 burst causes context deadline exceeded
     50       # when listing node-agent pods across many pods concurrently during backup.
     51       clientQPS: 100
     52       clientBurst: 200
     53       # Increase timeout to avoid "exposed PVB is not ready" errors on slow volumes
     54       podVolumeOperationTimeout: 60m
     55       # Increase CSI snapshot timeout — Longhorn queues snapshot creation behind its
     56       # concurrent task limit (5), so with many volumes the default 10m is too short.
     57       csiSnapshotTimeout: 30m
     58       backupStorageLocation:
     59         - name: default
     60           provider: aws
     61           bucket: mtrnord-talos-velero
     62           config:
     63             s3Url: https://hel1.your-objectstorage.com
     64             region: hel1
     65             s3ForcePathStyle: "true"
     66       volumeSnapshotLocation:
     67         - name: default
     68           provider: aws
     69           config:
     70             region: hel1
     71       # Kopia repository maintenance job configuration.
     72       # Without resource limits, 30+ concurrent maintenance jobs fill the node's
     73       # ephemeral storage, causing DiskPressure → Velero pod eviction → backup failure.
     74       repositoryMaintenanceJob:
     75         repositoryConfigData:
     76           global:
     77             keepLatestMaintenanceJobs: 1
     78             podResources:
     79               cpuRequest: "100m"
     80               cpuLimit: "500m"
     81               memoryRequest: "128Mi"
     82               memoryLimit: "1Gi"
     83               # Limit ephemeral storage to prevent DiskPressure on nodes
     84               # (30+ concurrent maintenance jobs can fill node's local storage)
     85               ephemeralStorageRequest: "200Mi"
     86               ephemeralStorageLimit: "2Gi"
     87 
     88     credentials:
     89       useSecret: true
     90       existingSecret: velero-s3-credentials
     91 
     92     initContainers:
     93       - name: velero-plugin-for-aws
     94         image: velero/velero-plugin-for-aws:v1.14.0
     95         imagePullPolicy: IfNotPresent
     96         volumeMounts:
     97           - mountPath: /target
     98             name: plugins