Sauvegarder Azure Kubernetes Service à l’aide de Sauvegarde Azure

Cet article explique comment configurer et sauvegarder Azure Kubernetes Service (AKS).

Vous pouvez utiliser Sauvegarde Azure pour sauvegarder des clusters AKS (ressources de cluster et volumes persistants attachés au cluster) à l’aide de l’extension de sauvegarde, qui doit être installée dans le cluster. Le coffre de sauvegarde communique avec le cluster via l’extension de sauvegarde pour effectuer des opérations de sauvegarde et de restauration.

Remarque

La sauvegarde archivée et la restauration inter-région pour AKS avec Sauvegarde Azure sont actuellement en préversion.

Avant de commencer

  • Actuellement, la sauvegarde AKS prend uniquement en charge les volumes persistants basés sur le stockage sur disque Azure (activés par le pilote CSI). Les sauvegardes sont stockées dans un magasin de données opérationnel uniquement (les données de sauvegarde sont stockées dans votre tenant et ne sont pas déplacées vers un coffre). Le coffre de sauvegarde et le cluster AKS doivent se trouver dans la même région.

  • La sauvegarde AKS utilise un conteneur d’objets blob et un groupe de ressources pour stocker les sauvegardes. Le conteneur d’objets blob contient les ressources de cluster AKS. Les captures instantanées de volumes persistants sont stockées dans le groupe de ressources. Le cluster AKS et les emplacements de stockage doivent être dans la même région. Découvrez comment créer un conteneur d’objets blob.

  • Actuellement, la sauvegarde AKS prend en charge la sauvegarde une fois par jour. Il permet également d’effectuer des sauvegardes plus fréquentes (par intervalles de 4, 8 et 12 heures) par jour. Cette solution vous permet de conserver vos données à des fins de restauration pendant jusqu’à 360 jours. Découvrez comment créer une stratégie de sauvegarde.

  • Vous devez installer l’extension de sauvegarde pour configurer les opérations de sauvegarde et de restauration pour un cluster AKS. En savoir plus sur l’extension de sauvegarde.

  • Vérifiez que Microsoft.KubernetesConfiguration et Microsoft.DataProtection, ainsi que l’indicateur de fonctionnalité TrustedAccessPreview dans Microsoft.ContainerService sont inscrits pour votre abonnement, avant que vous ne lanciez la configuration de la sauvegarde et les opérations de restauration.

  • Veillez à respecter tous les prérequis avant que vous ne démarriez l’opération de sauvegarde ou de restauration pour la sauvegarde AKS.

Pour plus d’informations sur les scénarios pris en charge, les limitations et les disponibilités, consultez la matrice de prise en charge.

Créer un coffre de sauvegarde

Un coffre de sauvegarde est une entité de gestion qui stocke les points de récupération traités au fil du temps. Un coffre de sauvegarde fournit également une interface pour effectuer les opérations de sauvegarde. Les opérations comprennent l’exécution de sauvegardes à la demande, le lancement de restaurations et la création de stratégies de sauvegarde. La sauvegarde AKS nécessite que le coffre de sauvegarde et le cluster AKS se trouvent dans la même région. Découvrez comment créer un coffre de sauvegarde.

Remarque

Un coffre de sauvegarde est une nouvelle ressource utilisée pour sauvegarder les sources de données nouvellement prises en charge. Un coffre de sauvegarde est différent d’un coffre Recovery Services.

Si vous souhaitez utiliser Sauvegarde Azure pour protéger vos clusters AKS contre une panne régionale :

  1. Définissez le paramètre Redondance du stockage de sauvegarde sur Globalement redondant pendant la création du coffre. Une fois la redondance d’un coffre définie, vous ne pouvez pas la désactiver.

    Screenshot shows how to enable the Backup Storage Redundance parameter.

  2. Définissez le paramètre Restauration inter-régions sous Propriétés du coffre sur Activé. Une fois ce paramètre activé, vous ne pouvez pas le désactiver.

    Screenshot shows how to enable the Cross Region Restore parameter.

  3. Créez une instance de sauvegarde à l’aide d’une stratégie de sauvegarde avec une durée de rétention définie pour le magasin de données standard du coffre. Chaque point de récupération stocké dans ce magasin de données se trouvera dans la région secondaire.

    Remarque

    Le magasin de données standard du coffre est actuellement en préversion.

