Bienvenue > Comment faire une sauvegarde de Kubernetes ? Sauvegarde et restauration de Kubernetes.

Comment faire une sauvegarde de Kubernetes ? Sauvegarde et restauration de Kubernetes.

La première solution de sauvegarde et de restauration Kubernetes au monde pour les professionnels

Bacula Enterprise est la première solution de sauvegarde et de restauration pour les entreprises au monde à offrir une sauvegarde avancée et automatisée de Kubernetes avec support des clusters. Son module de sauvegarde et de restauration Kubernetes rend l’orchestration de conteneurs plus facile à déployer que jamais. Ce module de sauvegarde inclut des volumes persistants, et offre un large éventail de possibilités d’architecture.

Cette sauvegarde automatisée de Kubernetes est la deuxième étape franchie par Bacula ces derniers mois vers une intégration complète de l’orchestration. Elle est disponible à la plupart des niveaux de souscription de Bacula Enterprise sans coût supplémentaire pour une période limitée. Bacula Enterprise est également entièrement compatible avec les environnements Tanzu et Rancher.

Cas d’utilisation de la sauvegarde de Kubernetes

Les personnes qui utilisent Kubernetes en production ont généralement besoin d’une véritable stratégie pour restaurer et mettre à niveau les clusters. Dans le cas où un cluster passe dans un état irrécupérable, la sauvegarde du fichier de configuration et de ses volumes persistants est nécessaire pour revenir à un précédent état stable du cluster Kubernetes.

Les sauvegardes au niveau du cluster Kubernetes donnent aux équipes DevOps les outils nécessaires pour sauvegarder et restaurer l’ensemble de leurs clusters Kubernetes (automatiquement) et les restaurer en une seule action vers un état valide afin de minimiser les interruptions de production. Bacula Systems affirme que la vitesse et l’efficacité des restaurations doivent toujours être prises en compte, même dans un environnement conteneurisé hautement automatisé et résilient.

Dans l’ensemble, la solution unique de Bacula Enterprise pour la sauvegarde et la restauration de Kubernetes protège les données critiques et permet aux développeurs d’être plus productifs. Elle contribue à rationaliser le flux de travail d’un environnement DevOps jusqu’au déploiement de systèmes critiques. Cependant, il y a quatre raisons principales pour lesquelles un département informatique sera probablement en mesure de bénéficier de la mise en place du mécanisme de sauvegarde et de restauration de Bacula Enterprise pour son cluster Kubernetes déployé.

Ces raisons sont les suivantes :

  • En tant que partie intégrante d’une solution pour aider à la reprise en cas de défaillance catastrophique du cluster.
  • Pour aider à dupliquer un environnement
  • Pour aider à migrer les clusters Kubernetes
  • Pour disposer d’un outil de récupération indépendant qui offre une sécurité supplémentaire et une séparation des tâches par rapport aux outils d’automatisation du cluster et au référentiel de code.

Les défis de la sauvegarde Kubernetes

Étant donné que les données elles-mêmes dans les applications cloud-native peuvent être classées comme éphémères, et qu’elles fonctionnent à l’aide d’un ensemble de conteneurs, une gestion est nécessaire. Le système de gestion le plus populaire aujourd’hui est Kubernetes (K8s). Le cœur de ce système de gestion est appelé etcd, et il stocke toutes les informations sur l’état actuel de Kubernetes ainsi que les informations de configuration des clusters de conteneurs, ce qui signifie que tout changement au sein du système qu’est Kubernetes est reflété dans cette partie etcd.

Le premier défi de la sauvegarde de Kubernetes : puisque les nœuds eux-mêmes sont éphémères et ne durent généralement qu’une journée environ, il serait facile de les restaurer au cas où une catastrophe les anéantirait. Le problème est que les nœuds restaurés n’auraient aucune donnée antérieure et devraient obtenir ces données de etcd qui devrait être sauvegardé fréquemment et efficacement pour que l’ensemble du système fonctionne correctement après un événement, puisque etcd lui-même peut être comparé au système neuronal de l’ensemble du système de développement, contenant la connaissance de l’infrastructure en général et le placement des volumes persistants qui ont des données qui peuvent avoir besoin d’être stockées quelque part.

