Detaillierte Wiederherstellung erstellen

In diesem Dokument wird beschrieben, wie Sie eine detaillierte Wiederherstellung für eine Sicherung in Google Distributed Cloud (GDC) mit Air Gap erstellen.

Mit der detaillierten Wiederherstellung können Sie eine Teilmenge von Ressourcen aus einer Sicherung wiederherstellen. Mit dieser Funktion können Sie den im Wiederherstellungsplan definierten Wiederherstellungsumfang flexibel anpassen.

Hinweis

Prüfen Sie, ob eine Sicherung vorhanden ist. Weitere Informationen finden Sie unter Eine Reihe von Sicherungen planen.

IAM-Rollen anfordern

Wenn Sie eine detaillierte Wiederherstellung für eine Sicherung erstellen möchten, bitten Sie Ihren IAM-Administrator der Organisation oder IAM-Projektadministrator, Ihnen eine der folgenden Rollen zuzuweisen:

  • User Cluster Backup Admin (user-cluster-backup-admin): Erstellt, ruft ab, listet auf, beobachtet, aktualisiert, patcht und löscht Sicherungsressourcen wie Sicherungs- und Wiederherstellungspläne in Nutzerclustern. Wenden Sie sich an den IAM-Administrator Ihrer Organisation, um diese Rolle anzufordern.

  • Backup Creator (backup-creator): Erstellt, ruft ab, listet auf, beobachtet, aktualisiert, patcht und löscht manuelle Sicherungs- und Wiederherstellungsanfragen. Wenden Sie sich an Ihren IAM-Projektadministrator, um diese Rolle anzufordern.

Detaillierte Wiederherstellung erstellen

So erstellen Sie eine Wiederherstellung mit einem detaillierten Filter:

  1. Erstellen Sie die Filter für die detaillierte Wiederherstellung. Sie können das folgende YAML-Beispiel verwenden.

    inclusionFilters:
      - groupKind:
          group: foo.io
          kind: Bar
        name: name1
        namespace: ns1
    exclusionFilters:
      - labels:
          key1: value1
          key2: value2
    
  2. Erstellen Sie eine benutzerdefinierte ManualRestoreRequest-Ressource, um Wiederherstellungen aus einer vorhandenen Backups zu planen. Hier ein Beispiel für ein ManualRestoreRequest:

    apiVersion: backup.gdc.goog/v1
    kind: ManualRestoreRequest
    metadata:
      name: RESTORE_NAME
      namespace: PROJECT_NAMESPACE
    spec:
      restoreName: RESTORE_NAME
      restorePlanName: RESTORE_PLAN
      backupName: BACKUP_NAME
      filter:
        FINE_GRAINED_RESTORE_FILTERS
    

Ersetzen Sie Folgendes:

  • RESTORE_NAME ist der Name der Wiederherstellung, die Sie erstellen möchten.
  • PROJECT_NAMESPACE: der Name Ihres GDC-Projekts.
  • RESTORE_PLAN: der Name des Wiederherstellungsplans, von dem diese Wiederherstellung abgeleitet wird.
  • BACKUP_NAME ist die Sicherung, die wiederhergestellt werden soll. Diese Sicherung muss mit dem Sicherungsplan verknüpft sein, auf den sich der Wiederherstellungsplan bezieht. Weitere Informationen finden Sie unter Eine Reihe von Wiederherstellungen planen.
  • FINE_GRAINED_RESTORE_FILTER: die detaillierten Wiederherstellungsfilter. Beispiele finden Sie unter Beispiele für detaillierte Wiederherstellungsfilter.

Beispiele für detaillierte Wiederherstellungsfilter

Die folgenden Beispiele werden im YAML-Format bereitgestellt, das von der Google Cloud CLI verwendet wird.

Einzelne Namespace-bezogene Ressource wiederherstellen

In diesem Beispiel wird eine ConfigMap-Ressource mit dem Namen nginx-vars im Namespace webserver wiederhergestellt. Die Ressource wird mit der detaillierten Wiederherstellung inclusionFilters ausgewählt. Wenn Sie Ressourcen in der Kerngruppe auswählen möchten, verwenden Sie einen leeren String für das Feld group.

filter:
  inclusionFilters:
  - groupKind:
      kind: ConfigMap
    name: nginx-vars
    namespace: webserver

Einzelne clusterbezogene Ressource ausschließen

In diesem Beispiel werden alle verfügbaren Ressourcen mit Ausnahme einer groupKind-Ressource mit dem Namen sc1 wiederhergestellt. Dabei wird die detaillierte Wiederherstellung exclusionFilters verwendet, um die Ressource auszuschließen.

filter:
  exclusionFilters:
  - groupKind:
      group: storage.k8s.io
      kind: StorageClass
    name: sc1

Ressourcen mit zwei Labels wiederherstellen

In diesem Beispiel werden Ressourcen mit den Labels key1:value1 und key2:value2 wiederhergestellt. Die Ressourcen werden mit der detaillierten Wiederherstellung inclusionFilters ausgewählt.

filter:
  inclusionFilters:
  - labels:
      key1: value1
      key2: value2

Alle Ressourcen einiger GroupKinds ausschließen

In diesem Beispiel werden alle verfügbaren Ressourcen mit Ausnahme der groupKind-Ressourcen von ConfigMap und storage.k8s.io/StorageClass wiederhergestellt. Dabei wird die detaillierte Wiederherstellung exclusionFilters verwendet, um diese beiden GroupKinds auszuschließen.

filter:
  exclusionFilters:
  - groupKind:
      kind: ConfigMap
  - groupKind:
      group: storage.k8s.io
      kind: StorageClass

Nächste Schritte