Snapshots mit CephFS

471 Wörter 3 Minuten Lesezeit

CephFS inkludiert ein Snapshot-Modul, welches einfach funktioniert und auch tolle Features wie konfigurierbare Datenhaltung (“retention”) und zeitbasierte Ausführung (“scheduling”) mitbringt.

snap_schedule Modul

Ggf. muss das snap_schedule Modul aktiviert werden.

ceph mgr module ls | jq -r '.enabled_modules []' | grep snap_schedule

ceph mgr module enable snap_schedule

Scheduling

Alle 3 Stunden einen Snapshot vom CephFS Root Verzeichnis (/) erstellen.

ceph fs snap-schedule add / 3h

ceph fs snap-schedule activate /

Data Retention

24 stündliche, 7 tägliche, 8 wöchentliche und 6 monatliche Snapshots vom CephFS Root behalten.

ceph fs snap-schedule retention add / h 24
ceph fs snap-schedule retention add / d 7
ceph fs snap-schedule retention add / w 8
ceph fs snap-schedule retention add / m 6

Das .snap Verzeichnis

Es ist zwar kein .snap Verzeichnis sichtbar, wir können aber trotzdem hineinwechseln und die Snapshots ansehen.

mplx at linux in /mnt/cephstorage
$ ls -lai
total 3817472
            1 drwxr-xr-x 3 root     root          2 2023-04-17 15:59 .
          461 drwxr-xr-x 1 root     root         18 2022-12-21 10:34 ..
1099511628284 -rw-r--r-- 1 root     root 3909091328 2022-12-17 13:28 debian-11.6.0-amd64-DVD-1.iso
1099511628295 drwxr-xr-x 3 mplx     root          4 2023-04-17 18:01 demo

mplx at linux in /mnt/cephstorage
$ cd .snap

mplx at linux in /mnt/cephstorage/mplx/.snap
$ ls -lai
total 0
1099511628295 drwxr-xr-x 2 mplx root 18 2023-04-17 18:01 .
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 ..
1099511628295 drwxr-xr-x 2 mplx root 11 2023-04-17 16:00 2023-04-17T16:26:34.017+02:00
1099511628295 drwxr-xr-x 3 mplx root  7 2023-04-17 16:37 scheduled-2023-04-17-15_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  6 2023-04-17 17:34 scheduled-2023-04-17-16_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-17_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-18_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-19_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-20_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-21_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-22_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-17-23_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-00_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-01_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-02_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-03_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-04_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-05_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-06_00_00_UTC
1099511628295 drwxr-xr-x 3 mplx root  4 2023-04-17 18:01 scheduled-2023-04-18-07_00_00_UTC

Ein Snapshot der mit einem Underscore (_) beginnt wird übrigens vom übergeordneten Verzeichnis verwaltet.

Snapshot händisch anlegen…

Um einen Snapshot manuell anzulegen, muss man nur ein Verzeichnis im .snap Ordner anlegen, das ist alles.

cd /mnt/cephstorage/mplx/.snap

sudo mkdir superwichtig
rm ../debian-11.6.0-amd64-DVD-1.iso

mplx at linux in /mnt/cephstorage/mplx/.snap
$ ls -lai superwichtig
total 3817472
            1 drwxr-xr-x 3 root     root          2 2023-04-17 15:59 .
            1 drwxr-xr-x 2 root     root          1 2023-04-17 15:59 ..
1099511628284 -rw-r--r-- 1 root     root 3909091328 2022-12-17 13:28 debian-11.6.0-amd64-DVD-1.iso
1099511628295 drwxr-xr-x 3 mplx     root          4 2023-04-17 18:01 demo

cp superwichtig/debian-11.6.0-amd64-DVD-1.iso  ../