Forum Linux.général Clonage/sauvegarde de serveurs

Posté par  . Licence CC By‑SA.
2
20
sept.
2021

Bonjour,

J'ai plusieurs machines Ubuntu installées avec différents outils (pour du dev, du CI, etc) et j'aimerai pouvoir facilement les maintenir (mise à jour, installation de nouveaux services, migration vers nouvelle version etc), les restaurer en cas de crash et voir même les "cloner". C'est actuellement des machines physiques mais j'aimerai pouvoir les migrer en VM ou en conteneur suivant les besoins (j'ai joué un peu avec Proxmox pour me faire la main).

J'ai les idées suivantes en tête mais j'aimerai avoir des retours ou d'autres idées de vrais sysadmins …

Sauvegarde complète du système

Ça me parait lourd à gérer, surtout que pour la plupart des machines il y a 2-3 services installés et les données générées ont un intérêt pendant 1 ou 2 jours, donc elles peuvent être perdues sans gros souci.

Un scripts shell (sous git) qui configure une machine dans une état voulu

Ça me parait assez simple à mettre en place et facile à transposer pour un conteneur ou une VM. Mon option préférée du moment.

Automatisation avec un outil comme Vagrant pour les VM / docker pour les conteneur

Ça se rapproche assez du script en plus puissant mais seulement pour les VM ou conteneur. Je ne sais pas s'il existe quelque chose plus au niveau qui serait compatible machine/VM/conteneur ?

Merci d'avance pour vos conseils!

  • # Ansible

    Posté par  . Évalué à 3 (+2/-0).

    Bonjour,

    Sur le principe du script, les configurations gérées par ansible pourraient peut-être répondre à la problématique. Il serait possible de gérer les VM, docker et serveur, avec installation des services, gestion des updates, copie des fichiers de configuration …

    Un rsync pourrait aussi permettre de sauvegarder les fichiers critiques des serveurs et de les recopier sur un nouveau (clonage) qu'ils soient physique ou virtuel.

    Il y a sûrement d'autres solutions bien plus puissantes ;-)

    • [^] # Re: Ansible

      Posté par  . Évalué à 5 (+3/-0). Dernière modification le 21/09/21 à 06:37.

      Il y a sûrement d'autres solutions bien plus puissantes ;-)

      Ouais : puppet, chef ou encore salt.

      (plus sérieusement, c'était pour lister les alternatives classiques à ansible, mais l'un des 4 me semble une bonne piste)

      • [^] # Re: Ansible

        Posté par  . Évalué à 4 (+1/-0).

        Même avis ici. Les outils de gestion de configuration mentionnés ont tous des modules qui peuvent aussi permettre le déploiement sur des hyperviseurs.

        • [^] # Re: Ansible

          Posté par  . Évalué à 1 (+0/-0).

          Alternative chez HashiCorp :

          en un peu plus hype il y a auss terraform

          Associé avec packer pour générer les images disques ça peut aider

      • [^] # Re: Ansible

        Posté par  (site Web personnel) . Évalué à 4 (+2/-0).

        Sur ces 4 outils, étant donné le point de départ - pas d'automatisation et réflexion nouvelle pour en mettre en place -, j'aurais tendance à suggérer :

        1. de commencer à bricoler / réfléchir sur des scripts
        2. tester chef ou ansible.

        Mon expérience avec Salt et Puppet est que c'est très bien mais très complexe aussi à prendre en main (et au niveau conceptuel).

        J'intercalerais même éventuellement Fabric entre 1 et 2 histoire de commencer à rentrer dans le sujet et de commencer à être confronté aux problématiques et à réfléchir aux solutions (et c'est là que chef ou ansible vont prendre tout leur sens)

        • [^] # Re: Ansible

          Posté par  . Évalué à 1 (+0/-0).

          Oui Ansible à l'air pas mal et j'aime bien ton approche progressive avec les scripts pour comprendre l’intérêt des outils plus perfectionnés.

          Vu que je pars de loin, me faire la main avec des scripts sur des configurations simples me fera pas de mal!

          Le passage par Fabric je sais pas trop. J'ai peur que ça soit vite limité par rapport à Ansible, par contre je connaissais pas et j'avais déjà fait un truc similaire à la main en moins bien forcement :)

      • [^] # Re: Ansible

        Posté par  . Évalué à 1 (+0/-0). Dernière modification le 21/09/21 à 13:59.

        à supprimer svp
        merci et pardon pour le dérangement

  • # image disque

    Posté par  . Évalué à 3 (+1/-0).

    C'est actuellement des machines physiques mais j'aimerai pouvoir les migrer en VM ou en conteneur suivant les besoins
    Ça me parait lourd à gérer, surtout que pour la plupart des machines il y a 2-3 services installés et les données générées ont un intérêt pendant 1 ou 2 jours, donc elles peuvent être perdues sans gros souci.

    Je pense que tu devrais faire une installation minimale (avec ce qui est commun à toutes les installations) puis récupérer l'image avec PartImage ou CloneZilla par exemple. Ça te permettra de pouvoir redéployer une autre machine avec la même base facilement et rapidement : on oublie souvent cette approche de Ghost parce-qu'une distribution GNU/Linux s'installe tellement vite, mais bon ; et puis cette image pourra servir plus tard pour passer en modèle de VM (template.)

    Ça c'est pour l'installation de base (système et tous les programmes communs attendus.) Mais il faudra prévoir la personnalisation (changer le nom et l'adresse de l'hôte) et le reste (les autres applications et leur paramétrages.) Là je renvoie aux autres commentaires (Ansible, Chef, Salt, Cdist, Capistrano, etc.)

    • [^] # Re: image disque

      Posté par  . Évalué à 1 (+0/-0).

      Je pensais à quelque chose d'un peu similaire avec:
      * image de base (VM Vagrant ou container)
      * personnalisation avec des scripts ou Ansible
      * ajout d'applications spécifiques en fonction de l'utilisation avec Ansible aussi

      L'option du clone/ghost peut être pas mal en effet vu que j'ai déjà des machines à peu prêt configurées!

  • # Commentaire supprimé

    Posté par  . Évalué à -1 (+0/-2). Dernière modification le 21/09/21 à 16:44.

    Ce commentaire a été supprimé par l’équipe de modération.

  • # Etape par étape

    Posté par  . Évalué à 2 (+1/-0).

    Merci pour vos conseils!

    Je vais sûrement partir sur un mix de:
    * scripts pour préparer les images de bases (utilisable sur VM, conteneur ou machine)
    * Ansible pour "spécialiser" des machines

    Pour les machines plus complexes, je partirai peut-être d'un ghost.

    Y'a plus qu'à tester et ajuster le tir au fur et à mesure

    Pour les outils genre Terraform, je pense que c'est trop pour mon besoin et pour Chef, Puppet, je vais déjà me faire la main avec Ansible pour déjà mieux comprendre les concepts etc

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.