Sichern von Azure Kubernetes Service mithilfe von Azure Backup

In diesem Artikel erfahren Sie, wie Sie Azure Kubernetes Service (AKS) konfigurieren und sichern.

Mit Azure Backup können Sie AKS-Cluster (Clusterressourcen und an den Cluster angefügte persistente Volumes) mithilfe der Backup-Erweiterung sichern, die im Cluster installiert werden muss. Der Backup-Tresor kommuniziert über diese Backup-Erweiterung mit dem Cluster, um Sicherungs- und Wiederherstellungsvorgänge auszuführen.

Hinweis

Tresorsicherung und regionsübergreifende Wiederherstellung für AKS mit Azure Backup befinden sich derzeit in der Vorschau.

Vorbereitung

  • Derzeit unterstützt die AKS-Sicherung nur Azure Disk Storage-basierte persistente Volumes (aktiviert durch den CSI-Treiber). Die Sicherungen werden nur in einem operativen Datenspeicher gespeichert (die Sicherungsdaten werden in Ihrem Mandanten gespeichert und nicht in einen Tresor verschoben). Der Backup-Tresor und der AKS-Cluster müssen sich in derselben Region befinden.

  • Die AKS-Sicherung verwendet einen Blobcontainer und eine Ressourcengruppe, um die Sicherungen zu speichern. Der Blobcontainer enthält die AKS-Clusterressourcen. Momentaufnahmen persistenter Volumes werden in der Ressourcengruppe gespeichert. Der AKS-Cluster und die Speicherorte müssen sich in derselben Region befinden. Erfahren Sie, wie Sie einen Blobcontainer erstellen.

  • Derzeit unterstützt die AKS-Sicherung das Anlegen von Sicherungen einmal pro Tag. Darüber hinaus werden häufigere Sicherungen (in Intervallen von 4, 8 und 12 Stunden) pro Tag unterstützt. Mit dieser Lösung können Sie Ihre Daten bis zu 360 Tage lang für die Wiederherstellung aufbewahren. Erfahren Sie mehr über das Erstellen einer Sicherungsrichtlinie.

  • Sie müssen die Backup-Erweiterung installieren, um Sicherungs- und Wiederherstellungsvorgänge für einen AKS-Cluster zu konfigurieren. Weitere Informationen finden Sie unter Backup-Erweiterung.

  • Stellen Sie sicher, dass die Featureflags Microsoft.KubernetesConfiguration, Microsoft.DataProtection und TrustedAccessPreview in Microsoft.ContainerService für Ihr Abonnement registriert sind, bevor Sie die Sicherungskonfigurations- und Wiederherstellungsvorgänge initiieren.

  • Stellen Sie sicher, dass Sie alle Voraussetzungen erfüllen, bevor Sie einen Sicherungs- oder Wiederherstellungsvorgang für die AKS-Sicherung initiieren.

Weitere Informationen zu den unterstützten Szenarien sowie zu Einschränkungen und zur Verfügbarkeit finden Sie in der Supportmatrix.

Erstellen eines Sicherungstresors

Ein Sicherungstresor ist eine Verwaltungseinheit, die im Laufe der Zeit behandelte Wiederherstellungspunkte speichert. Ein Sicherungstresor bietet auch eine Schnittstelle für die Durchführung von Sicherungsvorgängen. Zu diesen Vorgängen gehören die Durchführung von bedarfsgesteuerten Sicherungen, die Durchführung von Wiederherstellungen und die Erstellung von Sicherungsrichtlinien. Für die AKS-Sicherung müssen sich der Sicherungstresor und der AKS-Cluster in derselben Region befinden. Erfahren Sie, wie Sie einen Sicherungstresor erstellen.

Hinweis

Ein Sicherungstresor ist eine neue Ressource, die für die Sicherung von neu unterstützten Datenquellen verwendet wird. Ein Backup-Tresor unterscheidet sich von einem Recovery Services-Tresor.

