Sicherungen – Übersicht

Auf dieser Seite erfahren Sie, was eine Sicherung ist, wie sie funktioniert, welche gängigen Anwendungsfälle es gibt und welche Best Practices beim Erstellen und Verwenden von Sicherungen hilfreich sind. Informationen zum Erstellen und Verwalten von Sicherungen sowie zum Wiederherstellen einer Filestore-Instanz aus einer Sicherung finden Sie unter Daten für die Notfallwiederherstellung sichern.

Was ist eine Sicherung?

Eine Filestore-Sicherung ist eine Kopie einer Dateifreigabe, die alle Dateidaten und Metadaten der Dateifreigabe ab dem Zeitpunkt der Sicherung enthält.

Nachdem Sie eine Sicherung einer Dateifreigabe erstellt haben, können Sie die ursprüngliche Dateifreigabe ändern oder löschen, ohne dass sich dies auf die Sicherung auswirkt.

Sie können eine Sicherung verwenden, um eine Dateifreigabe in einer neuen Filestore-Instanz oder bei Instanzen der Basisstufe in der Quelle oder in einer vorhandenen Dateifreigabe wiederherzustellen.

Sicherungen sind regionale Ressourcen, die in der Region verbleiben, die Sie beim Erstellen angeben. Sie können Sicherungen in derselben Region wie die Filestore-Instanz oder in einer anderen Region erstellen, um das Risiko von Datenverlusten zu verringern.

Sicherungen sind global adressierbar und können zum Wiederherstellen von Dateifreigaben in einer beliebigen Region verwendet werden. Sie können jedoch nicht projektübergreifend geteilt werden.

Sicherung erstellen

Die erste Sicherung, die Sie erstellen, ist eine vollständige Kopie aller Dateidaten und Metadaten in einer Dateifreigabe. Bei jeder nachfolgenden Sicherung werden alle seit der vorherigen Sicherung aufeinanderfolgenden Änderungen kopiert.

Eine Gruppe von Sicherungen, die mit derselben Instanz, Region und demselben CMEK (falls verwendet) verknüpft sind, wird als Sicherungskette bezeichnet.

Eine Sicherungskette befindet sich in einem einzelnen Cloud Storage-Bucket und einer einzelnen Region und kann sich außerhalb der Region befinden, die zum Speichern der Quellinstanz verwendet wird.

Alle Dienststufen unterstützen mehrere Sicherungsketten, sodass Sie die Sicherungen einer Instanz in mehreren Regionen speichern können.

Jedes Mal, wenn eine Sicherung erstellt wird, wird die vorherige Sicherung sowohl auf differenzielle als auch auf inkrementelle Änderungen gescannt:

  • Differenzielle Änderungen:Umfasst Änderungen an Dateien auf der Freigabe, z. B. das Bearbeiten, Hinzufügen oder Löschen von Dateien.

  • Inkrementelle Änderungen:Beinhaltet Änderungen am Speicher in dem Bucket, in dem sich die Sicherungsdaten befinden. Dies kann auch die Deduplizierung von Daten umfassen, auf die zuvor in der Kette verwiesen wurde.

Jedes Mal, wenn Sie eine Sicherung in derselben Sicherungskette speichern, wird die vorherige Sicherung auf differenzielle und inkrementelle Änderungen gescannt. In diesen Fällen ist keine vollständige Kopie erforderlich.

Wenn die Daten einer Instanz jedoch in mehreren Sicherungsketten gespeichert werden, bedeutet dies, dass Sie Sicherungen an abwechselnden Standorten speichern und dort speichern.

Jedes Mal, wenn Sie eine neue Sicherung an einem anderen Standort erstellen, wird eine vollständige Kopie der Sicherung generiert. Bei Sicherungsvorgängen vom Typ create ist beim Wechsel zwischen Sicherungsketten eine höhere Latenz zu erwarten.

