Les premiers playbooks Ansible
Si vous suivez mon blog, vous savez pourquoi Ansible, c’est bien, comment l’installer et le tester.
Maintenant on va passer aux choses sérieuses : Utiliser les playbooks.
Playbooks ???
Les playbooks sont des scénarii dans lesquels sont décrits des actions que les « agents » doivent réaliser.
Ces playbooks sont écrits en YAML, donc ils sont très lisibles.
Réparer Shellshock
Sur le « serveur » Ansible créer un fichier /etc/ansible/playbooks/shellshock-patch.yml :
---
- hosts: debian
remote_user: smig
tasks:
- name: Upgrade Bash
apt: name=bash state=latest
update_cache=yes
sudo: yes
Ce qui signifie :
Exécuter une tâche sur les hôtes du groupe debian :
apt-get update && apt-get install bash en tant qu’utilisateur admin (qui est sudoer)
Pour exécuter ce playbook, on lance :
ansible-playbook /etc/ansible/playbooks/shellshock-patch.yml --ask-sudo-pass
Et maintenant Apache/Php
Maintenant on va se servir d’Ansible pour déployer un Apache :
# playbook.yml
---
- hosts: all
tasks:
- name: Installer Apache
apt: name=apache2 state=present
update_cache=yes
sudo: yes
- name: Installer Php5
apt: name=libapache2-mod-php5 state=present
- name: Démarrer le service Apache
service: name=apache2 state=running enabled=yes
- name: Afficher un phpinfo
copy: src=info.php dest=/var/www/index.php mode=0664
Le script info.php est à créer dans le répertoire dans lequel vous allez exécuter Ansible :
<?php
phpinfo();
?>
« On the next episode » : Un script de post-install de serveur Debian/Ubuntu avec Ansible.