Wenn Sie Azure Backup verwenden möchten, um Ihre AKS-Cluster vor regionalen Ausfällen zu schützen:

  1. Legen Sie bei der Erstellung des Tresors den Parameter Redundanz des Sicherungsspeichers auf Global-Redundant fest. Sobald die Redundanz für einen Tresor eingestellt ist, können Sie sie nicht mehr deaktivieren.

    Screenshot zeigt, wie der Parameter

  2. Wählen Sie für den Parameter Regionsübergreifende Wiederherstellung unter Tresoreigenschaften die Option Aktiviert. Sobald dieser Parameter aktiviert ist, können Sie ihn nicht mehr deaktivieren.

    Screenshot zeigt, wie der Parameter

  3. Erstellen Sie eine Backup-Instanz mithilfe einer Backup-Richtlinie mit einer für den Tresor-Standarddatenspeicher festgelegten Aufbewahrungsdauer. Jeder in diesem Datenspeicher gespeicherte Wiederherstellungspunkt befindet sich in der sekundären Region.

    Hinweis

    Der Tresor-Standarddatenspeicher befindet sich derzeit in der Vorschau.

Erstellen einer Sicherungsrichtlinie

Bevor Sie Sicherungen konfigurieren, müssen Sie eine Sicherungsrichtlinie erstellen, die die Häufigkeit der Sicherungen und ihre Aufbewahrungsdauer definiert.

Sie können auch eine Sicherungsrichtlinie erstellen, wenn Sie die Sicherung konfigurieren.

So erstellen Sie eine Sicherungsrichtlinie

  1. Wechseln Sie zu Backup Center, und wählen Sie Richtlinie aus, um eine neue Sicherungsrichtlinie zu erstellen.

    Screenshot: Erstellen einer Sicherungsrichtlinie

    Wechseln Sie alternativ zu Backup Center>Sicherungsrichtlinien>Hinzufügen.

  2. Wählen Sie unter Datenquellentyp die Option Kubernetes Service aus, und fahren Sie dann fort.

    Screenshot: Auswählen des Datenquellentyps

  3. Geben Sie einen Namen für die Sicherungsrichtlinie ein (z. B. Standardrichtlinie), und wählen Sie den Backup-Tresor (den neuen Backup-Tresor, den Sie erstellt haben) aus, in dem die Sicherungsrichtlinie erstellt werden muss.

    Screenshot: Angeben des Namens der Sicherungsrichtlinie

  4. Definieren Sie auf der Registerkarte Zeitplan + Aufbewahrung die Häufigkeit der Sicherungen und die Dauer der Aufbewahrung auf Betriebs- und Tresorebene (auch Datenspeicher genannt).

    Häufigkeit der Sicherungen: Wählen Sie die Häufigkeit der Sicherungen (stündlich oder täglich) und dann die Aufbewahrungsdauer für die Sicherungen aus.

    Screenshot: Auswahl der Sicherungshäufigkeit.

    Aufbewahrungseinstellung: Eine neue Sicherungsrichtlinie hat zwei Aufbewahrungsregeln.

    Screenshot: Auswahl des Aufbewahrungszeitraums.

    Sie können auch zusätzliche Aufbewahrungsregeln erstellen, um Sicherungen, die täglich oder wöchentlich erstellt werden, länger zu speichern.

    • Standard: Diese Regel definiert die Standardaufbewahrungsdauer für alle Sicherungen auf Betriebsebene. Sie können diese Regel nur bearbeiten, aber nicht löschen.

    • Erste erfolgreiche Sicherung pro Tag: Zusätzlich zur Standardregel kann jede erste erfolgreiche Sicherung des Tages im Betriebsdatenspeicher und im Tresorstandardspeicher gespeichert werden. Sie können diese Regel bearbeiten und löschen (wenn Sie die Sicherungen im Betriebsdatenspeicher aufbewahren möchten).

      Screenshot der Aufbewahrungskonfiguration für Vault Tier and Operational Tier.

    Sie können auch ähnliche Regeln für das erste erfolgreiche Backup pro Woche, Monat und Jahr festlegen.

    Hinweis

    • Neben der ersten erfolgreichen Sicherung des Tages können Sie auch die Aufbewahrungsregeln für die erste erfolgreiche Sicherung der Woche, des Monats und des Jahres festlegen. Die Reihenfolge der Priorität wäre: Jahr, Monat, Woche und Tag.
    • Der Tresor-Standarddatenspeicher befindet sich derzeit in der Vorschau. Wenn Sie das Feature nicht verwenden möchten, bearbeiten Sie die Aufbewahrungsregel, und deaktivieren Sie das Kontrollkästchen neben Tresor-Standarddatenspeicher.
    • Die in der Tresorebene gespeicherten Sicherungen können auch in die sekundäre Region (mit Azure gekoppelte Region) kopiert werden, die Sie zur Wiederherstellung von AKS-Clustern in einer sekundären Region verwenden können, wenn die primäre Region nicht verfügbar ist. Um dieses Feature zu aktivieren, verwenden Sie einen georedundanten Tresor mit aktivierter regionsübergreifender Wiederherstellung.
  5. Wenn Sie die Einstellungen für die Sicherungshäufigkeit und die Aufbewahrungsdauer konfiguriert haben, wählen Sie Weiter aus.

    Screenshot: Abschließen der Erstellung der Sicherungsrichtlinie

  6. Überprüfen Sie die Informationen auf der Registerkarte Überprüfen und erstellen, und wählen Sie dann Erstellen aus.