Nicht geänderte Daten aus vorherigen Sicherungen werden referenziert, aber nicht in neuere Sicherungen kopiert. Wenn eine ältere Sicherung gelöscht wird, werden die sicherungsspezifischen Daten in die nächste Sicherung kopiert und alle internen Datenreferenzen werden automatisch aktualisiert.

Die Sicherungserstellung erfolgt sofort, die Übertragung erfolgt jedoch in einem gewissen Zeitraum, abhängig von der Menge der zu kopierenden Daten. Während dieses Zeitraums wechselt die Sicherung drei Status:

Status Laufzeit Beschreibung
Wird erstellt Ein paar Sekunden Aktuellen Status der Dateifreigabe erfassen. Neue Änderungen an Dateifreigabedaten können in die Sicherung aufgenommen werden. Stabile Schreibvorgänge, die von der Instanz bestätigt wurden, bevor die Sicherung initiiert wird, sind eingeschlossen.
Bald beendet Je nach Größe Daten in die Sicherung hochladen. Neue Änderungen an Dateifreigabedaten werden nicht in die Sicherung aufgenommen.
Bereit Bis die Sicherung gelöscht wird Die Sicherung ist einsatzbereit.

Nach der Erstellung werden Sicherungen der Basisstufe automatisch komprimiert, um die Kosten zu senken. Die Instanzleistung kann beim Erstellen einer Sicherung für Instanzen in den zonalen (zuvor hochskalierten SSD-) und Enterprise-Dienststufen reduziert werden. Das Erstellen einer Sicherung hat keinen Einfluss auf die Verfügbarkeit oder Leistung von Instanzen der Basisstufe.

Sicherungslöschung

Sicherungen sind Ressourcen auf Projektebene, keine Unterressource der Quellinstanz, und erfordern einen eigenen separaten Speicher. Daher ist der Lebenszyklus einer Sicherung nicht an den Lebenszyklus der Quellinstanz gebunden. Durch das Löschen der Quelle werden die zugehörigen Sicherungen nicht gelöscht. Wenn Sie eine Sicherung löschen möchten, müssen Sie den Löschvorgang explizit für die Sicherung und nicht für die Instanz ausführen.

Löschen Sie unbedingt alle unerwünschten Sicherungen. Wenn eine Quellinstanz gelöscht wird, fallen für verbleibende Sicherungen weiterhin Gebühren an.

Das Löschen einer Sicherung kann nicht rückgängig gemacht werden.

Sicherungskonsistenz

Filestore-Sicherungen haben eine NFSv3-Konsistenz. Bevor eine Sicherung initiiert wird, ist jeder Schreibvorgang, der von der Filestore-Instanz angegeben wird, in den stabilen Speicher geschrieben oder gefolgt von einem bestätigten COMMIT in der Sicherung enthalten. Weitere Informationen finden Sie unter NFSv3 RFC-1813 Abschnitt 3.3.7.

Gängige Anwendungsfälle

In den folgenden Abschnitten werden häufige Anwendungsfälle für Sicherungen beschrieben.

Daten für die Notfallwiederherstellung sichern

Angenommen, Sie haben eine Filestore-Instanz in us-west1-c und möchten Ihre Daten vor Zwischenfällen schützen, die diese Region betreffen. Sie können einen Job planen, der regelmäßig Sicherungen dieser Instanz in einer Remoteregion erstellt, z. B. us- east1. Wenn ein Notfall mit us-west1-c aufgetreten ist, können Sie von einer vorherigen Sicherung eine neue Instanz an einem anderen Speicherort erstellen.

Daten sichern, um versehentliche Änderungen zu verhindern

Wenn Sie Ihre Filestore-Daten vor unbeabsichtigten Änderungen schützen möchten, können Sie einen Job planen, um regelmäßig Sicherungen der Instanz zu erstellen. Wenn Sie Daten verlieren, können Sie die Liste der Sicherungen durchsuchen, um diejenige mit der benötigten Version der Datei zu identifizieren. Anschließend können Sie eine neue Filestore-Instanz aus der Sicherung erstellen, diese auf demselben Client wie die Originalinstanz bereitstellen und die Datei kopieren.

