CloneDeploy : Cloner et déployer vos images, un jeu d’enfant

24
31
mar.
2017
Administration système

CloneDeploy est une solution libre de clonage et déploiement d’images système conçue par le surnommé cdadmin sur GitHub. Elle est apparue sur le célèbre dépôt au mois d’août 2015 et est actuellement en version 1.2.1.

Cette solution offre la possibilité de définir des tâches de clonage ou de déploiement d’images système (Windows, macOS et GNU/Linux) via différentes méthodes (par exemple PXE) au travers d’une interface Web.

C’est simple et sacrément efficace. Je vous invite à découvrir CloneDeploy !

Comment avons‐nous découvert CloneDeploy ?

Un pur hasard !

Dans la startup où je travaille, nous avons de plus en plus de serveurs à préparer avec des délais de plus en plus restreints. L’installation manuelle, en plus du risque d’erreur, n’était plus viable.

Nous avons donc décidé de chercher et tester plusieurs solutions, dont Clonezilla par exemple. Mais il nous manquait un petit quelque chose pour nous simplifier la vie. Et, au fil de nos recherches sur Internet, nous sommes tombés sur CloneDeploy, bien caché comme l’élève au fond de la classe qui ne souhaite pas se faire remarquer.

Pourquoi répond‐il à nos attentes ?

