Elastifile-Backup basierend auf Snapshot Shifting
Überblick
Das Elastifile Cloud File System verfügt über einen intern integrierten Snapshot-Planungs- und Kühlungsmechanismus, der konsistente Snapshots vom Primärspeicher zum GCS im proprietären ECFS-Format verschiebt.
Das proprietäre Format behält die Dateistruktur sowie alle Dateiattribute bei. Die Daten werden während der Übertragung komprimiert und der Kühlmechanismus ist deduplizierungsfähig, sodass nur eindeutige Daten über die Leitung an das GCS gesendet werden.
Wie bei anderen Backup-Lösungen ist das erste Backup ein Voll-Backup und die folgenden Backups sind inkrementell.
Lösungsmöglichkeiten und -beschränkungen
- Die Backup-Lösung dient der Datensicherung, sie sichert nicht das Dateisystem und den Cluster, die Wiederherstellung von einem Backup erfordert eine erneute Bereitstellung und Validierung des Dateisystems.
- Es wird empfohlen, pro DC einen Snapshot pro Tag zu verwenden, um Leistungseinbußen durch den Scanvorgang und das Löschen des Snapshots zu vermeiden.
- Nicht mehr als 30 Namespaces (Datencontainer) pro ECFS-Cluster, aktiviert mit Snapshot-Kühlungsplaner.
- Die oben genannten Einschränkungen werden vom System nicht erzwungen. Kunden wird daher empfohlen, diese zu beachten.
- Bis zu 100 Snapshots pro Datencontainer können im GCS gespeichert werden.
- Die DR-Wiederherstellung eines vollständigen Snapshots aus GCS ist ein manueller externer Vorgang. Der Vorgang muss mit elastifile-support@google.com durchgeführt werden. Weitere Informationen finden Sie in diesem KB-Artikel .
Umfang
Elastifile bietet die Möglichkeit, Snapshot-Planer auf Datencontainerebene als Sicherungsmechanismus zu definieren.
Wenn ein Kunde einen Planer auf mehreren Domänencontrollern definiert, kann dies zu einer Flut von Snapshot-Löschungen gleichzeitig führen, was ein schwerer Vorgang ist, der sich auf die Systemleistung auswirken kann.
In diesem Artikel wird das Verfahren zum Implementieren von Snapshot-Planern über die CLI beschrieben, was zusätzliche Funktionen mit sich bringt, die in der GUI nicht aktiviert sind.
Wichtig ist die Festlegung der Startzeit , die dabei hilft, die beschriebenen Herausforderungen zu meistern.
Mithilfe des Startzeit-Flags können Offsets definiert werden, um Konflikte beim Löschen von Snapshots zu vermeiden.
Voraussetzungen
1. Stellen Sie sicher, dass „Privater Google-Zugriff" im VPC-Subnetzwerk aktiviert ist
Lesen Sie den folgenden Artikel zum Überprüfen und Ändern der Einstellung für den privaten Google-Zugriff
2. Die Objektebene ist verfügbar
Falls die Objektebenenfunktion nicht verfügbar ist, wenden Sie sich bitte an elastifile-support@google.com
Elastifile wird die Anfrage prüfen. Im Falle einer Genehmigung wird eine entsprechende Lizenz bereitgestellt.
3. DATA ILM ist deaktiviert
Data ILM ist eine Funktion zum Verschieben von Live-Cold-Daten in GCS-Buckets, nicht nur Snapshots.
Diese Funktion wird derzeit nicht unterstützt und muss deaktiviert werden.
Um die Funktion auf allen vorhandenen DCs einfach zu deaktivieren:
for i in $(elfs-cli data_container list | awk '{print $1}' | grep -o '^[0-9]*$'); do elfs-cli data_container update --id $i --data_ilm data_ilm_disabled --automatic_data_ilm auto_data_ilm_disabled; done
Für jeden neuen Datencontainer führen Sie bitte auch Folgendes aus:
elfs-cli data_container update --id <NEW_DC_ID> --data_ilm data_ilm_disabled --automatic_data_ilm auto_data_ilm_disabled
4. Objektebene aktivieren
Muss nach erfolgreichem Abschluss von Schritt 2 konfiguriert werden
5. Legen Sie die Daten-Tiering-Richtlinie auf 100 % primär fest
Konfigurationshandbuch
- Listen Sie die Datencontainer im System und ihre IDs auf
[root@schedule ~(elfs_admin)]# elfs-cli data_container list | awk '{print$1, $2}'
id name
------------
1 dc01
2 dc02
3 dc03
4 dc04
2. Erstellen Sie die relevanten Zeitplanrichtlinien pro DC
[root@schedule ~(elfs_admin)]# elfs-cli Schedule create --name dc01 --data-container-ids 1
id: 1
name: dc01
state: enabled
data_containers:
id: 1 name: dc01
[root@schedule ~(elfs_admin)]# elfs-cli schedule create --name dc02 --data-container-ids 2
id: 2
name: dc02
state: enabled
data_containers:
id: 2 name: dc02
3. Definieren Sie die Aufgabenrichtlinie für jeden Planer (verwenden Sie einen Abstand von 1 Stunde zwischen den Zeitplänen).
- Die ID stellt die in Schritt 1 erstellte Zeitplan-ID dar
- Die Werte für „Wiederholen" und „Löschen nach" werden in Minuten angegeben
- Die Startzeit wird in UTC-Zeit definiert
id: 1
name: dc01
schedule_id: 1
type: SnapshotIlmTask
start_time: 2020-04-24T20:00:00.000Z
repeat_after: 1440
cool_after: 10080
delete_after: 14400
created_at: Apr 11, 15:37:58
updated_at: Apr 11, 15:37:58
[root@schedule ~(elfs_admin)]# elfs-cli Schedule create_task --id 2 --name dc02 --type SnapshotIlmTask --repeat-after 10080 --cool_after 14400 --delete-after 43200 --start-time 2020- 04-27T23:00:00
id: 2
name: dc02
schedule_id: 2
type: SnapshotIlmTask
start
time: 2020-04-24T23:00:00.000Z
repeat_after: 10080
cool_after: 14400
delete_after: 43200
created_at: Apr 11, 15:44:06
updated_at: Apr 11, 15:44:06
Verwalten Sie ECFS-Snapshots
DC01 verfügt über 4 Snapshots – 2 werden lokal (in der SSD-Ebene) und 2 in der Objektebene platziert.
Die ECFS-Snapshots sind über den Zugriff auf versteckte Verzeichnisse erreichbar, je nachdem, wo sie sich befinden:
[root@client ~]# mkdir /mnt/DC01
[root@client ~]# mount 10.229.255.1:DC01/root /mnt/DC01
[root@client ~]#
[root@client ~]# df -h /mnt/DC01
Filesystem Size Used Avail Use% Mounted on
10.229.255.1:DC01/root 1000G 0 1000G 0% /mnt/DC01
[root@client ~]#
[root@client ~]# cd /mnt/DC01
[root@client DC01]# ll .snapshot
total 0
drwxr-xr-x. 2 root root 0 Apr 26 11:00 local01
drwxr-xr-x. 2 root root 0 Apr 26 11:00 local02
[root@client DC01]#
[root@client DC01]# ll .object
total 0
drwxr-xr-x. 2 root root 0 Apr 26 11:00 object01
drwxr-xr-x. 2 root root 0 Apr 26 11:00 object02
So stellen Sie eine Datei/ein Verzeichnis aus einem Snapshot wieder her
Für ein vollständiges manuelles DR-Wiederherstellungsverfahren wenden Sie sich bitte an elastifile-support@google.com
So verhindern Sie das Löschen eines Snapshots
In einigen Fällen möchten Sie möglicherweise verhindern, dass die vorhandenen Snapshots im System als Teil des Zeitplaners gelöscht werden, z. B. wenn wichtige Snapshots zu einem bestimmten Zeitpunkt vorhanden sind oder bei Leistungsproblemen eine große Anzahl an Snapshots vorhanden ist Löschung gleichzeitig.
1. Listen Sie die Snapshots im System auf:
elfs-cli snapshot list
2. Wählen Sie den relevanten Snapshot aus und konfigurieren Sie ihn anhand seiner ID:
elfs-cli snapshot update --id 2 --no-deletion_schedule_mins
No comments:
Post a Comment