Ansible : installation : Différence entre versions
De wikiGite
(Une révision intermédiaire par le même utilisateur non affichée) | |||
Ligne 1 : | Ligne 1 : | ||
== A partir des sources == | == A partir des sources == | ||
+ | <syntaxhighlight lang="bash" enclose="div"> | ||
git clone git://github.com/ansible/ansible.git | git clone git://github.com/ansible/ansible.git | ||
cd ./ansible | cd ./ansible | ||
Ligne 6 : | Ligne 7 : | ||
easy_install pyyaml # yaml syntax parser | easy_install pyyaml # yaml syntax parser | ||
easy_install paramiko # parallel ssh | easy_install paramiko # parallel ssh | ||
− | + | </syntaxhighlight> | |
Créer le fichier hosts et les playbooks (voir [[Ansible: utilisation]]) | Créer le fichier hosts et les playbooks (voir [[Ansible: utilisation]]) | ||
== Sur CentOS6 == | == Sur CentOS6 == | ||
+ | <syntaxhighlight lang="bash" enclose="div"> | ||
yum install --enablerepo=epel ansible | yum install --enablerepo=epel ansible | ||
− | + | </syntaxhighlight> | |
Les fichiers de configuration se trouvent dans /etc/ansible | Les fichiers de configuration se trouvent dans /etc/ansible | ||
Echanger les clés SSH entre le serveur et les clients. Initialiser une première connexion ssh pour enregistrer les clés des clients. | Echanger les clés SSH entre le serveur et les clients. Initialiser une première connexion ssh pour enregistrer les clés des clients. | ||
+ | |||
+ | '''NOTE''' : python-simplejson DOIT ETRE INSTALLE SUR LE CLIENT | ||
Puis tester ansible : | Puis tester ansible : | ||
+ | <syntaxhighlight lang="bash" enclose="div"> | ||
ansible all -m ping # ping sur tous les hosts | ansible all -m ping # ping sur tous les hosts | ||
ansible test -m ping # (= "ansible nodes:test -m ping") : sur un groupe "test" | ansible test -m ping # (= "ansible nodes:test -m ping") : sur un groupe "test" | ||
Ligne 27 : | Ligne 32 : | ||
ansible nodes:master -a "wget -qO - http://ifconfig.me/ip" -f 10 | ansible nodes:master -a "wget -qO - http://ifconfig.me/ip" -f 10 | ||
− | + | </syntaxhighlight> | |
== TIPS == | == TIPS == | ||
https://github.com/ansible/ansible-examples | https://github.com/ansible/ansible-examples | ||
− | |||
− |
Version actuelle datée du 20 mars 2015 à 13:23
A partir des sources
git clone git://github.com/ansible/ansible.git
cd ./ansible
make install
easy_install jinja2 # templating engine
easy_install pyyaml # yaml syntax parser
easy_install paramiko # parallel ssh
Créer le fichier hosts et les playbooks (voir Ansible: utilisation)
Sur CentOS6
yum install --enablerepo=epel ansible
Les fichiers de configuration se trouvent dans /etc/ansible
Echanger les clés SSH entre le serveur et les clients. Initialiser une première connexion ssh pour enregistrer les clés des clients.
NOTE : python-simplejson DOIT ETRE INSTALLE SUR LE CLIENT
Puis tester ansible :
ansible all -m ping # ping sur tous les hosts
ansible test -m ping # (= "ansible nodes:test -m ping") : sur un groupe "test"
ansible test-puppet.domaine.fr -m ping # sur un host en particulier
ansible all -m lineinfile -a 'dest=/etc/puppet/puppet.conf regexp="server=" line="server=test-puppet.domaine.fr"'
ansible-playbook monplaybook.yml --list-hosts # ne lance pas le book, liste seulement les hosts
ansible-playbook monplaybook.yml --extra-vars="host=test-puppet.domaine.fr" # si "hosts=$host" dans le playbook, permet de ne lancer celui-ci que sur le host donné sur la ligne de commande
ansible nodes:master -a "wget -qO - http://ifconfig.me/ip" -f 10