Le deuxième défi de la sauvegarde de Kubernetes est lié à la migration d’un service en Cloud vers un autre, ce qui exige que le système de sauvegarde soit granulaire, car il est probable que certains éléments de la précédente structure Cloud-native d’un utilisateur doivent être modifiés si votre nouveau service en Cloud a une structure différente. Il se peut que vous n’ayez pas besoin de restaurer l’intégralité de etcd, ou de restaurer l’intégralité de l’environnement Kubernetes dans ce cas : c’est là que la nécessité d’être granulaire entre en jeu. Un autre besoin d’un travail granulaire peut survenir si une partie de votre système est corrompue au cours du processus de migration ou pour toute autre raison : il est fort probable que vous n’ayez besoin de restaurer que cette partie spécifique du système au lieu de tout réécrire pour restaurer une petite partie.

Le cycle actuel de développement des applications nous rappelle le troisième défi de la sauvegarde Kubernetes : il est courant que les applications soient testées dans un environnement « sandbox » isolé du reste du système (à savoir l’environnement de production, qui interagit déjà avec les clients). Dans ce cas précis, ces environnements (environnements de développement et de test) devraient être « hydratés » avec les données de l’application pour fournir des résultats de test significatifs. Ces scénarios permettent à des conteneurs ou volumes spécifiques de sauvegarder un environnement de production actuel et de le restaurer dans l’environnement de test : ce qui signifie que vous devrez marquer une partie de votre infrastructure pour sauvegarder à un endroit et restaurer à l’autre endroit ou environnement.

Fonctionnalités de sauvegarde de Kubernetes, de Bacula Enterprise

  • Sauvegarde de la configuration des ressources du cluster Kubernetes
  • Possibilité de restaurer une seule ressource de configuration Kubernetes
  • Possibilité de sauvegarder et de restaurer les données persistantes
  • Possibilité de restaurer la configuration des ressources Kubernetes dans un répertoire local
  • Sauvegarde et restauration Kubernetes pour les volumes persistants
  • Possibilité de restaurer les données des volumes persistants Kubernetes dans un répertoire l local.

Le module Kubernetes de Bacula Enterprise peut sauvegarder un certain nombre de ressources Kubernetes, notamment :

  • Déploiements
  • Pods
  • Services
  • Réclamations de volumes persistants

Avantages du module de sauvegarde et de restauration Kubernetes

  • Sauvegarde et restauration des clusters Kubernetes
  • Restauration rapide des données persistantes d’un cluster
  • Permettre un redéploiement rapide et efficace des ressources d’un cluster
  • Sauvegarde des configurations modifiées pour une sécurité totale, et restauration à l’identique.
  • Sauvegarde des configurations pour les utiliser dans d’autres opérations

Déploiement sûr et efficace des clusters Kubernetes

Les environnements DevOps efficaces doivent être évolutifs et automatisés dans la mesure du possible. Bacula Enterprise est conçu pour être stable, fiable et hautement évolutif et ses modules de sauvegarde de conteneurs visent à alléger la charge de travail des services informatiques et DevOps utilisant Docker, Kuberbetes, SUSE, Caas ou Openshift. Il rend Kuberbetes plus sûr et plus pratique à déployer que jamais.

Que votre environnement de conteneurs déployé soit utilisé pour le lift-and-shift d’applications monolithiques, ou le refactoring d’anciennes applications, ou la création de nouvelles applications distribuées : les développeurs et les administrateurs système peuvent utiliser la technologie avancée de sauvegarde Kubernetes de Bacula avec un niveau de flexibilité particulièrement élevé  via l’interface graphique ou l’interface en ligne de commande de Bacula. Rappelez-vous, ce haut niveau de flexibilité et les possibilités de personnalisation sont fondamentales dans la démarche de Bacula : pour responsabiliser l’utilisateur en introduisant un large éventail d’options à elle / lui : vous atteignez leurs objectifs.

Pourquoi sauvegarder les environnements Kubernetes ?