Bevor Sie die Datei übertragen, können Sie mit dem Linux-Befehl diff an den beiden Bereitstellungspunkten die Unterschiede zwischen den Daten in der ursprünglichen Instanz und den Daten prüfen, die aus der Sicherung wiederhergestellt wurden. Nachdem die Daten wiederhergestellt wurden, können Sie die wiederhergestellte Instanz löschen und eine neue Sicherung erstellen, um den aktuellen Zustand Ihrer Daten für die zukünftige Verwendung beizubehalten.

Alternativ können Sie eine direkte Wiederherstellung durchführen, bei der die Sicherungsdaten direkt in der ursprünglichen Filestore-Instanz gespeichert werden, und alle Daten darin durch Daten aus der Sicherung ersetzen. Es empfiehlt sich, vor einer direkten Wiederherstellung eine Sicherung der neuesten Daten zu erstellen, da nicht gesicherte Daten verloren gehen.

Klone für Entwicklung und Tests erstellen

Angenommen, Sie haben eine Datenbank für eine Filestore-Instanz eingerichtet, die den Produktions-Traffic bereitstellt. Wenn Sie einen Test mit einer Datenbank als Eingabe ausführen möchten, können Sie eine neue Filestore-Instanz aus einer Sicherung der Produktionsinstanz für den Test erstellen. Auf diese Weise beeinträchtigt die Testnutzung die Produktion nicht.

Ebenso können Sie Sicherungen zur Offline-Analyse und -Prüfung verwenden, ohne die Produktion zu beeinträchtigen.

Daten migrieren

Nachdem Sie eine Filestore-Instanz erstellt haben, können Sie deren Standort oder Dienststufe nicht mehr ändern. Wenn Sie Ihre Daten in eine andere Region migrieren möchten, können Sie eine Sicherung davon erstellen und mit der Sicherung eine neue Filestore-Instanz erstellen oder die Sicherung auf einer vorhandenen Instanz wiederherstellen.

Wenn Sie eine neue Filestore-Instanz aus einer Sicherung erstellen, können Sie außerdem unabhängig von der Stufe der Quellinstanz zwischen Basis-HDD- und Basis-SSD-Stufen wählen.

Featurebeschränkungen

Filestore-Sicherungen sind allgemein (GA) für alle Dienststufen verfügbar.

Es gelten folgende Einschränkungen:

  • Filestore-Sicherungen können nicht mit dem Feature Filestore-Mehrfachfreigaben kombiniert werden.

  • Sobald die Preise festgelegt sind, fallen entsprechende Gebühren an.

  • Nutzer sollten eine neue oder neue Sicherung erstellen, um die in der Vorschau erstellten Sicherungen zu ersetzen. In der Vorschau erstellte Sicherungen können gelöscht werden. In der Vorabversion erstellte Sicherungen spiegeln das Featureverhalten wider, das zum Zeitpunkt der Erstellung verfügbar war. Vorhandene Sicherungen werden nicht aktualisiert, wenn neue Funktionen veröffentlicht werden.

In den folgenden Abschnitten werden weitere Featureeinschränkungen in Bezug auf Leistung, Speicher, Kapazität und Verschlüsselung ausführlich beschrieben:

Leistung

  • Zahlreiche Änderungen, die über viele Hardlinks in derselben Datei vorgenommen werden (z. B. Zehn- oder Hunderttausende), können sich auf die Leistung auswirken.

  • Bei stark ausgelasteten Instanzen kann die Leistung während des Hochladens einer Sicherung um bis zu 15 % reduziert werden. Die Leistung von Instanzen der Basis-Stufe wird von create-Sicherungsvorgängen nicht beeinflusst.

  • Das Speichern der Daten einer Instanz in mehreren Sicherungsketten wirkt sich auf die Sicherungsleistung aus. Bei Sicherungsvorgängen vom Typ create ist bei abwechselnd zwischen Sicherungsketten eine höhere Latenz zu erwarten.

  • Instanzvorgänge wie Instanz restore oder Instanz delete können sich verzögern, bis ein create-Sicherungsvorgang abgeschlossen ist.

  • In einigen Fällen kann es bis zu 24 Stunden dauern, bis delete-Vorgänge abgeschlossen sind.