Konfigurieren von Sicherungen

Mit der AKS-Sicherung können Sie einen gesamten Cluster oder bestimmte Clusterressourcen sichern, die im Cluster bereitgestellt werden. Sie können einen Cluster entsprechend des bereitgestellten Anwendungszeitplans und der Aufbewahrungsanforderungen oder der Sicherheitsanforderungen auch mehrfach schützen.

Hinweis

So richten Sie mehrere Sicherungsinstanzen für denselben AKS-Cluster ein

  • Konfigurieren Sie die Sicherung im gleichen Backup-Tresor, verwenden Sie dabei aber eine andere Sicherungsrichtlinie.
  • Konfigurieren Sie die Sicherung in einem anderen Backup-Tresor.

So konfigurieren Sie Sicherungen für AKS-Cluster

  1. Navigieren Sie im Azure-Portal zu dem AKS-Cluster, für den Sie ein Backup erstellen möchten.

  2. Wählen Sie im Ressourcenmenü Backup und dann Backup konfigurieren aus.

  3. Um den AKS-Cluster für die Sicherung oder Wiederherstellung vorzubereiten, wählen Sie Erweiterung installieren aus, um die Backup-Erweiterung im Cluster zu installieren.

  4. Geben Sie ein Speicherkonto und einen Blobcontainer als Eingabe an.

    Ihre AKS-Clustersicherungen werden in diesem Blobcontainer gespeichert. Das Speicherkonto muss sich in derselben Region und demselben Abonnement wie der Cluster befinden.

    Wählen Sie Weiter aus.

    Screenshot: Hinzufügen von Speicher- und Blobdetails für die Sicherung

  5. Überprüfen Sie die Details zur Erweiterungsinstallation, und wählen Sie dann Erstellen aus.

    Die Installation der Erweiterung wird gestartet.

    Screenshot: Überprüfen und Installieren der Sicherungserweiterung

  6. Wenn die Backup-Erweiterung erfolgreich installiert wurde, wählen Sie Sicherung konfigurieren aus, um mit der Konfiguration von Sicherungen für Ihren AKS-Cluster zu beginnen.

    Sie können diese Aktion auch im Backup Center ausführen.

    Screenshot: Auswählen von „Sicherung konfigurieren“

  7. Wählen Sie den Backup-Tresor aus.

    Screenshot: Auswählen eines Tresors

    Für den Sicherungstresor muss Vertrauenswürdiger Zugriff aktiviert sein, damit der AKS-Cluster gesichert werden kann. Wählen Sie zum Aktivieren des vertrauenswürdigen Zugriffs Berechtigung erteilen aus. Wenn er bereits aktiviert ist, wählen Sie Weiter aus.

    Screenshot: Wechseln zum nächsten Schritt nach dem Erteilen der Berechtigung

    Hinweis

    • Bevor Sie „Vertrauenswürdiger Zugriff“ aktivieren, aktivieren Sie das Featureflag TrustedAccessPreview für den Microsoft.ContainerServices-Ressourcenanbieter im Abonnement.
    • Wenn die Backup-Erweiterung im AKS-Cluster nicht installiert ist, können Sie den Installationsschritt ausführen, der die Sicherung konfiguriert.
  8. Wählen Sie die Sicherungsrichtlinie aus, die den Zeitplan für Sicherungen und deren Aufbewahrungsdauer definiert. Wählen Sie Weiteraus.

    Screenshot: Auswählen einer Sicherungsrichtlinie

  9. Wählen Sie auf der Registerkarte Datenquellen die Option Hinzufügen/Bearbeiten aus, um die Konfiguration der Sicherungsinstanz zu definieren.

    Screenshot: Definieren der Konfiguration der Sicherungsinstanz

  10. Definieren Sie im Bereich Zu sichernde Ressourcen auswählen die Clusterressourcen, für die ein Backup erstellt werden soll.

    Erfahren Sie mehr über Sicherungskonfigurationen.

    Screenshot: Definieren der Clusterressourcen für die Sicherung

  11. Wählen Sie für Momentaufnahme-Ressourcengruppe die Ressourcengruppe aus, die zum Speichern der Momentaufnahmen des persistenten Volumes (Azure Disk Storage) verwendet werden soll. Wählen Sie anschließend Überprüfen aus.

    Screenshot: Überprüfen der Momentaufnahme-Ressourcengruppe

  12. Wenn die Überprüfung abgeschlossen ist und dem Tresor in der Momentaufnahme-Ressourcengruppe keine entsprechenden Rollen zugewiesen sind, wird ein Fehler angezeigt:

    Screenshot: Überprüfungsfehler, wenn die erforderlichen Berechtigungen nicht zugewiesen sind

  13. Um den Fehler zu beheben, wählen Sie unter Name der Datenquelle die Datenquelle und dann Fehlende Rollen zuweisen aus.

    Screenshot: Zuweisen von Rollen

    Der folgende Screenshot zeigt die Liste der Rollen, die Sie auswählen können:

    Screenshot. Auswählen fehlender Rollen

  14. Wenn die Rollenzuweisung abgeschlossen ist, wählen Sie Weiter aus.

    Screenshot: Wechseln zur Sicherungskonfiguration

  15. Wählen Sie Sicherung konfigurieren aus.

  16. Wenn die Konfiguration abgeschlossen ist, wählen Sie Weiter aus.

    Screenshot: Abschließen der Sicherungskonfiguration

    Die Sicherungsinstanz wird erstellt, wenn die Sicherungskonfiguration abgeschlossen ist.

    Screenshot: Liste mit den erstellten Sicherungsinstanzen

    Screenshot: Details der Sicherungsinstanzen

