Parallélisation de tâches sur de multiples serveurs avec Ansible

De Linux Server Wiki
Aller à la navigation Aller à la recherche


Déjà eu besoin d’exécuter la même action sur plusieurs serveur ? Vous venez de voir qu'une grosse faille de sécurité a été corrigé dans apache et vous réalisez que vous devez mettre à jour votre parc de 200 machines ? Et en plus de ça vous êtes flemmard et vous n'avez pas envie de monter une infrastructure client-serveur pour maintenir les machies à jour ? Ansible est fait pour vous. Ansible utilise ssh pour communiquer avec les serveurs et ne nécessite l'installation d'aucun autre paquet pour fonctionner.

Sur votre machine locale :

aptitude install ansible

Sur les serveurs ? Vous n'avez besoin de rien de plus que les paquets minimaux de python 2.x.

aptitude install python

configuration

Le fichier principal d'ansible est le fichier d'inventaire dans lequel vous listez les différentes machines à gérer avec ansible. Par défaut, ce fichier est /etc/ansible/hosts. Vous pouvez cependant utiliser n'importe quel fichier et le préciser lors de l'invocation de ansible.

Exemple de fichier hosts :

[node1]
vm1.domain.tld
vm2.domain.tld

[node2]
vm3.domain.tld
vm4.domain.tld