Créer une stratégie de sauvegarde

Avant de configurer les sauvegardes, vous devez créer une stratégie de sauvegarde qui définit la fréquence des sauvegardes et la durée de conservation des sauvegardes.

Vous pouvez également créer une stratégie de sauvegarde lorsque vous configurez la sauvegarde.

Pour créer une stratégie de sauvegarde :

  1. Accédez au Centre de sauvegarde et sélectionnez Stratégie pour créer une stratégie de sauvegarde.

    Screenshot that shows how to start creating a backup policy.

    Vous pouvez également accéder à Centre de sauvegarde>Stratégies de sauvegarde>Ajouter.

  2. Pour le Type de source de données, sélectionnez Kubernetes Service et continuez.

    Screenshot that shows selecting the datasource type.

  3. Entrez un nom pour la stratégie de sauvegarde (par exemple, Stratégie par défaut), puis sélectionnez le Coffre de sauvegarde (le nouveau coffre de sauvegarde que vous avez créé) où la stratégie de sauvegarde doit être créée.

    Screenshot that shows providing the backup policy name.

  4. Sous l’onglet Planification + rétention, définissez la fréquence des sauvegardes et la durée pendant laquelle elles doivent être conservées au niveau Opérationnel et au niveau Coffre (également appelés magasins de données).

    Fréquence de sauvegarde : sélectionnez la fréquence de sauvegarde (horaire ou quotidienne), puis choisissez la durée de conservation des sauvegardes.

    Screenshot that shows selection of backup frequency.

    Paramètres de conservation : une nouvelle stratégie de sauvegarde a deux règles de conservation.

    Screenshot that shows selection of retention period.

    Vous pouvez également créer des règles de conservation supplémentaires pour stocker pendant une durée plus longue les sauvegardes effectuées quotidiennement ou hebdomadairement.

    • Par défaut : cette règle définit la durée de conservation par défaut pour toutes les sauvegardes de niveau opérationnel effectuées. Vous pouvez uniquement modifier cette règle. Vous ne pouvez pas la supprimer.

    • Première sauvegarde réussie effectuée chaque jour : en plus de la règle par défaut, chaque première sauvegarde réussie de la journée peut être conservée dans le magasin de données Opérationnel et le magasin Coffre standard. Vous pouvez modifier et supprimer cette règle (si vous souhaitez conserver les sauvegardes dans le magasin de données Opérationnel).

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

    Vous pouvez également définir des règles similaires pour la Première sauvegarde réussie effectuée chaque semaine, mois et année.

    Remarque

    • Outre la première sauvegarde réussie de la journée, vous pouvez définir les règles de conservation pour la première sauvegarde réussie de la semaine, du mois et de l’année. L’ordre de priorité est le suivant : année, mois, semaine et jour.
    • Le magasin de données standard du coffre est actuellement en préversion. Si vous ne souhaitez pas utiliser la fonctionnalité, modifiez la règle de rétention et désélectionnez la case en regard du magasin de données standard du coffre.
    • Les sauvegardes stockées dans le niveau Coffre peuvent également être copiées dans la région secondaire (région jumelée Azure) que vous pouvez utiliser pour restaurer des clusters AKS dans une région secondaire lorsque la région primaire n’est pas disponible. Pour choisir cette fonctionnalité, utilisez un coffre géoredondant avec Restauration inter-région activée.
  5. Lorsque la fréquence des sauvegardes et les paramètres de conservation sont configurés, sélectionnez Suivant.

    Screenshot that shows the completion of a backup policy creation.

  6. Sous l’onglet Examiner et créer, vérifiez les informations, puis sélectionnez Créer.

Configurer des sauvegardes