Sicherungskonfigurationen

Mit Azure Backup für AKS können Sie die Anwendungsgrenze innerhalb eines AKS-Clusters definieren, den Sie sichern möchten. Sie können die innerhalb der Sicherungskonfiguration verfügbaren Filter verwenden, um die zu sichernden Ressourcen auszuwählen und um benutzerdefinierte Hooks auszuführen. Auf die definierte Sicherungskonfiguration wird über den Wert für Name der Sicherungsinstanz verwiesen. Folgende Filter sind verfügbar, um Ihre Anwendungsgrenze zu definieren:

  1. Unter Zu sichernde Namespaces auswählen können Sie entweder Alle auswählen, um alle bereits vorhandenen und zukünftigen Namespaces im Cluster zu sichern, oder mithilfe der Option Aus Liste auswählen bestimmte Namespaces für die Sicherung auswählen.

    Screenshot: Auswählen von Namespaces, die in die Sicherung eingeschlossen werden sollen

  2. Erweitern Sie die Option Zusätzliche Ressourceneinstellungen, um Filter anzuzeigen, mit deren Hilfe Sie Clusterressourcen auswählen können, für die ein Backup erstellt werden soll. Sie können ein Backup für Ressourcen basierend auf folgenden Kategorien auswählen:

    • Bezeichnungen: Sie können AKS-Ressourcen filtern, indem Sie Bezeichnungen verwenden, die Sie bestimmten Ressourcentypen zuweisen. Geben Sie Beschriftungen in Form von Schlüssel-Wert-Paaren ein. Sie können mehrere Bezeichnungen mithilfe der AND-Logik kombinieren.

    Wenn Sie beispielsweise die Bezeichnungen env=prod;tier!=web eingeben, wählt der Prozess Ressourcen aus, die über ein Label mit dem Schlüssel env und dem Wert prod sowie über eine Bezeichnung mit dem Schlüssel tier, für die der Wert nicht web ist, verfügen.

    • API-Gruppen: Sie können Ressourcen auch auswählen, indem Sie die AKS-API-Gruppe und den Typ angeben. Sie können beispielsweise für Backup-AKS-Ressourcen wie Bereitstellungen auswählen. Die Liste der von Kubernetes definierten API-Gruppen finden Sie hier.

    • Weitere Optionen: Sie können Backups für Ressourcen im Cluster, persistente Volumes und Geheimnisse aktivieren oder deaktivieren. Standardmäßig sind clusterspezifische Ressourcen und persistente Volumes aktiviert.

    Screenshot: Abschnitt „Zusätzliche Ressourceneinstellungen“

    Hinweis

    Alle diese Ressourceneinstellungen werden kombiniert und mithilfe der AND-Logik angewendet.

