Automatiser l’installation et la mise à jour de logiciels sous Windows avec WAPT

closeCet article a été publié il y a 5 ans 11 mois 16 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

Schéma TISWAPT

Voici un retour d’expérience rapide sur la mise en œuvre de WAPT dans le cas d’un petit déploiement de postes dans une petite structure. Il s’agissait de préparer une petite dizaine de postes sous Windows Seven Pro en vue du remplacement de machines plus anciennes.

La liste des logiciels à installer est composée à 100 % de logiciels libres. J’en vois certains qui se demandent déjà pourquoi ne pas avoir installé du GNU/Linux. Tout simplement parce que le client doit ensuite « mazouter » les postes avec des logiciels propriétaires métier 🙂 .

La base de logiciels libres qui sera utilisée est large. Elle se compose de la suite LibreOffice, de Thunderbird, Firefox, Gimp, Inkscape, Scribus sans parler de tous les petits utilitaires comme 7zip, PDF creator, GhostScreen, VLC et Keepass2. Encore une preuve, si c’était nécessaire, que les solutions libres peuvent répondre à la grande majorité des besoins des petites structures.

Les mises à jours sous Windows, la galère

De façon traditionnelle, la mise en place de ces logiciels sous Windows implique de se constituer un petit référentiel avec tous les programmes d’installation. Il faudra ensuite les lancer un par un laborieusement sur chaque poste. Une opération qui n’a rien de compliqué, mais qui est relativement pénible.

Il ne faut pas non plus oublier qu’une fois installés, ces logiciels vont vivre. Il faudra les mettre à jour. Sous Windows chaque logiciel gère de façon autonome et de façon plus ou moins automatisée la détection et l’installation de mises à jour.

Les systèmes d’exploitation GNU/Linux utilisent depuis de très nombreuses années un système de dépôt d’applications que l’on appelle communément maintenant un « store ». Un concept réinventé et popularisé auprès du grand public par Apple avec son iPhone puis par Android. L’avantage des dépôts est de permettre de gérer de façon centralisée les installations et surtout les mises à jour.

WAPT, la solution

La société informatique Tranquil IT System a développé WAPT, un outil dont le principe de fonctionnement est similaire au gestionnaire d’installation et de mise à jour Apt de Debian. A la partie client s’ajoute une console d’administration permettant de piloter le déploiement des logiciels de façon centralisée. WAPT est disponible sous licence GPLv3.

Il est bien entendu possible de constituer son propre dépôt. Les packages de logiciels sont constitués à l’aide de script écrit en python. Le client WAPT peut gérer plusieurs dépôts. Un dépôt public et un dépôt privé par exemple ou un dépôt de « proximité » pour les entreprises ayant plusieurs sites géographiquement distants. L’installation du serveur est possible aussi bien sur une Debian que sur une machine Windows.

Le fonctionnement de WAPT sur le poste de travail est similaire à la commande de Debian : apt-get. Lors de l’installation, un dépôt est configuré et il suffit d’indiquer le nom du logiciel que l’on souhaite installer. Un dépôt public est disponible et contient environ 335 logiciels. Des run-time de .Net ou encore de Flash Player, Java, sont disponibles.

Une interface web est également disponible sur le poste de travail pour gérer les installations. Une petite vidéo pour illustrer.


Pour en revenir à mon installation, j’ai donc constitué une simple ligne de commande avec l’ensemble des logiciels à installer. Sur chaque poste il suffit d’installer le client WAPT. J’ai ensuite lancé la commande dans une invite de commande lancée en tant qu’administrateur et tout s’installe. Je vous laisse imaginer le gain de temps que cela peut représenter.

Les logiciels mis à disposition sur le store sont tous relativement récents, ce qui laisse présager de mises à jour régulières pour les principaux logiciels. A noter que les mises à jour automatiques sont parfois désactivées lors de l’installation. C’est par exemple le cas pour le run-time de Java.

Le client WAPT se charge de contrôler la disponibilité de mises à jour et de prévenir l’utilisateur depuis la zone de notification. Un menu contextuel permet alors de lancer la mise à jour.

Processus de mise à jour WAPTLa solution est intéressante pour une entreprise, mais aussi pour un particulier. Elle a le mérite d’être simple à mettre en œuvre. Bien sûr, d’autres logiciels libres existent sur ce créneau. Je ne citerais que les plus connus comme OCS Inventory, OPSI ou encore FusionInventory. Il existe aussi chocolatery qui m’a semblé plus complexe à mettre en œuvre du moins au premier abord. Il ne fonctionne qu’en ligne de commande à ce que j’ai vu.

