Zálohování služby Azure Kubernetes Service pomocí služby Azure Backup

Tento článek popisuje, jak nakonfigurovat a zálohovat službu Azure Kubernetes Service (AKS).

Azure Backup můžete použít k zálohování clusterů AKS (prostředků clusteru a trvalých svazků připojených ke clusteru) pomocí rozšíření Backup, které musí být nainstalované v clusteru. Trezor služby Backup komunikuje s clusterem prostřednictvím rozšíření Backup za účelem provádění operací zálohování a obnovení.

Poznámka:

Trezorové zálohování a obnovení mezi oblastmi pro AKS pomocí služby Azure Backup jsou aktuálně ve verzi Preview.

Než začnete

  • Zálohování AKS v současné době podporuje pouze trvalé svazky založené na službě Azure Disk Storage (povolené ovladačem CSI). Zálohy se ukládají jenom v provozním úložišti dat (zálohovaná data se ukládají ve vašem tenantovi a nepřesouvají se do trezoru). Trezor služby Backup a cluster AKS musí být ve stejné oblasti.

  • Zálohování AKS používá k ukládání záloh kontejner objektů blob a skupinu prostředků. Kontejner objektů blob obsahuje prostředky clusteru AKS. Snímky trvalých svazků jsou uložené ve skupině prostředků. Cluster AKS a umístění úložiště musí být ve stejné oblasti. Zjistěte , jak vytvořit kontejner objektů blob.

  • Zálohování AKS v současné době podporuje jednorázové zálohování. Podporuje také častější zálohování (v 4hodinovém, 8hodinovém a 12hodinovém intervalu) za den. Toto řešení umožňuje uchovávat data pro obnovení po dobu až 360 dnů. Zjistěte, jak vytvořit zásadu zálohování.

  • Abyste mohli nakonfigurovat operace zálohování a obnovení clusteru AKS, musíte nainstalovat rozšíření Zálohování. Přečtěte si další informace o rozšíření Backup.

  • Než zahájíte operace konfigurace zálohování a obnovení, Microsoft.DataProtectionujistěte se, TrustedAccessPreview že Microsoft.KubernetesConfigurationjsou pro vaše předplatné zaregistrované příznaky Microsoft.ContainerService funkce a že je zapnutá.

  • Před zahájením operace zálohování nebo obnovení pro zálohování AKS se ujistěte, že jste provedli všechny požadavky .

Další informace o podporovaných scénářích, omezeních a dostupnosti najdete v matici podpory.

Vytvoření trezoru služby Backup

Trezor služby Backup je entita správy, která ukládá body obnovení zpracovávané v průběhu času. Trezor služby Backup také poskytuje rozhraní pro provádění operací zálohování. Mezi operace patří převzetí záloh na vyžádání, obnovení a vytváření zásad zálohování. Zálohování AKS vyžaduje, aby trezor služby Backup a cluster AKS byly ve stejné oblasti. Zjistěte , jak vytvořit trezor služby Backup.

Poznámka:

Trezor služby Backup je nový prostředek, který se používá k zálohování nově podporovaných zdrojů dat. Trezor služby Backup se liší od trezoru služby Recovery Services.

Pokud chcete pomocí služby Azure Backup chránit clustery AKS před jakýmkoli výpadkem v jednotlivých oblastech:

  1. Při vytváření trezoru nastavte parametr redundance úložiště zálohování na globálně redundantní . Jakmile je nastavená redundance trezoru, nemůžete ji zakázat.

    Screenshot shows how to enable the Backup Storage Redundance parameter.

  2. Nastavte parametr obnovení mezi oblastmi v části Vlastnosti trezoru jako povolený. Jakmile je tento parametr povolený, nemůžete ho zakázat.

    Screenshot shows how to enable the Cross Region Restore parameter.

  3. Vytvořte instanci zálohování pomocí zásad zálohování s dobou uchovávání dat nastavenou pro úložiště dat úrovně Vault úrovně Standard. Každý bod obnovení uložený v tomto úložišti dat bude v sekundární oblasti.

    Poznámka:

    Úložiště dat úrovně Vault-Standard je aktuálně ve verzi Preview.

Vytvoření zásad zálohování

Před konfigurací zálohování je potřeba vytvořit zásadu zálohování, která definuje frekvenci zálohování a dobu uchovávání záloh.

Zásady zálohování můžete vytvořit také při konfiguraci zálohování.

