Tworzenie kopii zapasowej usługi Azure Kubernetes Service przy użyciu usługi Azure Backup

W tym artykule opisano sposób konfigurowania i tworzenia kopii zapasowej usługi Azure Kubernetes Service (AKS).

Usługa Azure Backup umożliwia tworzenie kopii zapasowych klastrów usługi AKS (zasobów klastra i trwałych woluminów dołączonych do klastra) przy użyciu rozszerzenia Kopia zapasowa, które należy zainstalować w klastrze. Magazyn kopii zapasowych komunikuje się z klastrem za pośrednictwem rozszerzenia Kopia zapasowa w celu wykonywania operacji tworzenia kopii zapasowych i przywracania.

Uwaga

Przechowywanie kopii zapasowych i przywracanie między regionami dla usługi AKS przy użyciu usługi Azure Backup jest obecnie dostępne w wersji zapoznawczej.

Przed rozpoczęciem

  • Obecnie kopia zapasowa usługi AKS obsługuje tylko woluminy trwałe oparte na usłudze Azure Disk Storage (włączone przez sterownik CSI). Kopie zapasowe są przechowywane tylko w operacyjnym magazynie danych (dane kopii zapasowej są przechowywane w dzierżawie i nie są przenoszone do magazynu). Magazyn usługi Backup i klaster usługi AKS muszą znajdować się w tym samym regionie.

  • Kopia zapasowa usługi AKS używa kontenera obiektów blob i grupy zasobów do przechowywania kopii zapasowych. Kontener obiektów blob zawiera zasoby klastra usługi AKS. Trwałe migawki woluminów są przechowywane w grupie zasobów. Klaster usługi AKS i lokalizacje magazynu muszą znajdować się w tym samym regionie. Dowiedz się , jak utworzyć kontener obiektów blob.

  • Obecnie kopia zapasowa usługi AKS obsługuje tworzenie kopii zapasowych raz dziennie. Obsługuje również częstsze kopie zapasowe (w 4-godzinnych, 8-godzinnych i 12-godzinnych interwałach) dziennie. To rozwiązanie umożliwia przechowywanie danych na potrzeby przywracania przez maksymalnie 360 dni. Dowiedz się, jak utworzyć zasady tworzenia kopii zapasowych.

  • Należy zainstalować rozszerzenie Kopia zapasowa, aby skonfigurować operacje tworzenia i przywracania kopii zapasowych dla klastra usługi AKS. Dowiedz się więcej o rozszerzeniu Kopii zapasowej.

  • Przed zainicjowaniem operacji konfiguracji i przywracania kopii zapasowej upewnij się, że Microsoft.KubernetesConfigurationMicrosoft.DataProtectionflaga funkcji i flaga TrustedAccessPreviewMicrosoft.ContainerService funkcji w subskrypcji są zarejestrowane.

  • Przed zainicjowaniem operacji tworzenia kopii zapasowej lub przywracania kopii zapasowej usługi AKS upewnij się, że wszystkie wymagania wstępne są spełnione.

Aby uzyskać więcej informacji na temat obsługiwanych scenariuszy, ograniczeń i dostępności, zobacz macierz obsługi.

Tworzenie magazynu kopii zapasowych

Magazyn kopii zapasowych to jednostka zarządzania, która przechowuje punkty odzyskiwania traktowane w czasie. Magazyn kopii zapasowych udostępnia również interfejs umożliwiający wykonywanie operacji tworzenia kopii zapasowych. Operacje obejmują wykonywanie kopii zapasowych na żądanie, przywracanie i tworzenie zasad tworzenia kopii zapasowych. Kopia zapasowa usługi AKS wymaga, aby magazyn usługi Backup i klaster usługi AKS znajdowali się w tym samym regionie. Dowiedz się , jak utworzyć magazyn usługi Backup.

Uwaga

Magazyn kopii zapasowych to nowy zasób używany do tworzenia kopii zapasowych nowo obsługiwanych źródeł danych. Magazyn usługi Backup różni się od magazynu usługi Recovery Services.

Jeśli chcesz użyć usługi Azure Backup do ochrony klastrów usługi AKS przed awarią regionalną:

  1. Ustaw parametr Nadmiarowość magazynu kopii zapasowych jako globalnie nadmiarowy podczas tworzenia magazynu. Po ustawieniu nadmiarowości magazynu nie można jej wyłączyć.

    Screenshot shows how to enable the Backup Storage Redundance parameter.

  2. Ustaw parametr Przywracania między regionami w obszarze Właściwości magazynu jako Włączone. Po włączeniu tego parametru nie można go wyłączyć.

    Screenshot shows how to enable the Cross Region Restore parameter.

  3. Utwórz wystąpienie kopii zapasowej przy użyciu zasad kopii zapasowych z czasem przechowywania ustawionym dla magazynu danych w warstwie Standardowa. Każdy punkt odzyskiwania przechowywany w tym magazynie danych będzie znajdować się w regionie pomocniczym.

    Uwaga

    Magazyn danych w warstwie Standardowa jest obecnie w wersji zapoznawczej.

