In diesem Dokument wird beschrieben, wie Sie Administrator- und Nutzercluster mit aktivierter erweiterten Clusterkonfiguration in Google Distributed Cloud Version 1.32 und höher sichern und wiederherstellen. Die Funktion zum Sichern und Wiederherstellen befindet sich in Version 1.32 in der Vorschau und ist in Version 1.33 und höher allgemein verfügbar.
Der Sicherungs- und Wiederherstellungsprozess gkectl
enthält keine nichtflüchtigen Volumes. Alle Volumes, die vom lokalen Volume-Bereitsteller (Local Volume Provisioner, LVP) erstellt werden, bleiben unverändert.
Cluster sichern
Mit dem Befehl gkectl backup cluster
werden die Clusterinformationen aus dem etcd-Speicher und die PKI-Zertifikate für den angegebenen Cluster einer TAR-Datei hinzugefügt. Der etcd-Speicher ist der Kubernetes-Sicherungsspeicher für alle Clusterdaten. Er enthält alle Kubernetes-Objekte und benutzerdefinierten Objekte, die zur Verwaltung des Clusterstatus erforderlich sind. Die PKI-Zertifikate werden für die Authentifizierung über Transport Layer Security (TLS) verwendet.
Diese Daten werden von der Steuerungsebene des Clusters oder von einer der Steuerungsebenen für ein Deployment mit Hochverfügbarkeit (HA) gesichert.
Die TAR-Datei für die Sicherung enthält vertrauliche Anmeldedaten, einschließlich der Dienstkontoschlüssel und des SSH-Schlüssels. Speichern Sie Sicherungsdateien an einem sicheren Ort. Um eine unbeabsichtigte Dateisichtbarkeit zu verhindern, verwendet der Sicherungsprozess nur speicherinterne Dateien.
Sichern Sie Ihre Cluster regelmäßig, um dafür zu sorgen, dass die Snapshot-Daten relativ aktuell sind. Passen Sie die Sicherungsrate entsprechend der Häufigkeit signifikanter Änderungen an Ihren Clustern an.
Prüfen Sie, ob Ihr Cluster ordnungsgemäß mit funktionierenden Anmeldedaten und SSH-Verbindungen zu allen Knoten funktioniert. Der Sicherungsprozess besteht darin, Ihren Cluster in einem als funktionierend bekannten Zustand zu erfassen, damit Sie den Vorgang wiederherstellen können, wenn ein schwerwiegender Fehler auftritt.
So sichern Sie einen Cluster:
Führen Sie den folgenden Befehl aus, um Ihren Cluster zu prüfen:
gkectl diagnose cluster --cluster-name CLUSTER_NAME \ --kubeconfig ADMIN_KUBECONFIG
Ersetzen Sie Folgendes:
CLUSTER_NAME: der Name des Clusters, den Sie sichern möchten.
Ersetzen Sie dabei ADMIN_KUBECONFIG durch den Pfad der kubeconfig-Datei für den Administratorcluster.
Führen Sie den entsprechenden Befehl aus, um den Cluster zu sichern:
Administratorcluster
gkectl backup admin --kubeconfig ADMIN_KUBECONFIG
Nutzercluster
gkectl backup cluster --cluster-name CLUSTER_NAME \ --kubeconfig ADMIN_KUBECONFIG
Standardmäßig wird die TAR-Sicherungsdatei im Verzeichnis gkectl-workspace/backups
auf Ihrer Administrator-Workstation gespeichert. Die TAR-Datei heißt CLUSTER_NAME_backup_TIMESTAMP.tar.gz
, wobei CLUSTER_NAME
der Name des zu sichernden Clusters und TIMESTAMP
das Datum und die Uhrzeit der Sicherung sind. Wenn der Clustername beispielsweise testuser
lautet, hat die Sicherungsdatei einen Namen wie testuser_backup_2025-08-23T150405Z0700.tar.gz
.
Optional können Sie mit dem Flag --backup-file
einen anderen Namen und Speicherort für Ihre Sicherungsdatei angeben, z. B.:
gkectl backup cluster testuser \
--kubeconfig admin-cluster/kubeconfig \
--backup-file cluster-backups/testuser-backup-aug-23-2025.tar.gz
Die Sicherungsdatei läuft nach einem Jahr ab und der Clusterwiederherstellungsprozess funktioniert nicht mit abgelaufenen Sicherungsdateien.
Sichern in vSphere
So konfigurieren Sie Sicherungen, damit die Sicherungsdatei für Administrator- und Nutzercluster zusätzlich zum Speichern auf Ihrer Administrator-Workstation in vSphere hochgeladen wird:
Fügen Sie der Konfigurationsdatei des Administratorclusters das Feld clusterBackup.datastore hinzu:
clusterBackup: datastore: DATASTORE
Ersetzen Sie
DATASTORE
durch den Datenspeicher, in dem Sie die Sicherung speichern möchten. Der Datenspeicher muss sich im selben Rechenzentrum wie der Administratorcluster befinden. Die Sicherungen befinden sich im Verzeichnisanthos/CLUSTER_NAME/backup
des angegebenen Datenspeichers.Aktualisieren Sie den Administratorcluster:
gkectl update admin --kubeconfig ADMIN_KUBECONFIG \ --config ADMIN_CONFIG
Ersetzen Sie Folgendes:
Ersetzen Sie dabei
ADMIN_KUBECONFIG
durch den Pfad der kubeconfig-Datei für den Administratorcluster.ADMIN_CONFIG
: der Pfad Ihrer Administratorcluster-Konfigurationsdatei.
Standardmäßig werden mit dem Befehl gkectl backup
die drei letzten Sicherungsdateien in vSphere gespeichert und ältere Sicherungsdateien gelöscht. Wenn Sie die älteren Sicherungsdateien behalten möchten, fügen Sie das Flag --keep-all-backups
hinzu. Es ist ab Version 1.32.100 verfügbar.
Cluster wiederherstellen
Die Wiederherstellung eines Clusters aus einer Sicherung ist das letzte Mittel, das angewendet werden sollte, wenn ein Cluster komplett fehlgeschlagen ist und nicht auf andere Weise wieder funktionsfähig gemacht werden kann. Dies kann beispielsweise der Fall sein, wenn die etcd-Daten beschädigt sind oder wenn sich der etcd-Pod in einer Absturzschleife befindet.
Verwenden Sie den Befehl gkectl restore
nur, wenn alle drei Knoten der Steuerungsebene ausgefallen sind.
Wenn nur ein Knoten ausgefallen ist und
autoRepair.enabled
in der Konfigurationsdatei des Administratorclusters auftrue
festgelegt ist, wird der ausgefallene Knoten automatisch repariert. WennautoRepair.enabled
nicht konfiguriert ist, fügen Sie es der Konfigurationsdatei des Administratorclusters hinzu und führen Siegkectl update admin
aus. Nach dem Update wird der Knoten automatisch neu erstellt.Wenn zwei Knoten der Steuerungsebene ausgefallen sind, lesen Sie den Abschnitt Quorum wiederherstellen auf dieser Seite.
Die TAR-Datei für die Sicherung enthält vertrauliche Anmeldedaten, einschließlich der Dienstkontoschlüssel und des SSH-Schlüssels. Um eine unbeabsichtigte Dateisichtbarkeit zu verhindern, verwendet der Wiederherstellungsprozess von Google Distributed Cloud nur speicherinterne Dateien.
Bevor Sie einen Cluster wiederherstellen, müssen die folgenden Bedingungen erfüllt sein:
- Alle Knotenmaschinen der Steuerungsebene, die zum Zeitpunkt der Sicherung für den Cluster verfügbar waren, funktionieren ordnungsgemäß und sind erreichbar.
- Die SSH-Verbindung zwischen den Knoten funktioniert mit den SSH-Schlüsseln, die zum Zeitpunkt der Sicherung verwendet wurden. Diese SSH-Schlüssel werden im Rahmen des Wiederherstellungsprozesses wiederhergestellt.
- Die zum Zeitpunkt der Sicherung verwendeten Dienstkontoschlüssel sind weiterhin aktiv. Diese Dienstkontoschlüssel werden für den wiederhergestellten Cluster reaktiviert.
So stellen Sie einen Cluster wieder her:
Führen Sie den entsprechenden Befehl aus, um den Cluster wiederherzustellen:
Administratorcluster
gkectl restore admin --backup-file BACKUP_FILE \ --config ADMIN_CONFIG
Ersetzen Sie Folgendes:
BACKUP_FILE
: der Pfad und der Name der Sicherungsdatei, die Sie verwenden.ADMIN_CONFIG
: der Pfad zur Konfigurationsdatei des Administratorclusters.
Nutzercluster
gkectl restore cluster --cluster-name CLUSTER_NAME \ --backup-file BACKUP_FILE \ --kubeconfig ADMIN_KUBECONFIG
Ersetzen Sie Folgendes:
CLUSTER_NAME
: der Name des Clusters, den Sie wiederherstellen.BACKUP_FILE
: der Pfad und der Name der Sicherungsdatei, die Sie verwenden.ADMIN_KUBECONFIG
: der Pfad zur kubeconfig-Datei des Administratorclusters.
Am Ende des Wiederherstellungsprozesses wird eine neue kubeconfig-Datei für den wiederhergestellten Cluster im Arbeitsbereichsverzeichnis
gkectl-workspace
generiert.Wenn die Wiederherstellung abgeschlossen ist, führen Sie den folgenden Befehl aus, um zu prüfen, ob sie erfolgreich war:
gkectl diagnose cluster --cluster-name CLUSTER_NAME \ --kubeconfig GENERATED_KUBECONFIG
Ersetzen Sie
GENERATED_KUBECONFIG
durch die generierte kubeconfig-Datei.
Quorum wiederherstellen
Wenn in einem Cluster zwei Knoten der Steuerungsebene ausgefallen sind, können Sie mit dem Befehl gkectl restore
das Quorum wiederherstellen. Wenn Sie das Quorum wiederherstellen, geben Sie anstelle der Sicherungsdatei für den Befehl gkectl restore
die IP-Adresse des funktionierenden Knotens der Steuerungsebene an.
Bevor Sie den Befehl ausführen, müssen die folgenden Bedingungen erfüllt sein:
- Es gibt einen (und nur einen) funktionierenden Knoten der Steuerungsebene.
- Auf den funktionierenden Knoten der Steuerungsebene kann mit dem SSH-Schlüssel zugegriffen werden. Weitere Informationen finden Sie unter SSH-Verbindung zu einem Clusterknoten herstellen.
Führen Sie den entsprechenden Befehl für Ihren Clustertyp aus, um das Quorum wiederherzustellen:
Administratorcluster
gkectl restore admin --kubeconfig ADMIN_KUBECONFIG \
--config ADMIN_CONFIG \
--control-plane-node WORKING_NODE_IP \
--ssh-key ADMIN_SSH_KEY_PATH
Ersetzen Sie Folgendes:
Ersetzen Sie dabei
ADMIN_KUBECONFIG
durch den Pfad der kubeconfig-Datei für den Administratorcluster.ADMIN_CONFIG
: der Pfad Ihrer Administratorcluster-Konfigurationsdatei.WORKING_NODE_IP
: die IP-Adresse des funktionierenden Knotens der Steuerungsebene.ADMIN_SSH_KEY_PATH
: der SSH-Schlüsselpfad des Administratorclusters.
Nutzercluster
gkectl restore cluster --cluster-name CLUSTER_NAME \
--kubeconfig ADMIN_KUBECONFIG \
--control-plane-node WORKING_NODE_IP \
--ssh-key USER_SSH_KEY_PATH
Ersetzen Sie Folgendes:
CLUSTER_NAME
: der Name des Clusters, den Sie wiederherstellen.ADMIN_KUBECONFIG
: der Pfad zur kubeconfig-Datei des Administratorclusters.WORKING_NODE_IP
: die IP-Adresse des funktionierenden Knotens der Steuerungsebene.USER_SSH_KEY_PATH
: der SSH-Schlüsselpfad des Nutzerclusters.
Fehlerbehebung
Wenn Sie Probleme mit dem Sichern oder Wiederherstellen haben, können Ihnen die folgenden Abschnitte bei der Fehlerbehebung helfen.
Wenn Sie weitere Unterstützung benötigen, wenden Sie sich an das Cloud Customer Care-Team.
Nicht genügend Arbeitsspeicher während einer Sicherung oder Wiederherstellung
Wenn die Workstation, auf der Sie den Befehl gkectl
ausführen, nicht viel RAM hat, ist möglicherweise nicht genügend Arbeitsspeicher für die Sicherung oder Wiederherstellung verfügbar. Erstellen und verwenden Sie bei Bedarf ein temporäres Arbeitslaufwerk, um die Sicherungs- oder Wiederherstellungsvorgänge mit dem Parameter --use-disk
im Sicherungsbefehl zu verarbeiten. Um die Dateiberechtigungen beizubehalten, werden mit diesem Parameter die Berechtigungen der Dateien geändert. Daher müssen Sie den Befehl als Root-Nutzer ausführen (oder sudo
verwenden).
Aktualisierung des SSH-Schlüssels nach einer Sicherung bricht den Wiederherstellungsprozess ab
SSH-bezogene Vorgänge während der Wiederherstellung können fehlschlagen, wenn der SSH-Schlüssel nach der Sicherung aktualisiert wird. In diesem Fall ist der neue SSH-Schlüssel für die Wiederherstellung ungültig. Um dieses Problem zu beheben, können Sie den ursprünglichen SSH-Schlüssel vorübergehend wieder hinzufügen und dann die Wiederherstellung ausführen. Nach Abschluss der Wiederherstellung können Sie den SSH-Schlüssel rotieren.