Partager via


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.

    Capture d’écran montrant comment activer le paramètre Redondance du stockage de sauvegarde.

  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.

    Capture d’écran montrant comment activer le paramètre Restauration interrégion.

  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.

    Capture d’écran montrant comment commencer à créer une stratégie de sauvegarde.

    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.

    Capture d’écran montrant la sélection du type de la source de données.

  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.

    Capture d’écran montrant l’entrée du nom de la stratégie de sauvegarde.

  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.

    Capture d’écran illustrant la sélection d’une fréquence de sauvegarde.

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

    Capture d’écran illustrant la sélection d’une période de rétention.

    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).

      Capture d’écran illustrant la configuration de la rétention pour le niveau Coffre et le niveau Opérationnel.

    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.

    Capture d’écran montrant la fin de la création de la stratégie de sauvegarde.

  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.

    Capture d’écran montrant comment ajouter des détails de stockage et d’objets blob pour la sauvegarde.

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

    L’installation de l’extension démarre.

    Capture d’écran montrant comment passer en revue et installer l’extension Sauvegarde.

  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.

    Capture d’écran montrant la sélection de Configurer Sauvegarde.

  7. Sélectionnez le coffre de sauvegarde.

    Capture d’écran montrant comment choisir un coffre.

    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.

    Capture d’écran montrant comment passer à l’étape suivante après l’octroi de l’autorisation.

    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.

    Capture d’écran montrant comment choisir une stratégie de sauvegarde.

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

    Capture d’écran montrant comment définir la configuration de l’instance Sauvegarde.

  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.

    Capture d’écran montrant comment définir les ressources de cluster pour la sauvegarde.

  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.

    Capture d’écran montrant comment valider un groupe de ressources d’instantanés.

  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 :

    Capture d’écran montrant une erreur de validation lorsque les autorisations requises ne sont pas affectées.

  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.

    Capture d’écran montrant comment commencer à attribuer des rôles.

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

    Capture d’écran montrant comment sélectionner des rôles manquants.

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

    Capture d’écran montrant comment passer à la configuration de la sauvegarde.

  15. Sélectionnez Configurer la sauvegarde.

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

    Capture d’écran montrant comment terminer la configuration de la sauvegarde.

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

    Capture d’écran montrant la liste des instances de sauvegarde créées.

    Capture d’écran montrant les détails de l’instance de sauvegarde.

Configurations de sauvegarde

Sauvegarde Azure pour AKS vous permet de définir la limite d’application au sein du cluster AKS que vous souhaitez sauvegarder. Vous pouvez utiliser les filtres disponibles dans les configurations de sauvegarde pour choisir les ressources à sauvegarder et également pour exécuter des hooks personnalisés. Les configurations de sauvegarde définies sont référencées par la valeur du Nom de l’instance Sauvegarde. Les filtres ci-dessous sont disponibles pour définir la limite de votre application :

  1. Pour Sélectionner des espaces de noms à sauvegarder, vous pouvez sélectionner Tous pour sauvegarder tous les espaces de noms existants et futurs dans le cluster ou vous pouvez sélectionner Choisir dans la liste pour sélectionner des espaces de noms spécifiques pour la sauvegarde.

    Capture d’écran montrant comment sélectionner des espaces de noms à inclure dans la sauvegarde.

  2. Développez Paramètres de ressources supplémentaires pour voir les filtres que vous pouvez utiliser pour choisir des ressources de cluster à sauvegarder. Vous pouvez choisir de sauvegarder des ressources en fonction des catégories suivantes :

    • Étiquettes : vous pouvez filtrer des ressources AKS en utilisant des étiquettes que vous affectez aux types de ressources. Entrez des étiquettes sous forme de paires clé/valeur. Associez plusieurs étiquettes en utilisant une logique AND.

    Par exemple, si vous entrez les étiquettes env=prod;tier!=web, le processus sélectionne les ressources qui ont une étiquette avec la clé env et la valeur prod et une étiquette avec la clé tier pour laquelle la valeur qui n’est pas web.

    • Groupes d’API : vous pouvez également inclure des ressources en fournissant le groupe d’API AKS et Kind. Par exemple, vous pouvez choisir pour des ressources AKS de sauvegarde telles que Déploiements. Vous pouvez accéder à la liste des groupes d’API définis par Kubernetes ici.

    • Autres options : vous pouvez activer ou désactiver la sauvegarde pour des ressources associées au cluster, des volumes persistants et des secrets. Par défaut, les ressources limitées au cluster et les volumes persistants sont activés

    Capture d’écran montrant le volet Paramètres de ressources supplémentaires.

    Remarque

    Tous ces paramètres de ressource sont combinés et appliqués via une logique AND.

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.

Capture d’écran montrant les différentes configurations de sauvegarde.

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.

    Capture d’écran montrant comment ajouter l’espace de noms pour la configuration de sauvegarde.

Étapes suivantes