Comme Kubernetes est de plus en plus déployé dans des environnements opérationnels critiques, les organisations se préoccupent de plus en plus de la sauvegarde et de la restauration de Kubernetes, de la sécurité et d’autres problèmes de gestion des données. Au départ, la majorité des applications conteneurisées étaient privées, ce qui leur permettait d’être plus facilement déployées sur un cloud public. Cependant, à mesure que les applications d’état qui nécessitent l’accès à une base de données ont été conteneurisées à l’aide de Kubernetes, la nécessité d’envisager sérieusement la sauvegarde et la récupération Kubernetes a considérablement augmenté.

Que Kubernetes soit utilisé dans un environnement déployé pour donner une nouvelle vie à des applications monolithiques, pour remanier des applications existantes ou pour mettre en œuvre de nouvelles applications distribuées dynamiques, la nécessité de protéger les données étatiques demeure. La nécessité pour une entreprise de maintenir des accords de niveau de service et de s’assurer que les services basés sur des conteneurs sont toujours disponibles dans un état correct sera toujours au premier plan. Par conséquent, une distribution Kubernetes minimale viable nécessite une sauvegarde et une récupération efficaces des composants du cluster Kubernetes et des données persistantes pour un fonctionnement productif.

Pour les organisations qui exploitent Kubernetes dans des environnements de production, Bacula Enterprise est la première plateforme de sauvegarde et de restauration en entreprise qui fournit une solution de niveau entreprise avec des clusters Kubernetes déployés pour sauvegarder et restaurer les données de manière cohérente sur toutes ses plateformes.

Bacula apporte des avantages en termes d’agilité aux environnements Kubernetes grâce à son degré exceptionnellement élevé de modularité et de flexibilité. Par exemple, Bacula permet également de migrer les volumes persistants entre les clusters Kubernetes : par exemple, au moment de la restauration, vous pouvez spécifier un autre système Kubernetes pour y écrire. Cette agilité offre à son tour aux organisations la possibilité non seulement de gagner du temps, mais aussi de réduire considérablement la complexité, les coûts et le cloisonnement des fournisseurs.

De nombreuses organisations ont déployé Kubernetes sur au moins deux des trois principaux clouds publics, et une bonne partie d’entre elles font tourner des conteneurs sur Amazon Web Services (AWS), Google Cloud Platform (GCP) et Microsoft Azure. L’intégration native de Bacula avec ces plateformes cloud permet d’accélérer et de faciliter les opérations dans ces environnements. Bacula aide également les entreprises à ne pas s’enfermer dans un seul fournisseur, car, outre son propre code source ouvert, il facilite le transfert de Kubernetes d’un cloud à l’autre. Bacula facilite également le cloud hybride grâce à sa facilité d’intégration des services de cloud privé et public pour prendre en charge des tâches parallèles, intégrées ou complémentaires.

La solution unique de Bacula pour la sauvegarde de Kubernetes comprend non seulement les sauvegardes des volumes persistants, mais aussi des fichiers de configuration.

Processus de restauration de Kubernetes

Le module de sauvegarde Kubernetes offre un choix de deux cibles pour les opérations de restauration :

  • Restauration vers le cluster Kubernetes
  • Restauration vers un répertoire local

Pour garantir les meilleures pratiques de sauvegarde et de restauration pour les environnements de conteneurs Kubernetes, les données doivent être sauvegardées automatiquement et les administrateurs système doivent tester régulièrement les sauvegardes pour s’assurer qu’elles feront ce qu’il faut lorsqu’une restauration est nécessaire.

Selecting a Pod for restore

Fonctionnalité de liste de ressources pour la sauvegarde Kubernetes

Le module de sauvegarde Kubernetes de Bacula Enterprise supporte la fonctionnalité de listage des ressources de Bacula Enterprise 8.x ou plus récent. Ce mode affiche des informations utiles sur les ressources Kubernetes disponibles, telles que :

  • Liste des espaces de noms Kubernetes
  • Liste des volumes persistants Kubernetes

Cette fonctionnalité utilise la commande spéciale .ls avec un paramètre de commande plugin=<plugin>.

Kubernetes Restore Options