10

Click here to load reader

#nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Embed Size (px)

Citation preview

Page 1: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr 1

Ansible, l’outil du sysadmin paresseux mais

pragmatique

Be Creative. Make Sense.

* Disclaimer : la plupart des images viennent de l’internet

Page 2: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Présentation

Kevin (rire)Responsable Infrastructure chez Creative Data

Ansible depuis plus de 9 mois

Linux Addict

RudyDevOps Freelance

4 ans de gestion de serveur et mise en prod

Ansible depuis 6 mois

@RudyBaer

2

Page 3: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Installation sous debian sur votre workstation

$ sudo apt-get install software-properties-common

$ sudo apt-add-repository ppa:ansible/ansible

$ sudo apt-get update

$ sudo apt-get install ansible

Pour désactiver la vache :

$ sudo apt-get remove cowsay

3

Page 4: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Principe

4

Page 5: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Notions de bases

+ Playbook, Role (Yaml)- name: some name apt:

pkg: nginxstate: latest update_cache: true

+ Inventory (dérivé du INI)[front]front1 ansible_ssh_host=10.210.21.3 ansible_ssh_user=vagrant ansible_ssh_port=22 custom_var=" from front1" port=80front2 ansible_ssh_host=10.210.21.4 ansible_ssh_user=vagrant ansible_ssh_port=22 custom_var=" from front2" port=80

+ Modules

5

Page 6: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Utilisation concrète chez Creative Data

+ Installation de grappes de serveurs

+ Mise à jour

+ Déploiement d’applicatif

+ Déploiement de configurations

+ “Documentation”

+ ...

6

Page 7: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Exemples

Installation d’un HAProxy :

ansible-playbook -i inventory_init_server.ini playbook_init_loadbalancer.yml

Installation de deux Nginx :

ansible-playbook -i inventory_init_server.ini playbook_init_server.yml

Ajout d’un Nginx :

ansible-playbook -i inventory_add_server.ini playbook_add_server.yml

7

Page 8: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Avantages

+ Installation simplifiée+ Gestion des fichiers de configuration+ Réutilisable+ États (version de paquets uniforme, …)+ Souplesse (Upgrade de versions, …)+ Communauté, documentation et plugins+ DOCUMENTATION+ Multi-noeuds+ Rien ou presque à installer sur les machines clientes+ ...

8

Page 9: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Trucs à la con

+ YAML indentation stricte + Messages d’erreurs parfois obscures+ La vache à désactiver par défaut+ La portée des variables : hôtes Ansible != machine cliente+ Overriding des variables Extra-vars > Inventory > Playbook > Vars > Defauts+ Re-tester le script sur un environnement vierge + Commandes différentes selon distribution (Debian/Ubuntu/RedHat)+ Obligation d’installer certains plugins ansible (httplib2)+ Droit de fichier en octal 0755 au lieu de 755+ Des tâches qui devraient prendre 1 seconde prennent plusieurs minutes

9

Page 10: #nwxtech9 Rudy Baer et Kevin Vézier - Ansible, l’outil du sysadmin paresseux mais pragmatique

Be creative. Make sense. www.creativedata.fr

Questions ?

10