Vous pouvez utiliser la sauvegarde AKS pour sauvegarder un cluster entier ou des ressources spécifiques déployées dans le cluster. Vous pouvez également protéger un cluster plusieurs fois en fonction des exigences de planification et de rétention des applications déployées ou des exigences de sécurité.

Remarque

Pour configurer plusieurs instances de sauvegarde pour le même cluster AKS :

  • Configurez la sauvegarde dans le même coffre de sauvegarde, mais en utilisant une stratégie de sauvegarde différente.
  • Configurez la sauvegarde dans un autre coffre de sauvegarde.

Pour configurer des sauvegardes pour le cluster AKS :

  1. Sur le Portail Azure, accédez au cluster AKS que vous souhaitez sauvegarder.

  2. Dans le menu de ressources, sélectionnez Sauvegarde, puis Configurer la sauvegarde.

  3. Pour préparer le cluster AKS à la sauvegarde ou à la restauration, sélectionnez Installer l’extension pour installer l’extension de sauvegarde dans le cluster.

  4. Fournissez un compte de stockage et un conteneur d’objets blob comme entrée.

    Vos sauvegardes de cluster AKS sont stockées dans ce conteneur d’objets blob. Le compte de stockage doit se trouver dans la même région et le même abonnement que le cluster.

    Cliquez sur Suivant.

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

  5. Passez en revue les détails d’installation de l’extension, puis sélectionnez Créer.

    L’installation de l’extension démarre.

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

  6. Lorsque l’extension Backup est installée avec succès, sélectionnez Configurer la sauvegarde pour commencer à configurer les sauvegardes pour votre cluster AKS.

    Vous pouvez également effectuer cette action dans le Centre de sauvegarde.

    Screenshot that shows the selection of Configure Backup.

  7. Sélectionnez le coffre de sauvegarde.

    Screenshot that shows how to choose a vault.

    Accès approuvé doit être activé dans le coffre de sauvegarde pour que le cluster AKS soit sauvegardé. Pour activer l’Accès approuvé, sélectionnez Accorder l’autorisation. S’il est déjà activé, sélectionnez Suivant.

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

    Remarque

    • Avant d’activer l’Accès approuvé, activez l’indicateur de fonctionnalité TrustedAccessPreview pour le fournisseur de ressources Microsoft.ContainerServices sur l’abonnement.
    • Si l’extension de sauvegarde n’est pas installée sur le cluster AKS, vous pouvez effectuer l’étape d’installation qui configure la sauvegarde.
  8. Sélectionnez la stratégie de sauvegarde, qui définit la planification des sauvegardes et leur période de rétention. Sélectionnez ensuite Suivant.

    Screenshot that shows how to choose a backup policy.

  9. Sous l’onglet Sources de données, sélectionnez Ajouter/Modifier pour définir la configuration de l’instance de sauvegarde.

    Screenshot that shows how to define the Backup Instance Configuration.

  10. Dans le volet Sélectionner des ressources à sauvegarder , définissez les ressources de cluster que vous souhaitez sauvegarder.

    En savoir plus sur les configurations de sauvegarde.

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

  11. Pour le Groupe de ressources d’instantané, sélectionnez le groupe de ressources à utiliser pour stocker les instantanés de volume persistant (Stockage sur disque Azure). Ensuite, sélectionnez Valider.

    Screenshot that shows how to validate the snapshot resource group.

  12. Une fois la validation terminée, si les rôles requis ne sont pas affectés au coffre dans le groupe de ressources d’instantané, une erreur s’affiche :

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

  13. Pour résoudre l’erreur, sous Nom de la source de données, sélectionnez la source de données, puis Affecter des rôles manquants.

    Screenshot that shows how to start assigning roles.

    La capture d’écran suivante montre la liste des rôles que vous pouvez sélectionner :

    Screenshot that shows how to select missing roles.

  14. Une fois l’attribution de rôle terminée, sélectionnez Suivant.

    Screenshot that shows how to proceed to the backup configuration.

  15. Sélectionnez Configurer la sauvegarde.

  16. Une fois la configuration terminée, sélectionnez Suivant.

    Screenshot that shows how to finish backup configuration.

    L’instance de sauvegarde est créée lorsque la configuration de la sauvegarde est terminée.

    Screenshot that shows the list of created backup instances.

    Screenshot that shows the backup instance details.