Si vous avez eu l’occasion d’utiliser WAPT dans un contexte professionnel ou personnel, n’hésitez pas faire part de vos expériences en commentaire 🙂 !

Philippe Scoffoni

Je barbote dans la mare informatique depuis 30 ans (premier ordinateur à 16 ans, un ORIC ATMOS) et je travaille à mon compte au travers de ma société Open-DSI. J'accompagne les associations, TPE et PME dans leurs choix et dans la mise en oeuvre se solutions informatiques libres.

7 réponses

  1. Jean dit :

    Je poste ce commentaire afin de faire part de mon retour d’expérience.
    Le logiciel a l’air très complet simple et intuitif, sauf que pour le mettre en place il faut ne pas avoir les ports préconisés occupés par d’autre logiciels…
    Dans mon cas j’ai le serveur wsus ainsi qu’un antivirus qui interfère a ce niveau et donc je n’ai pas pu l’essayer.
    Il faudrait pouvoir changer les ports par défaut du serveur wapt et de l’application client, mais cependant il n’y a pas de doc pour cette éventualité et c’est la que j’ai bloqué.
    Ayant déjà mon serveur en production je ne pouvais pas me permettre de bidouiller sans savoir ou j’allais et donc j’ai abandonné malgré l’envie de testé cette usine a gaz.
    Si quelqu’un sait ou a tester le changement des ports dans les fichier de conf, je veux bien un petit retour d’expérience.

  2. Hubert dit :

    Sur le serveur WAPT lui même (celui qui reçoit les inventaires des postes et le status de déploiement des paquets sur les postes), il y a 3 composants :
    – une base de données mongodb pour stocker les données
    – un webservice waptserver.py qui écoute « par défaut » sur le port 8080. Cela peut être changé dans le fichier c:\wapt\wapserver\waptserver.ini par le paramètre waptserver_port (voir pour cela le fichier waptserver.ini.template donne quelques exemples)
    – un serveur http (apache dans le cas de notre installation par défaut, mais cela peut être ce que l’on veut pourvu qu’on le maîtrise). Ce serveur http a deux fonctions :
    – mettre à disposition les paquets qui sont dans C:\WAPT\waptserver\repository\wapt et wapt-host. en général (et par défaut dans notre déploiement standard) sur le port 80
    – servir de frontal « reverse proxy » au webservice waptserver.py. en général sur le port 443 en https (par défaut sur notre installeur)

    Si un IIS tourne sur la machine où on installe le serveur WAPT,
    1 – on n’installe pas la partie Apache (décocher l’option lors de l’installation…) et
    – on configure IIS à la place pour servir les paquets et agir en reverse proxy
    – ou on utilise le webservice waptserver.py en direct (les clients ne passent plus par les ports standards 443 et 80) . Ceci n’est pas très recommandé car en général les proxy et les firewall ne le permettent pas.
    2- on utilise IIS pour la distribution de paquets sur le port 80 ou 443, et on conserve apache mais sur des ports non standards pour l’accès au webservice.

    Le mieux est quand même (à l’heure de la virtualisation…) d’avoir une machine virtuelle simple dédiée à cela.. imho.

    Hubert.

  3. Shazen dit :

    Pour Chocolatey il y a une interface graphique qui existe : https://chocolatey.org/packages/ChocolateyGUI
    Je ne l’utilise pas (préférant la ligne de commande) donc je ne peux pas en dire + mais ça existe 😉

  4. Philippe dit :

    @Sahzen : de ce que tu vois de WAPT, il se positionne comment selon toi ? Plus orienté grand public ? Plus simple à mettre en oeuvre ?

  5. Shazen dit :

    @Philippe de ce que je vois dans ton article, WAPT semble effectivement plus grand public.
    Les notifications de mise à jour sont un + évitant d’avoir à régulièrement vérifier leur mise à disposition. Avec Chocolatey il faut penser à lancer une commande ou ouvrir l’interface graphique pour être informé des mises à jour.

  6. David dit :

    pas mal… mais quand je regarde la liste des logiciels disponibles, par exemple vlc, en version 2.1.1 alors qu’on est en 2.2.2
    Est ce mis à jour rapidement ? …

  7. Le maintien du dépôt est communautaire bien que principalement assuré par la société qui développe WAPT. Donc les mises à jour arrivent quand quelqu’un les pousse j’imagine. Si vous voulez un « engagement » de fraîcheur, je pense qu’il faudra payer une prestation pour cela 🙂