Comment j’utilise l’interface graphique de Bacula pour la sauvegarde et la restauration


  • Français


  • Aujourd’hui, alors que les meilleures pratiques de sauvegarde et de restauration sont plus importantes que jamais, il est bon de savoir que des solutions de sauvegarde d’entreprise entièrement open source haut de gamme existent même pour les plus grandes organisations. La solution open source la plus puissante de sa catégorie est peut-être Bacula, un logiciel hautement évolutif pour la sauvegarde, la restauration et la vérification des données. Il s’agit d’un projet mature mais encore en développement significatif utilisé par les MSP, les organisations de défense, les ISV et les sociétés de commerce électronique du monde entier et fonctionne sur de nombreuses versions Linux différentes. Bacula a une communauté florissante et de nombreux passionnés de Linux l’utilisent pour fournir un niveau élevé de protection des données.

    Avec les nombreuses perturbations graves causées par les ransomwares aujourd’hui, il est essentiel que le système client sauvegardé ne soit jamais conscient des cibles de stockage et n’ait aucune information d’identification pour y accéder. C’est vrai dans le cas de Bacula, et en plus :

    • Les hôtes Storage et Storage Deamon sont des systèmes dédiés, strictement sécurisés, n’autorisant que le trafic lié à Bacula et l’accès administrateur et rien d’autre.
    • Le “Director” de Bacula (module de gestion de base) est un système dédié avec le même accès restrictif.

    Bacula propose de nombreuses options de configuration supplémentaires pour adapter les sauvegardes aux besoins des utilisateurs. Il fonctionne dans les réseaux et peut sauvegarder les hôtes distants et locaux. Pour les nouveaux utilisateurs, cela peut sembler complexe, mais heureusement, le projet Bacula fournit également le Baculum interface web pour faciliter l’administration. De nombreux utilisateurs de Linux sont plus qu’heureux de s’appuyer sur l’interface de ligne de commande de Bacula pour exploiter sa gamme considérable de fonctionnalités, mais il est parfois bon d’avoir également une interface graphique efficace. C’est là qu’intervient le Baculum open source.

    Baculum

    Le processus d’installation de Baculum est relativement simple car ses référentiels fournissent des packages binaires pour les distributions Linux populaires. Après l’installation, vous avez accès à deux assistants :

    • L’API Baculum – un composant API REST pour travailler avec les données Bacula.
    • Le composant Web Baculum – l’interface Web elle-même.

    L’API Baculum est installée sur des hôtes avec des composants Bacula que vous gérez depuis le niveau de l’interface Web. Baculum Web est généralement une instance qui connecte tous les hôtes de l’API Baculum et permet de tous les gérer. Cette architecture s’intègre bien à l’architecture réseau Bacula car vous pouvez gérer tous les hôtes Bacula à partir d’une seule interface. Il est important de savoir que l’interface Web ne stocke aucune configuration spécifique à Bacula à partir d’un hôte, mais les gère en envoyant des requêtes API à la place. Lorsque vous modifiez l’interface ou exécutez des actions Bacula, elles sont effectuées en temps réel. Lorsque vous cliquez sur le bouton enregistrer la configuration, la modification se fait simultanément sur les hosts ciblés.

    Vous trouverez ci-dessous un exemple de topologie Bacula et Baculum.

    (Rob Morrison, CC BY-SA 4.0)

    Un inconvénient de cette approche est que vous devez installer une instance d’API Baculum sur chaque hôte Bacula que vous souhaitez gérer. S’il y a beaucoup de serveurs à sauvegarder, il est possible d’automatiser le processus d’installation à l’aide d’un outil de déploiement d’application comme Ansible.

    Dans mon cas, j’ai une topologie beaucoup plus simple avec un seul hôte géré par Baculum. Ma topologie ressemble à celle ci-dessous.

    (Rob Morrison, CC BY-SA 4.0)

    Vous pouvez décider quelles ressources Bacula partager sur chaque hôte d’API Baculum. Vous pouvez définir les hôtes API pour effectuer le travail de configuration, accéder à la base de données du catalogue Bacula, exécuter les commandes de la console Bacula ou toute combinaison.

    Après avoir installé l’interface Web dans l’environnement Bacula, vous voyez une page de tableau de bord comme celle-ci :

    (Rob Morrison, CC BY-SA 4.0)

    Créer une tâche de sauvegarde

    Pour définir une nouvelle tâche de sauvegarde, accédez à la page de la tâche pour voir des assistants permettant de créer des tâches de sauvegarde, de copie ou de migration à l’aide d’un formulaire de tâche personnalisé. Pour cette démonstration, j’ai choisi le tâche de sauvegardequi affiche la première étape de l’assistant :

    (Rob Morrison, CC BY-SA 4.0)

    Tout d’abord, saisissez le nouveau nom de tâche et une description facultative. Dans la deuxième étape, décidez quoi sauvegarder. Pour cet exemple, j’ai choisi un client Bacula et FileSet, qui définit les chemins à sauvegarder. Habituellement, dans cette fenêtre, il n’y a pas encore d’options FileSet parmi lesquelles choisir, mais vous pouvez en créer une avec le Ajouter un nouveau jeu de fichiers bouton dans l’assistant. Pour définir des chemins, j’ai décidé de parcourir le système de fichiers client et de sélectionner des chemins dans le navigateur glisser-déposer, comme dans l’image ci-dessous.

    (Rob Morrison, CC BY-SA 4.0)

    Une fois que le FileSet est prêt, l’étape suivante consiste à sélectionner où enregistrer les données sauvegardées pour ce travail. Sélectionnez un emplacement de stockage et un pool de volumes.

    (Rob Morrison, CC BY-SA 4.0)

    Comme avec les FileSets, vous avez la possibilité de créer un nouveau pool. Dans cet exemple, j’ai choisi un pool de volumes existant.

    À l’étape suivante, vous trouverez des options spécifiques à la tâche, telles que le choix du niveau de tâche (complet, incrémentiel, différentiel, etc.), la priorité de la tâche et quelques autres paramètres.

    (Rob Morrison, CC BY-SA 4.0)

    Sur la page suivante de l’assistant, spécifiez quand exécuter ce travail de sauvegarde. Les sauvegardes sont généralement exécutées périodiquement, et ici vous pouvez choisir une planification pour ce travail. Si vous n’avez pas de planning, vous pouvez le créer dans cette interface :

    (Rob Morrison, CC BY-SA 4.0)

    La dernière étape de l’assistant n’est qu’un résumé de toutes les valeurs sélectionnées dans les étapes précédentes.

    (Rob Morrison, CC BY-SA 4.0)

    Vérifiez toutes les valeurs et, si elles semblent correctes, créez la nouvelle tâche.

    Exécutez la sauvegarde

    OK, vous avez une nouvelle tâche de sauvegarde. Pour exécuter la sauvegarde initiale, vous pouvez choisir de la démarrer manuellement à l’aide du Exécuter la tâche bouton. Il existe une capacité utile dans le Exécuter la tâche fenêtre pour estimer une tâche avant de l’exécuter. Exécutez cette estimation pour savoir à l’avance combien de fichiers et combien d’octets seront sauvegardés par cette tâche.

    (Rob Morrison, CC BY-SA 4.0)

    Après avoir exécuté le travail, vous accédez à une page d’affichage du travail où vous pouvez voir la progression de la sauvegarde du point de vue du client.

    (Rob Morrison, CC BY-SA 4.0)

    Vous pouvez suivre l’état des tâches à partir de trois endroits sur l’interface :

    • Le client Bacula (illustré ci-dessus).
    • Le côté composant du directeur Bacula.
    • La perspective du démon de stockage.

    Ici, vous pouvez voir la progression de la tâche côté directeur et côté démon de stockage :

    (Rob Morrison, CC BY-SA 4.0)

    (Rob Morrison, CC BY-SA 4.0)

    Le travail de sauvegarde se termine.

    Restaurer les données

    Bien sûr, vous devez être en mesure de restaurer les données sauvegardées. Baculum fournit un Assistant de restauration dans le menu latéral principal. Après l’avoir ouvert, vous voyez une sélection de client de sauvegarde sur laquelle vous pouvez restaurer les données.

    (Rob Morrison, CC BY-SA 4.0)

    Sélectionnez le client et passez à la deuxième étape. Ici, vous voyez toutes les sauvegardes de ce client. Votre sauvegarde est en haut, il est donc facile de choisir. Toutefois, si vous souhaitez retrouver une sauvegarde antérieure, effectuez une recherche dans la grille de données des sauvegardes. Il existe également une option pour rechercher une sauvegarde par nom de fichier, avec ou sans chemin.

    (Rob Morrison, CC BY-SA 4.0)

    Sélectionnez la sauvegarde et accédez à la sélection de fichiers à la troisième étape de l’assistant de restauration. Ici, dans le navigateur de fichiers, choisissez les répertoires et les fichiers à restaurer. Le navigateur dispose également d’une zone pour sélectionner une version de fichier spécifique si elle existe dans d’autres sauvegardes.

    (Rob Morrison, CC BY-SA 4.0)

    L’étape suivante de l’assistant définit la destination où la restauration enregistrera les données. Par défaut, le client d’où provient la sauvegarde est sélectionné, mais vous pouvez le modifier pour restaurer sur un hôte différent de celui d’origine. Vous pouvez également définir un chemin absolu sur le client pour restaurer les données. Le support requis pour effectuer cette restauration s’affiche. Ceci est très utile pour un opérateur de périphérique de sauvegarde sur bande pour préparer le travail de restauration. Personnellement, j’utilise des supports de disque et mes volumes sont disponibles en permanence pour le démon de stockage.

    (Rob Morrison, CC BY-SA 4.0)

    L’étape suivante propose les options de restauration, telles que le remplacement d’une stratégie pour les fichiers existants sur le système de fichiers ou les champs de déplacement de fichiers. Je les garde intacts et passe à l’étape récapitulative avant d’exécuter la restauration.

    (Rob Morrison, CC BY-SA 4.0)

    Dans la tâche de restauration, tout comme dans la tâche de sauvegarde, vous voyez la progression de la tâche de restauration en cours d’exécution. Après l’achèvement, il y a un résumé de l’ensemble du processus.

    (Rob Morrison, CC BY-SA 4.0)

    C’est à peu près tout. La sauvegarde et une restauration sont effectuées. Le processus peut être un peu plus simple avec d’autres outils, mais Bacula offre aux passionnés de Linux des centaines d’options très utiles. Cela limite à quel point vous pouvez simplifier l’interface, et la plupart des utilisateurs de Bacula ne le souhaitent pas.

    Copier des travaux

    Outre les tâches de sauvegarde et de restauration traditionnelles, Bacula fournit également quelques autres types de tâches. L’un d’eux est Copier le travail, qui copie les sauvegardes entre les périphériques de stockage d’un pool de volumes à un autre. Un périphérique de stockage peut être un disque et un autre peut être une bande ou une bibliothèque de bandes. Le travail de copie lit les données des volumes de fichiers et les envoie aux périphériques de bande pour les enregistrer sur des bandes magnétiques. Les utilisateurs de Bacula peuvent configurer une stratégie de sauvegarde D2D2T (disk-to-disk-to-tape). Le stockage source et de destination peut être de différents types (disque et bande), mais il fonctionne tout aussi bien lors de la copie de tâches de sauvegarde entre les mêmes types de périphériques.

    Baculum prend entièrement en charge les travaux de copie, y compris la configuration des travaux de copie et se termine par la restauration des données directement à partir des travaux de copie. Configurez une tâche de copie à l’aide de l’assistant de tâche de copie visible dans l’image ci-dessous.

    (Rob Morrison, CC BY-SA 4.0)

    Après avoir saisi le nouveau nom de la tâche de copie, choisissez le stockage source et le pool de volumes source. Il s’agit du stockage qui lit les données lors de l’exécution de la tâche de copie.

    (Rob Morrison, CC BY-SA 4.0)

    La troisième étape de l’assistant spécifie comment copier les travaux. En d’autres termes, vous pouvez définir les critères de sélection utilisés pour choisir les sauvegardes qui seront copiées. Vous pouvez sélectionner des sauvegardes selon des modèles tels que :

    • Nom du travail
    • Client
    • Le volume
    • Le plus petit volume de la piscine
    • Volume le plus ancien de la piscine
    • Requête SQL
    • Copier tous les travaux non copiés jusqu’à présent du pool

    Dans cet exemple, j’ai choisi une sélection par nom de travail.

    (Rob Morrison, CC BY-SA 4.0)

    Sélectionnez le stockage et le pool de destination à l’étape suivante. Ce stockage écrit des sauvegardes dans le pool de destination lorsque vous exécutez la tâche de copie.

    (Rob Morrison, CC BY-SA 4.0)

    Dans l’avant-dernière étape se trouvent quelques options, telles que le nombre maximum d’emplois générés. Vous pouvez également définir une planification pour exécuter le travail de copie périodiquement.

    (Rob Morrison, CC BY-SA 4.0)

    Après avoir enregistré l’assistant, exécutez le travail de copie au même endroit où vous avez démarré le travail de sauvegarde. Vous pouvez voir la sortie du journal des tâches mise à jour en direct.

    (Rob Morrison, CC BY-SA 4.0)

    Conclure

    Fait! Vous avez effectué une tâche de sauvegarde, restauré une tâche et créé une tâche de copie.

    Il y a deux fonctions Baculum que je pense que beaucoup de gens trouveront utiles.

    Premièrement, son interface simple permet à l’utilisateur d’administrer Bacula à partir de n’importe quel appareil mobile. Cela peut être crucial dans les cas où vous êtes à l’extérieur du bureau et qu’un membre de l’organisation envoie un SMS du type : “Hé ! J’ai accidentellement supprimé un fichier de rapport important et j’en ai besoin de toute urgence. Pouvez-vous le restaurer sur mon ordinateur ?” Vous pouvez effectuer cette restauration à l’aide d’un téléphone mobile et des mêmes étapes d’assistant décrites ci-dessus.

    La deuxième fonction importante est son interface multi-utilisateurs avec plusieurs méthodes d’authentification (utilisateur local, authentification de base, LDAP, etc.). Il permet aux employés de l’entreprise d’utiliser Baculum pour sauvegarder et restaurer leurs propres ressources sans avoir besoin d’accéder à d’autres utilitaires. Vous pouvez personnaliser l’interface de contrôle d’accès basé sur les rôles pour chaque groupe d’utilisateurs.

    Bien sûr, ces options ne sont que la pointe de l’iceberg concernant les capacités de Bacula avec Baculum. Baculum consiste vraiment à être configurable. J’espère que vous pourrez profiter de ses avantages et de la responsabilisation qu’il vous apporte pour rendre vos données plus sûres et votre vie plus facile !

    Source

    Houssen Moshinaly

    Pour contacter personnellement le taulier :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Copy code