60 lines
1.9 KiB
Markdown
60 lines
1.9 KiB
Markdown
## Installer et configurer ansible
|
|
|
|
**Tâche**: Installer et configurer ansible
|
|
|
|
**Condition**: Quand on souhaite utiliser ansible depuis son poste
|
|
|
|
**Norme**: gestionnaire de paquet, vim, ansible-config
|
|
|
|
### **Pratique:**
|
|
|
|
#### Installation
|
|
|
|
Installer ansible et cowsay avec le gestionnaire de paquet.
|
|
|
|
S'assurer de la présence des commandes ansible, ansible-playbook, ansible-inventory, etc...
|
|
|
|
#### Configuration
|
|
|
|
Faites une copie de sauvegarde de /etc/ansible/ansible.cfg
|
|
|
|
Récupérer le fichier ansible.cfg et installez le sur votre poste dans /etc/ansible
|
|
|
|
Dans le pad, en vous aidant de la documentation explicitez les directives suivantes:
|
|
|
|
* forks = 20
|
|
* ask_pass = true *sera changée une fois les cibles correctement configurées*
|
|
* host_key_checking = false
|
|
* remote_user = formation *sera changé une fois les cibles correctement configurées*
|
|
* become = true
|
|
* become_ask_pass = true *sera changé ultérieurement*
|
|
* retry_files_enabled = false
|
|
* gathering = smart
|
|
* fact_caching = jsonfile
|
|
* fact_caching_connection = /etc/ansible/facts
|
|
* fact_caching_timeout = 86400
|
|
* pipelining = True
|
|
* callback_whitelist = timer, profile_tasks
|
|
|
|
#### post configuration
|
|
|
|
Créer le répertoire **/etc/ansible/facts** (l'opérateur doit pouvoir écrire dedans)
|
|
|
|
Valider avec la commande ansible-config dump
|
|
|
|
Si vous utilisez **vi** pour l'édition de playbook, je vous invite à rajouter la ligne suivante dans votre fichier ~/.vimrc:
|
|
|
|
```
|
|
set softtabstop=2 expandtab shiftwidth=2 smarttab autoindent
|
|
```
|
|
|
|
Enfin, l'utilisation du plugin [identLine](https://github.com/Yggdroot/indentLine.git) peut également aider
|
|
|
|
```bash
|
|
git clone https://github.com/Yggdroot/indentLine.git ~/.vim/pack/vendor/start/indentLine
|
|
vim -u NONE -c "helptags ~/.vim/pack/vendor/start/indentLine/doc" -c "q"
|
|
```
|
|
|
|
**Performance**: On peut utiliser la commande *ansible-config
|
|
|
|
Proposition de solution: voir branche "solution" |