Vytvoření zásad zálohování:

  1. Přejděte do Centra zálohování a výběrem možnosti Zásady vytvořte novou zásadu zálohování.

    Screenshot that shows how to start creating a backup policy.

    Případně přejděte do centra>zálohování – Přidejte zásady>zálohování.

  2. Jako typ Zdroje dat vyberte Kubernetes Service a pokračujte.

    Screenshot that shows selecting the datasource type.

  3. Zadejte název zásady zálohování (například výchozí zásady) a vyberte trezor záloh (nový trezor služby Backup, který jste vytvořili), ve kterém je potřeba vytvořit zásady zálohování.

    Screenshot that shows providing the backup policy name.

  4. Na kartě Plán + uchovávání definujte frekvenci zálohování a dobu, po kterou je potřeba uchovávat v provozní úrovni a vrstvě trezoru (označovanou také jako úložiště dat).

    Frekvence zálohování: Vyberte frekvenci zálohování (hodinově nebo denně) a pak zvolte dobu uchovávání záloh.

    Screenshot that shows selection of backup frequency.

    Nastavení uchovávání informací: Nová zásada zálohování má dvě pravidla uchovávání informací.

    Screenshot that shows selection of retention period.

    Můžete také vytvořit další pravidla uchovávání informací pro ukládání záloh po delší dobu trvání, která se provádějí denně nebo týdně.

    • Výchozí: Toto pravidlo definuje výchozí dobu uchovávání informací pro všechny zálohy na provozní úrovni. Toto pravidlo můžete upravit jenom a nemůžete ho odstranit.

    • První úspěšné zálohování pořízené každý den: Kromě výchozího pravidla je možné uchovávat každou první úspěšnou zálohu dne v úložišti provozních dat a úložišti trezoru úrovně Standard. Toto pravidlo můžete upravit a odstranit (pokud chcete zachovat zálohy v provozním úložišti dat).

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

    Můžete také definovat podobná pravidla pro první úspěšné zálohování pořízené každý týden, měsíc a rok.

    Poznámka:

    • Kromě prvního úspěšného zálohování dne můžete definovat pravidla uchovávání informací pro první úspěšnou zálohu týdne, měsíce a roku. Z hlediska priority je objednávka rok, měsíc, týden a den.
    • Úložiště dat Vault-Standard je aktuálně ve verzi Preview. Pokud tuto funkci nechcete používat, upravte pravidlo uchovávání informací a zrušte zaškrtnutí políčka vedle úložiště dat úrovně Vault standard.
    • Zálohy uložené ve vrstvě trezoru se také můžou zkopírovat do sekundární oblasti (spárované oblasti Azure), kterou můžete použít k obnovení clusterů AKS do sekundární oblasti, pokud primární oblast není k dispozici. Pokud chcete tuto funkci zvolit, použijte geograficky redundantní trezor s povoleným obnovením mezi oblastmi.
  5. Pokud je nakonfigurovaná frekvence zálohování a nastavení uchovávání, vyberte Další.

    Screenshot that shows the completion of a backup policy creation.

  6. Na kartě Zkontrolovat a vytvořit zkontrolujte informace a pak vyberte Vytvořit.

Konfigurace záloh

Zálohování AKS můžete použít k zálohování celého clusteru nebo konkrétních prostředků clusteru nasazených v clusteru. Cluster můžete také chránit vícekrát podle plánu nasazené aplikace a požadavků na uchovávání informací nebo požadavků na zabezpečení.

Poznámka:

Nastavení více instancí zálohování pro stejný cluster AKS:

  • Nakonfigurujte zálohování ve stejném trezoru služby Backup, ale použijte jiné zásady zálohování.
  • Nakonfigurujte zálohování v jiném trezoru služby Backup.

Konfigurace záloh pro cluster AKS:

  1. Na webu Azure Portal přejděte do clusteru AKS, který chcete zálohovat.

  2. V nabídce prostředků vyberte Zálohovat a pak vyberte Konfigurovat zálohování.

  3. Pokud chcete cluster AKS připravit na zálohování nebo obnovení, vyberte Nainstalovat rozšíření pro instalaci rozšíření zálohování v clusteru.

  4. Jako vstup zadejte účet úložiště a kontejner objektů blob.

    Zálohy clusteru AKS se ukládají do tohoto kontejneru objektů blob. Účet úložiště musí být ve stejné oblasti a předplatném jako cluster.

    Vyberte Další.

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

  5. Zkontrolujte podrobnosti o instalaci rozšíření a pak vyberte Vytvořit.

    Spustí se instalace rozšíření.

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

  6. Po úspěšné instalaci rozšíření Zálohování vyberte Konfigurovat zálohování a začněte konfigurovat zálohy pro cluster AKS.

    Tuto akci můžete provést také v Centru zálohování.

    Screenshot that shows the selection of Configure Backup.

  7. Vyberte trezor služby Backup.

    Screenshot that shows how to choose a vault.

    Trezor záloh by měl mít povolený důvěryhodný přístup pro zálohování clusteru AKS. Pokud chcete povolit důvěryhodný přístup, vyberte Udělit oprávnění. Pokud už je povolená, vyberte Další.

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

    Poznámka:

    • Před povolením důvěryhodného přístupu povolte TrustedAccessPreview příznak funkce pro Microsoft.ContainerServices poskytovatele prostředků v předplatném.
    • Pokud cluster AKS nemá nainstalované rozšíření Backup, můžete provést krok instalace, který nakonfiguruje zálohování.
  8. Vyberte zásadu zálohování, která definuje plán zálohování a dobu uchovávání. Pak vyberte Další.

    Screenshot that shows how to choose a backup policy.

  9. Na kartě Zdroje dat vyberte Přidat/Upravit a definujte konfiguraci instance zálohování.

    Screenshot that shows how to define the Backup Instance Configuration.

  10. V podokně Vybrat prostředky k zálohování definujte prostředky clusteru, které chcete zálohovat.

    Přečtěte si další informace o konfiguracích zálohování.

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

  11. Jako skupinu prostředků snímků vyberte skupinu prostředků, která se má použít k ukládání snímků trvalého svazku (Azure Disk Storage). Pak vyberte Ověřit.

    Screenshot that shows how to validate the snapshot resource group.

  12. Po dokončení ověření se v případě, že požadované role nejsou přiřazené k trezoru ve skupině prostředků snímku, zobrazí se chyba:

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

  13. Pokud chcete tuto chybu vyřešit, vyberte v části Název zdroje dat zdroj dat a pak vyberte Přiřadit chybějící role.

    Screenshot that shows how to start assigning roles.

    Následující snímek obrazovky ukazuje seznam rolí, které můžete vybrat:

    Screenshot that shows how to select missing roles.

  14. Po dokončení přiřazení role vyberte Další.

    Screenshot that shows how to proceed to the backup configuration.

  15. Vyberte Konfigurovat zálohování.

  16. Po dokončení konfigurace vyberte Další.

    Screenshot that shows how to finish backup configuration.

    Po dokončení konfigurace zálohování se vytvoří instance zálohování.

    Screenshot that shows the list of created backup instances.

    Screenshot that shows the backup instance details.