Nebenläufigkeit von Vorgängen

  • delete-Sicherungsvorgänge, die mit derselben Quellinstanz verknüpft sind, müssen nacheinander ausgeführt werden.

    Bulk-Sicherungsvorgänge für delete innerhalb einer Sicherungskette werden nicht unterstützt. Solange ein delete-Vorgang aussteht, geben alle neuen delete-Vorgänge innerhalb derselben Sicherungskette einen RESOURCE_EXHAUSTED-Fehler zurück. Dies gilt unabhängig davon, ob die Quellinstanz gelöscht wurde.

    • Wenn die Quellinstanz gelöscht wurde, erhalten Nutzer einen ähnlichen Fehler FAILED_PRECONDITION.

    • Diese Einschränkung gilt für jede Dienststufe mit Ausnahme von Basic SSD und Basic HDD.

    • Beachten Sie, dass Filestore gleichzeitige delete-Sicherungsvorgänge unterstützt, wenn Sicherungen auf separate Quellinstanzen verweisen.

      Eine Instanz mit dem Label Source1 enthält beispielsweise Sicherungsdaten, auf die in Backup1 und Backup2 verwiesen wird. Für Source2 gibt es Sicherungsdaten, auf die in Backup3 und Backup4 verwiesen wird. Backup1 und Backup2 können jedoch nicht gleichzeitig gelöscht werden, Backup2 und Backup3 können jedoch gelöscht werden.

  • Sicherungs-create- und Sicherungs-delete-Vorgänge, die innerhalb derselben Sicherungskette initiiert werden, können gleichzeitig ausgeführt werden. Nutzer können jedoch keinen create-Sicherungsvorgang abschließen, während die letzte Sicherung gelöscht wird.

    • Wenn der Nutzer versucht, eine neue Sicherung der Instanz zu erstellen, während die letzte Sicherung gelöscht wird, wird der Fehler FAILED_PRECONDITION angezeigt. Wenn Source1 beispielsweise eine Sicherungskette aus Backup1 und Backup2 hat und der Nutzer einen create-Vorgang für Backup3 startet, kann er Backup2 erst löschen, wenn der create-Vorgang abgeschlossen ist. Das liegt daran, dass die letzte Sicherung die wichtigsten Daten enthält, die für den erfolgreichen Abschluss der create-Sicherung erforderlich sind.
  • Weitere Informationen zu Vorgangsratenlimits finden Sie unter Vorgangsratenlimits für Sicherungen.

Speicher

  • restore-Sicherungsvorgänge für die Quellinstanz oder eine vorhandene Instanz werden für Instanzen der Enterprise-Stufe und der zonalen Stufe nicht unterstützt. Wenn Sie die Sicherung einer Instanz in einer dieser Dienststufen wiederherstellen möchten, müssen Sie eine neue Instanz erstellen.

  • Sicherungsvorgänge wie restore, edit oder delete sind für ausgewählte Sicherungen, die in der Vorabversion erstellt wurden, möglicherweise nicht verfügbar.

  • Sobald ein RestoreInstance-Vorgang auf eine Unternehmensinstanz angewendet wurde, können Sie vor dem Vorgang keine Snapshots mit demselben Namen wie vorherige Snapshots erstellen.

  • Versuche, eine Instanz aus einer Sicherung wiederherzustellen, während entweder eine Sicherung oder ein Snapshot gelöscht wird, schlagen fehl.

  • Wenn das Löschen einer Sicherung fehlschlägt, ist der Status invalid angegeben. In solchen Fällen müssen Sie den Vorgang delete wiederholen.