Hinweis

Sie sollten die Bezeichnungen jeder einzelnen YAML-Datei hinzufügen, die bereitgestellt und gesichert werden soll. Dies umfasst sowohl Namespace-bezogene Ressourcen wie Ansprüche für persistentes Volume als auch clusterbezogene Ressourcen wie persistente Volumes.

Screenshot: Verschiedene Sicherungskonfigurationen

Verwenden von Hooks während der AKS-Sicherung

In diesem Abschnitt wird beschrieben, wie Sie mithilfe eines Sicherungs-Hooks eine anwendungskonsistente Momentaufnahme des AKS-Clusters erstellen, wobei MySQL bereitgestellt wird (persistentes Volume mit der MySQL-Instanz).

Sie können benutzerdefinierte Hooks in der AKS-Sicherung verwenden, um anwendungskonsistente Momentaufnahmen von Volumes zu erzielen. Die Volumes werden für Datenbanken verwendet, die als containerisierte Workloads bereitgestellt werden.

Mithilfe eines Sicherungs-Hooks können Sie die Befehle zum Fixieren und Aufheben der Fixierung eines MySQL-Pods definieren, sodass eine Anwendungsmomentaufnahme des Volumes erstellt werden kann. Die Backup-Erweiterung koordiniert dann die Schritte zum Ausführen der Befehle in den Hooks und erstellt die Volumemomentaufnahme.

Eine mit MySQL bereitgestellte anwendungskonsistente Momentaufnahme eines Volumes wird durch die folgenden Aktionen erstellt:

  1. Der Pod, in dem MySQL ausgeführt wird, wird gesperrt, sodass keine neue Transaktion für die Datenbank ausgeführt wird.
  2. Es wird eine Momentaufnahme des Volumes als Sicherung erstellt.
  3. Der Pod, in dem MySQL ausgeführt wird, wird entsperrt, sodass Transaktionen wieder in der Datenbank ausgeführt werden können.

So aktivieren Sie einen Sicherungs-Hook als Teil des Sicherungskonfigurations-Flows zur Sicherung von MySQL:

  1. Schreiben Sie die benutzerdefinierte Ressource für Sicherungs-Hooks mit Befehlen zum Fixieren und Aufheben der Fixierung eines PostgreSQL-Pods.

    Sie können auch das folgende YAML-Beispielskript postgresbackuphook.yaml verwenden, das vordefinierte Befehle enthält:

    apiVersion: clusterbackup.dataprotection.microsoft.com/v1alpha1
    kind: BackupHook
    metadata:
    # BackupHook CR Name and Namespace
    name: bkphookname0
    namespace: default
    spec:
    # BackupHook Name. This is the name of the hook that will be executed during backup.
    # compulsory
    name: hook1
    # Namespaces where this hook will be executed.
    includedNamespaces: 
    - hrweb
    excludedNamespaces:
    labelSelector:
    # PreHooks is a list of BackupResourceHooks to execute prior to backing up an item.
    preHooks:
       - exec:
          command:
          - /sbin/fsfreeze
          - --freeze
          - /var/lib/postgresql/data
          container: webcontainer
          onError: Continue
    # PostHooks is a list of BackupResourceHooks to execute after backing up an item.
    postHooks:
       - exec:
          container: webcontainer
          command:
             - /sbin/fsfreeze
             - --unfreeze
          onError: Fail
          timeout: 10s
    
    
    
  2. Bevor Sie eine Sicherung konfigurieren, müssen Sie die benutzerdefinierte Ressource für den Sicherungs-Hook im AKS-Cluster bereitstellen.

    Führen Sie zum Bereitstellen des Skripts den folgenden -Befehl aus:

    kubectl apply -f mysqlbackuphook.yaml
    
    
  3. Nach Abschluss der Bereitstellung können Sie die Sicherung für den AKS-Cluster konfigurieren.

    Hinweis

    Im Rahmen der Sicherungskonfiguration müssen Sie den benutzerdefinierten Ressourcennamen und den Namespace, in dem die Ressource bereitgestellt wird, als Eingabe bereitstellen.

    Screenshot: Hinzufügen des Namespace für die Sicherungskonfiguration

Nächste Schritte