Gestion des environnements de travail ===================================== Plusieurs enjeux : - fournir des environnements reproductibles pour les expériences de recherche - fournir des environnements adaptés aux besoins pédagogiques - fournir des environnements facilitant le prototypage de solutions pour les besoins administratifs Plusieurs solutions populaires : - `veewee` : production automatisée d'images virtuelles - développement actif par un développeur principal (25%) depuis 2011 - prend en entrée une iso d'install et un fichier de conf - produit des images VirtualBox, KVM et VMWare - fournit de nombreux exemples de configuration - `vagrant` : automatise et facilite la configuration et l'exécution d'une VM - développement actif par un développeur principal (75%) depuis 2010 - nécessite une image (boîte) - prend un fichier de configuration pour finaliser la configuration de l'image - nécessite une machine virtuelle (VirtualBox, VMWare, AWS pour Amazon, KVM avec `vagrant-kvm`) - s'interface entre l'image et la machine virtuelle pour automatiser l'étape de configuration (commune à toutes les VM) - facilite la configuration réseau et la synchronisation des données (peut-être VirtualBox le fait-il déjà) - `chef`, `puppet` : configuration et administration automatisée - développement actif par plusieurs développeurs depuis 2008 - au coude à coude, tous les deux en ruby - il y a aussi `salt` et `ansible` en ruby et plus récents (2011-2012) Veewee ------ +-------------+ +--------+ |Configuration|->| Veewee | +-------------+ | | | | +---+ | | +-----------+ |Iso|----------->| |->|Box (image)| +---+ | | +-----------+ | | +-------------+ | | |Provider (VM)|->| | +-------------+ +--------+ Intérêts : - ABD - environnement root plus proche d'une situation classique (outils plus faciles à déployer et plus formateur pour les étudiants) - diffuser des images contenant déjà les serveurs configurés avec les données nécessaires - possibilité d'avoir plusieurs serveurs Vagrant ------- +-------------+ +-----------------------------------+ |Configuration|->| Vagrant : exécution/provisioning | +-------------+ | | | +----------+ +------+ +---+ +---+ | +-----------+ | |VirtualBox| |VMWare| |AWS| |...| | |Box (image)|--->| +----------+ +------+ +---+ +---+ | +-----------+ +-----------------------------------+ Intérêts : - ABD - facilite la configuration de VirtualBox (à vérifier) : copie de `Vagrantfile` dans le dossier local et deux commandes (`init` et `up`) - permet de rajouter `italc`, mais le résultat peut être trop lent si les outils clients (graphiques) sont exécutés dans la VM - démarrage d'un SGBD rapide pour des tests - prototypage pour les besoins administratifs - mise en place d'une solution fonctionnelle facile - `gitlab` provides an installation guide for `vagrant`