Konfigurace zálohování

Jako součást funkce zálohování AKS můžete zálohovat všechny prostředky clusteru nebo konkrétní prostředky clusteru. K výběru prostředků, které se mají zálohovat, můžete použít filtry, které jsou k dispozici pro konfiguraci zálohování. Na definované konfigurace zálohování se odkazují hodnoty pro název instance zálohování. K výběru hodnot Oborů názvů , které chcete zálohovat, můžete použít následující možnosti:

  • Vše (včetně budoucích oborů názvů):: Při zálohování základních prostředků clusteru se zálohují všechny aktuální a budoucí hodnoty pro obory názvů.

  • Vyberte ze seznamu: Vyberte konkrétní hodnoty pro obory názvů v clusteru AKS, které chcete zálohovat.

    Pokud chcete vybrat konkrétní prostředky clusteru, které chcete zálohovat, můžete použít popisky, které jsou připojené k prostředkům, a zahrnout je do zálohy. Zálohují se jenom prostředky, které mají zadané popisky. Můžete použít více popisků.

    Poznámka:

    Popisky byste měli přidat do každého souboru YAML, který je nasazený a zálohovaný. Patří sem prostředky s oborem názvů, jako jsou deklarace identity trvalých svazků, a prostředky s oborem clusteru, jako jsou trvalé svazky.

    Pokud chcete také zálohovat prostředky s oborem clusteru, tajné kódy a trvalé svazky, vyberte položky v části Další možnosti.

Screenshot that shows various backup configurations.

Použití háků během zálohování AKS

Tato část popisuje, jak pomocí háku zálohování vytvořit snímek clusteru AKS konzistentní vzhledem k aplikacím s nasazeným MySQL (trvalý svazek, který obsahuje instanci MySQL).

Pomocí vlastních háků v zálohování AKS můžete provádět snímky svazků konzistentních vzhledem k aplikacím. Svazky se používají pro databáze nasazené jako kontejnerizované úlohy.

Pomocí háku zálohování můžete definovat příkazy, které ukotvují a odblokují pod MySQL, aby bylo možné pořídit snímek aplikace svazku. Rozšíření Backup pak orchestruje kroky spuštění příkazů v hookech a pořídí snímek svazku.

Snímek svazku s nasazeným MySQL konzistentní vzhledem k aplikacím se provádí pomocí následujících akcí:

  1. Pod, na kterém běží MySQL, se zablokuje, aby se v databázi neprováděla žádná nová transakce.
  2. Snímek se pořídí jako záložní svazek.
  3. Pod, na kterém běží MySQL, je unfrozen, takže transakce je možné provést znovu v databázi.

Povolení háku zálohování jako součásti toku konfigurace zálohování pro zálohování pro zálohování MySQL:

  1. Napište vlastní prostředek pro hák zálohování pomocí příkazů, které zablokuje a odblokuje pod PostgreSQL.

    Můžete také použít následující ukázkový skript YAML postgresbackuphook.yaml, který obsahuje předdefinované příkazy:

    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. Před konfigurací zálohování je nutné nasadit vlastní prostředek háku zálohování v clusteru AKS.

    Skript nasadíte spuštěním následujícího příkazu:

    kubectl apply -f mysqlbackuphook.yaml
    
    
  3. Po dokončení nasazení můžete nakonfigurovat zálohování clusteru AKS.

    Poznámka:

    Jako součást konfigurace zálohování musíte zadat vlastní název prostředku a obor názvů, do kterého se prostředek nasadí jako vstup.

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

Další kroky