Ce projet permet de constituer une envrionnement de développement pour module puppet. Il est nécessaire de récupérer les logiciels suivant :
En fonction de votre distribution, ces logiciels seront plus ou moins simple à installer. Veuillez utiliser les version fournies par oracle pour l'installation de virtualbox.
Remarque : ces logiciels fonctionnent aussi sous Microsoft/Windows.
Il faut créer un répertoire et récupérer le projet :
mkdir -p infra/
cd infra
git clone https://github.com/sitle/vagrant-gov.git
mkdir vagrant-gov/{boxes,modules,manifests,hieradata}
On récupére la box et on l'intégre à Vagrant :
cd infra/vagrant-gov/boxes
wget -c https://www.dropbox.com/s/0hze6qfdi0g6p23/debian7_amd64-3.box
vagrant box add debian7_amd64-3 debian7_amd64-3.box
Nous pouvons dès lors construire notre environnement de développement :
vagrant up proxy
vagrant up puppetmaster
On génère les certificats du serveur proxy :
vagrant ssh proxy
sudo puppet agent -t test
exit
Sur le puppetmaster, il faut signer la demande de certification du proxy :
vagrant ssh puppetmaster
sudo puppet cert sign proxy.srv.gov.pf
exit
Votre environnement est fin prêt à être utilisé.
Veuillez jeter un coup d'oeil au fichier infra/Vagrantfile
. Celui-ci contient la définition de l'environnement de dévelloppement. N'hésitez pas à le modifier pour rajouter de nouvelles machines.
Pour avoir le status des machines virtuelles, il faut taper la commande suivante :
vagrant status
Pour lancer une machine virtuelle :
vagrant up NOM_DE_VOTRE_MACHINE
Pour arrêter une machine virtuelle :
vagrant halt NOM_DE_VOTRE_MACHINE
Pour détruire votre machine virtuelle :
vagrant destroy NOM_DE_VOTRE_MACHINE
- Les systèmes des boxes seront par défaut dans leurs dernières versions disponibles à savoir Debian 7.1 et Centos 6.4 à l'heure actuelle.
- Pour l'instant, seul la box debian est fournie. A terme, la box centos sera disponible. Celui-ci permettra d'écrire des modules pour tout les environnements basés sur RedHat.
- Les boxes sont conçu à partir de modèle fournie dans ce projet (dans les répertoires preseed et kickstart).