Configurations de sauvegarde

Dans le cadre de la capacité de sauvegarde d’AKS, vous pouvez sauvegarder toutes les ressources du cluster ou des ressources spécifiques du cluster. Vous pouvez utiliser les filtres disponibles pour la configuration de sauvegarde pour choisir les ressources à sauvegarder. Les configurations de sauvegarde définies sont référencées par les valeurs du Nom de l’instance de sauvegarde. Vous pouvez utiliser les options suivantes pour choisir les valeurs Espaces de noms pour la sauvegarde :

  • Tous (y compris les espaces de nommage futurs) : Cette option permet de sauvegarder toutes les valeurs actuelles et futures des espaces de noms lorsque les ressources sous-jacentes de cluster sont sauvegardées.

  • Choisir dans la liste : sélectionnez les caleurs des espaces de noms spécifiques dans le cluster AKS à sauvegarder.

    Pour sélectionner des ressources de cluster spécifiques à sauvegarder, vous pouvez utiliser des étiquettes attachées aux ressources pour inclure les ressources dans la sauvegarde. Seules les ressources qui ont les étiquettes que vous entrez sont sauvegardées. Vous pouvez utiliser plusieurs étiquettes.

    Remarque

    Vous devez ajouter les étiquettes à chaque fichier YAML déployé qui est à sauvegarder. Il s’agit de ressources à l’échelle de l’espace de noms, telles que les requêtes de volumes persistants, et de ressources à l’échelle du cluster, telles que les volumes persistants.

    Si vous souhaitez également sauvegarder des ressources, des secrets et des volumes persistants gérés par des clusters, sélectionnez les éléments sous Autres options.

Screenshot that shows various backup configurations.

Utilisez des Hooks lors de la sauvegarde AKS

Cette section décrit comment utiliser un crochet de sauvegarde pour créer un instantané cohérent avec les applications du cluster AKS avec MySQL déployé (un volume persistant qui contient l’instance MySQL).

Vous pouvez utiliser des hooks personnalisés dans la sauvegarde AKS pour effectuer des captures instantanées cohérentes avec les applications des volumes. Les volumes sont utilisés pour les bases de données déployées en tant que charges de travail en conteneur.

À l’aide d’un Hook de sauvegarde, vous pouvez définir les commandes pour figer et libérer un pod MySQL afin qu’un instantané d’application du volume puisse être pris. L’extension de sauvegarde orchestre ensuite les étapes d’exécution des commandes dans les crochets et prend la capture instantanée du volume.

Un instantané cohérent d’une application d’un volume avec MySQL déployé est effectué en effectuant les actions suivantes :

  1. Le pod exécutant MySQL est figé afin qu’aucune nouvelle transaction ne soit effectuée sur la base de données.
  2. Une capture instantanée est prise du volume en tant que sauvegarde.
  3. Le pod exécutant MySQL n’est pas configuré de manière à ce que les transactions puissent être effectuées à nouveau sur la base de données.

Pour activer un hook de sauvegarde dans le cadre du flux de configuration de la sauvegarde pour sauvegarder MySQL :

  1. Écrivez la ressource personnalisée pour le Hook de sauvegarde avec des commandes pour figer et libérer un pod PostgreSQL.

    Vous pouvez également utiliser l’exemple de script YAML suivant postgresbackuphook.yaml, qui a des commandes prédéfinies :

    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. Avant de configurer une sauvegarde, vous devez déployer la ressource personnalisée du crochet de sauvegarde dans le cluster AKS.

    Pour déployer le script, exécutez la commande suivante :

    kubectl apply -f mysqlbackuphook.yaml
    
    
  3. Lorsque le déploiement est terminé, vous pouvez configurer la sauvegarde pour le cluster AKS.

    Remarque

    Dans le cadre d’une configuration de sauvegarde, vous devez fournir le nom de la ressource personnalisée et l’espace de noms dans lequel la ressource est déployée.

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

Étapes suivantes