Kapazität

Jede Sicherung belegt Instanzkapazität. Diese Kapazität variiert abhängig von dem Umfang der Änderungen, die seit der letzten Sicherung an den Daten vorgenommen wurden.

Genauer gesagt erstellt Filestore beim Erstellen einer Sicherung einen internen Snapshot des Dateisystems, der auch einen Teil der verfügbaren Instanzkapazität belegt.

Die Snapshot-Größe richtet sich auch nach dem Umfang der Änderungen, die seit der letzten Sicherung an Daten im freigegebenen Speicher vorgenommen wurden. Dieser Snapshot ist so lange vorhanden, bis die nächste nachfolgende Sicherung erstellt und hochgeladen wird.

Alle Daten, auf die in der Sicherung verwiesen wird, verbleiben in dem Zustand, in dem sie erfasst wurden, und verbrauchen weiterhin Kapazität im Dateisystem. Wenn Sie also beispielsweise Daten aus dem bereitgestellten Dateisystem löschen, wird durch diese Aktion keine Kapazität freigegeben. Stattdessen würden Sie dazu eine neue Sicherung erstellen, nachdem Sie große Datenmengen gelöscht oder überschrieben haben.

Eine ausführliche Beschreibung der differenziellen und inkrementellen Änderungen und deren Umgang finden Sie unter Sicherung erstellen.

Damit genügend Kapazität für Ihre Arbeitslasten vorhanden ist, sollten Sie eine der folgenden Optionen anwenden:

  • Erhöhen Sie die Instanzkapazität für Arbeitslasten mit erheblichen, häufigen Datenänderungen oder einer hohen Änderungsrate.

Verschlüsselung

Wenn Sie Ihre Sicherungsketten mit CMEK verschlüsseln, gelten die folgenden Einschränkungen:

  • Eine ganze Sicherungskette wird mit demselben CMEK verschlüsselt.

  • Ein CMEK muss sich in derselben Region wie die verschlüsselte Ressource befinden.

  • Wenn Sie eine Sicherungskette in einer von der Quellinstanz getrennten Region speichern, müssen Sie möglicherweise separate Schlüssel anwenden, einen für die Quelle und einen für die Sicherungskette.

    • Alle Dienststufen unterstützen mehrere Sicherungsketten oder die Möglichkeit, Sicherungen einer Instanz in mehreren Regionen zu speichern. Wenn Sie CMEK zur Verschlüsselung verwenden, muss sich ein CMEK-Schlüssel in derselben Region wie die verschlüsselte Ressource befinden. Wenn Sie Sicherungen in einer von der Quelle getrennten Region speichern und der CMEK kein multiregionaler Schlüssel ist, müssen Sie separate CMEK-Schlüssel verwenden. Weitere Informationen finden Sie unter CMEK-Einschränkungen und Besten CMEK-Standort auswählen.
  • Ein einzelner CMEK wird auf den Cloud Storage-Bucket angewendet, in dem die Sicherungskette gespeichert ist, und kann nicht kombiniert oder ersetzt werden.

  • CMEK-Unterstützung ist für Sicherungen der Basisstufe nicht verfügbar.

Weitere Informationen finden Sie unter CMEK-Unterstützung für Sicherungsketten.

Best Practices

In den folgenden Abschnitten finden Sie empfohlene Best Practices.

Dateifreigabe für optimale Sicherung vorbereiten