Tworzenie zasad kopii zapasowych

Przed skonfigurowaniem kopii zapasowych należy utworzyć zasady tworzenia kopii zapasowych, które określają częstotliwość tworzenia kopii zapasowych i czas przechowywania kopii zapasowych.

Zasady tworzenia kopii zapasowych można również utworzyć podczas konfigurowania kopii zapasowej.

Aby utworzyć nowe zasady kopii zapasowych:

  1. Przejdź do centrum kopii zapasowej i wybierz pozycję Zasady , aby utworzyć nowe zasady tworzenia kopii zapasowych.

    Screenshot that shows how to start creating a backup policy.

    Alternatywnie przejdź do pozycji Zasady>kopii zapasowej Centrum>kopii zapasowych Dodaj.

  2. W polu Typ źródła danych wybierz pozycję Kubernetes Service i kontynuuj.

    Screenshot that shows selecting the datasource type.

  3. Wprowadź nazwę zasad kopii zapasowych (na przykład Zasady domyślne) i wybierz magazyn kopii zapasowych (nowy utworzony magazyn kopii zapasowych), w którym należy utworzyć zasady tworzenia kopii zapasowych.

    Screenshot that shows providing the backup policy name.

  4. Na karcie Harmonogram i przechowywanie zdefiniuj częstotliwość tworzenia kopii zapasowych i czas ich przechowywania w warstwie Operacyjnej i Magazynu (nazywanej również magazynem danych).

    Częstotliwość tworzenia kopii zapasowych: wybierz częstotliwość tworzenia kopii zapasowych (co godzinę lub codziennie), a następnie wybierz czas przechowywania kopii zapasowych.

    Screenshot that shows selection of backup frequency.

    Ustawienie przechowywania: Nowe zasady tworzenia kopii zapasowych mają dwie reguły przechowywania.

    Screenshot that shows selection of retention period.

    Można również utworzyć dodatkowe reguły przechowywania do przechowywania kopii zapasowych przez dłuższy czas trwania, który jest wykonywany codziennie lub co tydzień.

    • Ustawienie domyślne: Ta reguła definiuje domyślny czas przechowywania dla wszystkich kopii zapasowych warstwy operacyjnej. Tę regułę można edytować tylko i nie można jej usunąć.

    • Pierwsza pomyślna kopia zapasowa wykonywana codziennie: oprócz reguły domyślnej każda pierwsza pomyślna kopia zapasowa dnia może być przechowywana w magazynie danych operacyjnych i magazynie w warstwie Standardowa. Tę regułę można edytować i usuwać (jeśli chcesz zachować kopie zapasowe w operacyjnym magazynie danych).

      Screenshot that shows the retention configuration for Vault Tier and Operational Tier.

    Można również zdefiniować podobne reguły dla pierwszej pomyślnej kopii zapasowej wykonanej co tydzień, miesiąc i rok.

    Uwaga

    • Oprócz pierwszej pomyślnej kopii zapasowej dnia można zdefiniować reguły przechowywania dla pierwszej pomyślnej kopii zapasowej tygodnia, miesiąca i roku. Jeśli chodzi o priorytet, kolejność to rok, miesiąc, tydzień i dzień.
    • Magazyn danych w warstwie Standardowa jest obecnie w wersji zapoznawczej. Jeśli nie chcesz używać tej funkcji, edytuj regułę przechowywania i wyczyść pole wyboru obok magazynu danych w warstwie Standardowa.
    • Kopie zapasowe przechowywane w warstwie magazynu mogą również być kopiowane w regionie pomocniczym (region sparowany platformy Azure), którego można użyć do przywrócenia klastrów usługi AKS do regionu pomocniczego, gdy region podstawowy jest niedostępny. Aby wybrać tę funkcję, użyj magazynu geograficznie nadmiarowego z włączonym przywracaniem między regionami.
  5. Po skonfigurowaniu ustawień częstotliwości tworzenia kopii zapasowych i przechowywania wybierz przycisk Dalej.

    Screenshot that shows the completion of a backup policy creation.

  6. Na karcie Przeglądanie + tworzenie przejrzyj informacje, a następnie wybierz pozycję Utwórz.

Konfigurowanie kopii zapasowych

Możesz użyć kopii zapasowej usługi AKS, aby utworzyć kopię zapasową całego klastra lub określonych zasobów klastra wdrożonych w klastrze. Klaster można również chronić wiele razy zgodnie z wymaganiami dotyczącymi harmonogramu i przechowywania wdrożonej aplikacji lub wymaganiami dotyczącymi zabezpieczeń.

