User Tools

Site Tools


kubernetes:backup

Velero - Backups

In jedem Cluster ist bereits Velero installiert. Velero ist ein Tool um Backups in einem Kubernetes-Cluster zu erstellen (mehr Infos zu Velero unter https://velero.io/docs/main/index.html).

Mit Velero können Backups von allen Komponenten im Cluster erstellt werden, dazu gehören auch die Daten auf einem Persistent-Volume.
Mit der aktuellen Konfiguration werden Backups auf einem im eigenen Hause laufenden S3-Server hochgeladen.
Bei Interesse schicken wir Ihnen gerne die Zugangsdaten zu Ihrem S3-Bucket, wo die Clusterbackups gespeichert werden.

Auf allen next layer Clustern ist per default ein Schedule erstellt, der jede Stunde ein Backup von allen Komponenten im Cluster auf ein S3 erstellt.

Bei dem Schedule sind die Persistent-Volumes nicht inkludiert, wobei man einzelne Persistent-Volumes zum Backup hinzufügen kann.

Velero Schedule erstellen

Wie schon oben erwähnt, haben wir in allen Clustern ein Schedule installiert, der wie folgt aussieht:

velero schedule create nl-default \–schedule “@every 1h” \–ttl 168h0m0s \–default-volumes-to-fs-backup=false \-n nl-velero

Somit wird pro Stunde ein Backup erstellt und für 168 Stunden (7 Tage) am S3-Server gespeichert.

Sie können diesen Schedule löschen und Ihren eigenen Schedule erstellen, hier mehr Infos dazu: https://velero.io/docs/main/index.html

Velero Persistent-Volume Backup

Um die Daten auf einem Persistent-Volume ins stündliche Backup hinzuzufügen, muss der Pod, der das PVC verwendet, mit einer Annotation versehen werden.

Die Annotation sieht folgendermaßen aus:
backup.velero.io/backup-volumes=[VOLUME_NAME_IM_POD]

Beispiel: backup.velero.io/backup-volumes=nfs-data

So kann die Annotation zu einem Pod hinzugefügt werden (temporär):
kubectl annotate pod my-service-pod-6db9795d95-j2sxp backup.velero.io/backup-volumes=nfs-data

Wenn die Annotation persistiert sein soll, muss diese im Deployment (Workload) hinzufügt werden, damit diese auch nach dem Restart vom Pod noch verfügbar ist.

Warnung: die Option --snapshot-volumes ist in unserer Infrastruktur nicht unterstützt.

Verrechnung

Durch Velero gesicherte Volumes werden monatlich abgerechnet. Die Verrechnung erfolgt dabei in GB-Schritten, je angefangenen 100 Gigabyte (stündlich gemessen).