La première chose, et la plus importante à nos yeux, c’est qu’il est libre et open source (GPL v3).
Ensuite, il ne requiert que peu d’éléments et de temps pour pouvoir être mis en place. Dans notre cas :

  • un serveur Debian Jessie contenant les applicatifs suivants :
    • un serveur DHCP,
    • CloneDeploy,
    • un serveur Apache2,
    • un serveur MySQL,
    • un serveur TFTP,
    • un serveur Samba ;
  • et la machine virtuelle Mono (CloneDeploy est écrit en C#).

Il faut compter environs quinze minutes pour mettre en place l’ensemble. Chose importante, l’interface de la solution est épurée, rapide à prendre en main et permet de mettre en place des tâches de clonage ou déploiement de manière simple.

Enfin, le clou du spectacle, même si nous n’avons pas encore parcouru toutes les options, il semble possible de configurer et éditer les différents menus et actions effectuées via le PXE.

Ce que nous apprécions le plus

Une chose que nous avons vraiment adorée, c’est qu’il est possible de programmer des tâches qui seront immédiatement exécutées lors de l’amorçage PXE.

Par exemple, nous pouvons lancer le déploiement d’une image sur plusieurs serveurs en simultané sans avoir à naviguer dans un quelconque menu. C’est un véritable gain de temps pour nous, qui sommes une petite infrastructure.

Quelques captures d’écran

L’accueil de CloneDeploy

Sur cette page on peut voir différentes informations à propos du serveur : L’accueil

Schéma de partitionnement des images

On peut avoir le détail de la composition d’une image et du schéma de partitionnement : Schéma de partitionnement des images

Édition du menu d’amorçage PXE

Voici par exemple un onglet permettant d’éditer le menu lors d’un amorçage manuel sur le PXE :
Édition du menu d’amorçage PXE

Pour finir

De notre côté, nous espérons que cette solution va continuer à évoluer et que la communauté autour va s’étoffer.

Selon la feuille de route de la version 1.3.0 est prévue au mois de mai 2017.

Alors, qu’une dernière chose à dire : foncez et testez !

Aller plus loin

  • # Difficilement déployable

    Posté par  . Évalué à 9. Dernière modification le 01 avril 2017 à 07:28.

    CloneDeploy est écrit en C#

    Donc ben je ne l'installerai jamais. C'est très dur d'installer Mono, plus dur que Java en fait. Surtout que d'après la doc, il faut ajouter un dépôt en dehors de la distribution. C'est vraiment non.

    Ensuite il ne requiert que peu d'éléments

    Un dépôt supplémentaire. Un module Apache2 (donc Apache2, là où j'utilise nginx), une base MySQL (là où j'utilise PostgreSQL), et un serveur Samba. Pourquoi pas NFS ? La maintenance de Samba est assez difficile aussi.

    Je précise que mes phrases ont l'air acides, mais j'essaye surtout de contre-balancer le ton de la dépêche qui dit que c'est vraiment trop top comme logiciel, que tout le monde devrait s'y mettre.

    Troll à part, c'est un peu dommage comme choix de techno, même si je comprends parfaitement la facilité de l'écriture du logiciel avec un ensemble de techno figées. Mais pour le déploiement, c'est vraiment dur.

    Par contre, c'est vraiment différent de CloneZilla, non ? CloneZilla permet, sur un support « live » de faire des clones vers n'importe quoi d'accessible en local ou sur le réseau. C'est pas vraiment une solution « entreprise », mais très pratique pour faire des copies rapides de temps en temps sans avoir à maintenir un outil.

    • [^] # Re: Difficilement déployable

      Posté par  . Évalué à 3.

      Je me suis fais la même réflexion et puis aujourd'hui on aime bien empiler les technos dans tout les sens et changer car on s’aperçoit qu'au bout de 2ans l'appli web top moumoute est juste inmaintenable avec toute la stack derrière…

      Après si ils estiment que le jeu en vaut la chandelle tant mieux pour eux =)

      Merci pour la découverte.

    • [^] # Re: Difficilement déployable

      Posté par  . Évalué à 6.

      Salut Glandos, merci pour ton commentaire.

      As-tu pris le temps de tester la solution ? Même dans un lab de machine virtualisée vu que tu ne veux installer mono ?

      C'est vrai, cette solution est écrite en C# et nécessite d'installer un composant qui ne se trouve pas dans les dépôts officiels. Au quotidien on en utilise d'autres de la même manière "Docker, Dotdeb et j'en passe".

      Mais le but de le faire découvrir à la communauté n'est-il pas de fédérer d'autres personnes autour et peut être de faire évoluer la techno ?
      Surtout que je pense que ce n'est pas inscrit dans le marbre d'utiliser Apache2 et MySQL. Pourquoi ne pas proposer un tutoriel pour Nginx et Postgre ?
      Le mainteneur du projet fait ça sur son temps personnel en utilisant les technos qu'il connaît, donc permettons à son projet de s'améliorer en le partageant.

      GET INVOLVED

      CloneDeploy is developed, maintained, and supported by myself. It is currently just a hobby of mine and I work on it when I
      get a few extra minutes. If you would like to join the team(currently there is no team) send me message on the forums. I
      could use help with anything. Development, testing, creating tutorials, creating videos, moderating the forums, etc.

      Clonezilla fait très bien son travail. Mais quand on a plusieurs dizaines de machines à monter tout en continuant d'assurer le reste du travail (Gestion de l'infra en ligne, interne et support N2), je ne me vois pas utiliser des support "live".

      Enfin le ton que j'ai utilisé dans la dépêche, c'est celui de ma personnalité. J'aime partager les choses, donc quand je tombe sur une nouvelle techno qui me semble intéressante, je rédige avec ma bonne humeur.

      A bientôt

      • [^] # Re: Difficilement déployable

        Posté par  . Évalué à 4.

        Clonezilla fait très bien son travail. Mais quand on a plusieurs dizaines de machines à monter tout en continuant d'assurer le reste du travail (Gestion de l'infra en ligne, interne et support N2), je ne me vois pas utiliser des support "live".

        Et as-tu testé DRBL ?
        http://www.drbl.org/

        Si oui, qu'est-ce qui t'a fait choisir CloneDeploy ?

        Je l'ai personnelement pas utilisé depuis depuis des lustres, mais ça marchait pas mal : on avait un banc d'install de 50 machines et un serveur virtualisé avec presque pas de ressources (1 CPU, 512mo de RAM de mémoire) et ça loadait à peine. Faut juste aimer les TUI :)

        • [^] # Re: Difficilement déployable

          Posté par  . Évalué à 1.

          Salut sedric,

          Je ne connaissais pas DRBL. Je vais jeter un oeil à sa documentation et dès que j'aurai du temps je me ferais un lab de test.

          Merci à toi pour le partage.

        • [^] # Re: Difficilement déployable

          Posté par  (site web personnel) . Évalué à 1.

          Salut sedric, et merci beaucoup pour le partage !

          L'idée est que nos machines sont configurées avec du Software RAID, et Clonezilla ne supporte pas le Software RAID. Il me semble que DRBL utilise Clonezilla donc pour moi ce sera le même problème, je me trompe ?

          En tout cas c'est toujours un plaisir de découvrir et de promouvoir des projets prometteurs comme CloneDeploy.

          Merci à toi Gautier pour l'article ;)

  • # Prometteur

    Posté par  . Évalué à 3.

    Merci pour la trouvaille, je bosse généralement avec des templates vSphere mais c'est le genre d'outil qui semble intéressant pour de déploiements plus fins.
    Je vais m'empresser de tester, nos devs travaillent en .NET, nos plateformes sont hétérogènes, j'ai déjà du Samba a foison et des applications qui tournent sous Mono un peu partout, ça ne devrait pas être trop dur à mettre en place

    Cordialement

  • # Fog ?

    Posté par  (site web personnel) . Évalué à 2.

    Il me semble que Fog répondrais aussi a ton besoin

    https://fogproject.org/

    Linux sur PC disponible pour tous http://shop.ekimia.fr

    • [^] # Re: Fog ?

      Posté par  . Évalué à 2.

      +1
      Nous utilisons FOG depuis 2 ans sur un parc de 6000 postes en SEVEN, et aucuns soucis avec … interface simple et complète permettant pas mal d'actions … à tester également…

  • # Gestion de matériels hétérogènes ?

    Posté par  . Évalué à 1.

    Et parmi toutes ces solutions, quelles sont celles qui permettent de déployer des systèmes préconfigurés avec une sélection de logiciels préinstallés, tout en déployant sur des machines hétérogènes nécessitant des pilotes différents ?

    • [^] # Re: Gestion de matériels hétérogènes ?

      Posté par  (site web personnel) . Évalué à 0.

      Salut ardechelibre,

      Perso j'utilise Clonezilla.

      Pour un Linux pas de problème, il me claque l'image système niquel.
      Pour un Windows, tu as juste à remettre et revalider la clé produit Windows (qui se trouve sur le matériel récent dans le firmware). Tu peux la récupérer avec un software du type Speccy. ;)

Suivre le flux des commentaires

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