Uwaga

Aby skonfigurować wiele wystąpień kopii zapasowych dla tego samego klastra usługi AKS:

  • Skonfiguruj kopię zapasową w tym samym magazynie usługi Backup, ale przy użyciu innych zasad tworzenia kopii zapasowych.
  • Skonfiguruj kopię zapasową w innym magazynie usługi Backup.

Aby skonfigurować kopie zapasowe dla klastra usługi AKS:

  1. W witrynie Azure Portal przejdź do klastra usługi AKS, którego kopię zapasową chcesz utworzyć.

  2. W menu zasobów wybierz pozycję Kopia zapasowa, a następnie wybierz pozycję Konfiguruj kopię zapasową.

  3. Aby przygotować klaster usługi AKS do tworzenia kopii zapasowej lub przywracania, wybierz pozycję Zainstaluj rozszerzenie , aby zainstalować rozszerzenie kopii zapasowej w klastrze.

  4. Podaj konto magazynu i kontener obiektów blob jako dane wejściowe.

    Kopie zapasowe klastra usługi AKS są przechowywane w tym kontenerze obiektów blob. Konto magazynu musi znajdować się w tym samym regionie i subskrypcji co klaster.

    Wybierz Dalej.

    Screenshot that shows how to add storage and blob details for backup.

  5. Przejrzyj szczegóły instalacji rozszerzenia, a następnie wybierz pozycję Utwórz.

    Rozpoczyna się instalacja rozszerzenia.

    Screenshot that shows how to review and install the Backup extension.

  6. Po pomyślnym zainstalowaniu rozszerzenia Kopia zapasowa wybierz pozycję Konfiguruj kopię zapasową , aby rozpocząć konfigurowanie kopii zapasowych dla klastra usługi AKS.

    Tę akcję można również wykonać w centrum kopii zapasowych.

    Screenshot that shows the selection of Configure Backup.

  7. Wybierz magazyn kopii zapasowych.

    Screenshot that shows how to choose a vault.

    Magazyn kopii zapasowych powinien mieć włączony zaufany dostęp do klastra usługi AKS do utworzenia kopii zapasowej. Aby włączyć zaufany dostęp, wybierz pozycję Udziel uprawnień. Jeśli ta opcja jest już włączona, wybierz pozycję Dalej.

    Screenshot that shows how to proceed to the next step after granting permission.

    Uwaga

    • Przed włączeniem zaufanego dostępu włącz flagę TrustedAccessPreview funkcji dostawcy Microsoft.ContainerServices zasobów w ramach subskrypcji.
    • Jeśli klaster usługi AKS nie ma zainstalowanego rozszerzenia Kopia zapasowa, możesz wykonać krok instalacji, który konfiguruje kopię zapasową.
  8. Wybierz zasady tworzenia kopii zapasowych, które definiują harmonogram tworzenia kopii zapasowych i ich okresu przechowywania. Następnie kliknij przycisk Dalej.

    Screenshot that shows how to choose a backup policy.

  9. Na karcie Źródła danych wybierz pozycję Dodaj/Edytuj, aby zdefiniować konfigurację wystąpienia kopii zapasowej.

    Screenshot that shows how to define the Backup Instance Configuration.

  10. W okienku Wybieranie zasobów do kopii zapasowej zdefiniuj zasoby klastra, których kopię zapasową chcesz utworzyć.

    Dowiedz się więcej o konfiguracjach kopii zapasowych.

    Screenshot that shows how to define the cluster resources for backup.

  11. W obszarze Grupa zasobów migawki wybierz grupę zasobów, która ma być używana do przechowywania migawek woluminu trwałego (Azure Disk Storage). Następnie wybierz pozycję Zweryfikuj.

    Screenshot that shows how to validate the snapshot resource group.

  12. Po zakończeniu walidacji, jeśli wymagane role nie są przypisane do magazynu w grupie zasobów migawki, zostanie wyświetlony błąd:

    Screenshot that shows a validation error when required permissions aren't assigned.

  13. Aby rozwiązać ten problem, w obszarze Nazwa źródła danych wybierz źródło danych, a następnie wybierz pozycję Przypisz brakujące role.

    Screenshot that shows how to start assigning roles.

    Poniższy zrzut ekranu przedstawia listę ról, które można wybrać:

    Screenshot that shows how to select missing roles.

  14. Po zakończeniu przypisywania roli wybierz pozycję Dalej.

    Screenshot that shows how to proceed to the backup configuration.

  15. Wybierz pozycję Konfiguruj kopię zapasową.

  16. Po zakończeniu konfiguracji wybierz pozycję Dalej.

    Screenshot that shows how to finish backup configuration.

    Wystąpienie kopii zapasowej jest tworzone po zakończeniu konfiguracji kopii zapasowej.

    Screenshot that shows the list of created backup instances.

    Screenshot that shows the backup instance details.