Die Qualität einer Sicherung hängt davon ab, ob Ihre Anwendung Daten aus Sicherungen wiederherstellen kann, die während hoher Schreibarbeitslasten erstellt wurden. In den meisten Fällen können Sie Sicherungen mit guter Konsistenz erstellen, selbst wenn Ihre Anwendungen Daten in die Dateifreigabe schreiben. Wenn Ihre Anwendungen jedoch strikte Konsistenz erfordern, sollten Sie einen oder mehrere der folgenden Schritte ausführen:

  • Verwenden Sie die sync-Bereitstellung. Weitere Informationen finden Sie im Abschnitt "Optionen für die Synchronisierungsbereitstellung" in nfs(5). Alternativ können Sie Dateien mit den O_DIRECT|O_SYNC-Flags öffnen. Weitere Informationen finden Sie unter open(2).
  • Halten Sie Anwendungen oder Betriebssystemprozesse an, die Daten in die Dateifreigabe schreiben, und bewirken Sie, dass diese Änderungen in der Dateifreigabe geleert werden, bevor die Sicherung initiiert wird. Weitere Informationen finden Sie unter fsync(2).
  • Wenn Ihre Anwendungen Konsistenz zwischen mehreren Dateifreigaben erfordern, pausieren Sie alle Anwendungen auf allen Instanzen, die in alle Dateifreigaben schreiben, und erstellen Sie Sicherungskopien für alle Dateifreigaben, bevor Sie die Anwendungen fortsetzen.
  • Wenn Sie Konsistenz auf Anwendungsebene benötigen, beenden Sie Ihre Anwendungen und heben Sie die Dateifreigabe auf, bevor Sie eine Sicherung erstellen.

Vorhandene Sicherungen als Grundlage für neue Sicherungen verwenden, um die Erstellungszeit von Sicherungen zu reduzieren

Vorhandene Sicherungen einer Dateifreigabe innerhalb einer Region werden als Grundlage für die Erstellung neuer Sicherungen der Dateifreigabe verwendet. Dies reduziert die Erstellungszeit der Sicherung. Daher empfehlen wir Ihnen Folgendes:

  • Erstellen Sie eine neue Sicherung einer Dateifreigabe, bevor Sie die vorherige Sicherung dieser Dateifreigabe löschen.

  • Warten Sie, bis neue Sicherungen den Status Ready haben, bevor Sie weitere Sicherungen derselben Dateifreigabe erstellen.

Sicherungen außerhalb der Spitzenzeiten planen, um die Erstellungszeit für die Sicherung zu verkürzen

Wenn Sie Sicherungen außerhalb der Spitzenzeiten erstellen, nimmt dies weniger Zeit in Anspruch. Wenn Sie regelmäßige Sicherungen Ihrer Dateifreigaben planen, empfehlen wir, die Zeiten außerhalb der Spitzenzeiten zu planen.

Spitzenzeiten zum Erstellen von Sicherungen sind das Ende jedes Werktags und Mitternacht in der Region, in der sich die Filestore-Instanz befindet. Wir empfehlen Ihnen, Sicherungen entweder am frühen Morgen oder am Werktag zu erstellen.

Daten auf separaten Filestore-Instanzen strukturieren, um die Effizienz zu maximieren

Je mehr Daten die Dateifreigabe umfasst, desto größer ist die Sicherung und desto höher die Kosten. Wenn Sie nur die Daten sichern möchten, die Sie sichern müssen, sollten Sie Ihre Daten in separaten Dateifreigaben organisieren, z. B.:

  • Speichern kritischer Daten mit unterschiedlichen Schreibmustern oder mit unterschiedlichen Sicherungsanforderungen auf verschiedenen Dateifreigaben.
  • Reduzieren der Anzahl der zu erstellenden Sicherungen, indem ähnliche Daten in einer Dateifreigabe aufbewahrt werden.

Kontingent

Für die Anzahl der Sicherungen pro Region gilt für die Dienststufen „Basic SSD“ und „Basic HDD“ ein Kontingentlimit.

Die Kontingentlimits für die Sicherung gelten nicht für zonale und Unternehmensdienststufen.

Weitere Informationen finden Sie unter Dienststufen und Kontingente.

Erste Schritte mit Filestore-Sicherungen

Informationen zur Verwendung der Funktion finden Sie unter Daten für die Notfallwiederherstellung sichern.

Nächste Schritte