Konfiguracje kopii zapasowych

W ramach możliwości tworzenia kopii zapasowej usługi AKS można utworzyć kopię zapasową wszystkich zasobów klastra lub określonych zasobów klastra. Możesz użyć filtrów dostępnych dla konfiguracji kopii zapasowej, aby wybrać zasoby do utworzenia kopii zapasowej. Zdefiniowane konfiguracje kopii zapasowej odwołują się do wartości nazwa wystąpienia kopii zapasowej. Aby wybrać wartości przestrzeni nazw do utworzenia kopii zapasowej, możesz użyć następujących opcji:

  • Wszystkie (w tym przyszłe przestrzenie nazw): spowoduje to wykonanie kopii zapasowej wszystkich bieżących i przyszłych wartości przestrzeni nazw podczas tworzenia kopii zapasowej bazowych zasobów klastra.

  • Wybierz z listy: wybierz określone wartości przestrzeni nazw w klastrze usługi AKS, aby utworzyć kopię zapasową.

    Aby wybrać określone zasoby klastra do utworzenia kopii zapasowej, możesz użyć etykiet dołączonych do zasobów, aby uwzględnić zasoby w kopii zapasowej. Kopię zapasową są tworzone tylko zasoby z wprowadzonymi etykietami. Można użyć wielu etykiet.

    Uwaga

    Należy dodać etykiety do każdego wdrożonego pliku YAML i utworzyć kopię zapasową. Obejmuje to zasoby o zakresie przestrzeni nazw, takie jak trwałe oświadczenia woluminów i zasoby o zakresie klastra, takie jak woluminy trwałe.

    Jeśli chcesz również utworzyć kopię zapasową zasobów o zakresie klastra, wpisów tajnych i woluminów trwałych, wybierz elementy w obszarze Inne opcje.

Screenshot that shows various backup configurations.

Używanie punktów zaczepienia podczas tworzenia kopii zapasowej usługi AKS

W tej sekcji opisano sposób użycia punktu zaczepienia kopii zapasowej w celu utworzenia migawki spójnej z aplikacją klastra usługi AKS z wdrożonym programem MySQL (trwałym woluminem zawierającym wystąpienie programu MySQL).

Do wykonywania migawek woluminów spójnych na poziomie aplikacji można używać niestandardowych punktów zaczepienia w kopii zapasowej usługi AKS. Woluminy są używane w przypadku baz danych wdrożonych jako konteneryzowane obciążenia.

Korzystając z haka kopii zapasowej, można zdefiniować polecenia, aby zablokować i odblokować zasobnik MySQL, aby można było wykonać migawkę aplikacji woluminu. Rozszerzenie Kopia zapasowa organizuje następnie kroki uruchamiania poleceń w punktach zaczepienia i tworzy migawkę woluminu.

Wykonywana jest spójna na poziomie aplikacji migawka woluminu z wdrożonym programem MySQL, wykonując następujące czynności:

  1. Zasobnik z uruchomioną bazą danych MySQL jest zamrożony, aby żadna nowa transakcja nie została wykonana w bazie danych.
  2. Migawka jest wykonywana z woluminu jako kopii zapasowej.
  3. Zasobnik z uruchomionym programem MySQL jest odłączony, aby można było wykonać transakcje ponownie w bazie danych.

Aby włączyć punkt zaczepienia kopii zapasowej w ramach przepływu konfiguracji kopii zapasowej w celu utworzenia kopii zapasowej bazy danych MySQL:

  1. Zapisz zasób niestandardowy na potrzeby przypinania kopii zapasowych za pomocą poleceń, aby zablokować i odblokować zasobnik PostgreSQL.

    Możesz również użyć następującego przykładowego skryptu YAML postgresbackuphook.yaml, który zawiera wstępnie zdefiniowane polecenia:

    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. Przed skonfigurowaniem kopii zapasowej należy wdrożyć zasób niestandardowy podpięcie kopii zapasowej w klastrze usługi AKS.

    Aby wdrożyć skrypt, uruchom następujące polecenie:

    kubectl apply -f mysqlbackuphook.yaml
    
    
  3. Po zakończeniu wdrażania można skonfigurować kopię zapasową dla klastra usługi AKS.

    Uwaga

    W ramach konfiguracji kopii zapasowej należy podać niestandardową nazwę zasobu i przestrzeń nazw, w której jest wdrażany zasób jako dane wejściowe.

    Screenshot that shows how to add the namespace for the backup configuration.

Następne kroki