SlideShare une entreprise Scribd logo
1  sur  22
Introduction à Ansible
Armand Guio – Ingénieur Système – Présentation en français libre de droits
 Description
 Aspects Techniques
 Applications
 La communauté
Sommaire
Qu’est-ce que le projet Ansible?
Questions sur StackOverflow
 Ansible est une plate-forme logicielle libre
pour la configuration et la gestion de plateformes linux et windows.
 Conçu en 2012 par Michael DeHaan, créateur de Clobber
 Clobber : serveur de provisionning opensource
 Succès en 2015, rachat par RedHat
Qu’est-ce que le projet Ansible?
 Ansible a séduit la communauté OpenSource
 +20 000 projets utilisant ansible
 9e projet python le plus populaire
 +10 000 scripts ansible
 Et les professionnels
 Amazon web services
 Google cloud platform
 Microsoft Azure
 OpenShit by RedHat
 Cisco Systems
 Airbus
Repositories suivis sur GitHub
Popularité sur Debian
Aspects Techniques
 Utiliser Ansible demande:
 Accès SSH
 Librairie python 2.6
 Pas d’agent, rien à maintenir
 Windows: PowerShell remoting
 Connexion
 Utilisateur, accès, droits
 Commandes
 Copie de fichiers
 Installation de paquets apt-get, rpm, yum
 Librairies pythons pour +1300 commandes
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Gathering Facts ********************************
Ok: [MachineA.Domain]
Ok: [MachineB.Domain]
Première
connexion
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Gathering Facts ********************************
Ok: [MachineA.Domain]
Ok: [MachineB.Domain]
Task: [Installer logiciel] **********************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Première
connexion
Installation
Sauf si déjà présente
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Gathering Facts ********************************
Ok: [MachineA.Domain]
Ok: [MachineB.Domain]
Task: [Installer logiciel] **********************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Task: [Copier configuration] *****************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Première
connexion
Installation
Sauf si déjà présente
Copie de configuration
Sauf si même version
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Gathering Facts ********************************
Ok: [MachineA.Domain]
Ok: [MachineB.Domain]
Task: [Installer logiciel] **********************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Task: [Copier configuration] *****************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Notified: [Redemarrer logiciel] *************
Changed: [MachineB.Domain]
Première
connexion
Installation
Sauf si déjà présente
Copie de configuration
Sauf si même version
Redémarrage application
Seulement si nouvelle config
Aspects Techniques
 Scripts en YAML
 Lisible, facile à modifier
 Vocabulaire
 Playbook : Ensemble d’actions
 Rôle :Liste d’actions
 Liste d’hôtes
 Variables
 Un Exemple :
 Installer un logiciel
 Définir une configuration
Play [Playbook01] *****************************
Gathering Facts ********************************
Ok: [MachineA.Domain]
Ok: [MachineB.Domain]
Task: [Installer logiciel] **********************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Task: [Copier configuration] *****************
Ok: [MachineA.Domain]
Changed: [MachineB.Domain]
Notified: [Redemarrer logiciel] *************
Changed: [MachineB.Domain]
Play Recap **************************************
[MachineA.Domain]: Ok=3 Changed=0
[MachineB.Domain]: Ok=1 Changed=2
Première
connexion
Installation
Sauf si déjà présente
Copie de configuration
Sauf si même version
Redémarrage application
Seulement si nouvelle config
Résultats
Applications
 Problème:
 6 serveurs complètement différents
 Géré manuellement
 Besoin d’une migration
Public Privé
Test
Prod
Val
Applications
 Problème:
 6 serveurs complètement différents
 Géré manuellement
 Besoin d’une migration
 Solution:
 Ansible
 Installation : Apt - Rpm
 Configuration: Modèles + Variables
 Taches planifiées
 Utilisateurs ssh
Public Privé
Test
Prod
Val
Applications
 Projet Devops
 Application Web
Applications
 Projet Devops
 Application Web
Applications
 Projet Devops
 Application Web
Environnement ✔
Configuration ✔
Applications
 Projet Devops
 Application Web
Environnement ✔
Configuration ✔
La communauté
19
 Ansible sur github
 Projets pour et par la communauté
 Des projets utilisant Ansible
 Des projets contribuant à Ansible
Repositories suivis sur GitHub
La communauté
20
 Ansible Galaxy
 Bibliothèque de Playbook générés par la communauté
 +10 000 projets prêt à l’emploi
 Gérer MongoDB, Mysql, Redis avec Ansible
 Playbook Selenium de l’exemple devops
La communauté
21
21
 Red Hat
 Propriétaires depuis 2015
 Support technique
 Interface graphique Ansible Tower
“Ansible is Simple IT Automation”
 Provisionnement ✓
 Gestion de configuration ✓
 Déploiement d’application ✓
 Déploiement continue ✓
 Gestion de la sécurité ✓
 Orchestration ✓

Contenu connexe

Tendances

Intégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsIntégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsKokou Gaglo
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPNCharif Khrichfa
 
Authentification par certificat (clear box)
Authentification par certificat (clear box)Authentification par certificat (clear box)
Authentification par certificat (clear box)Ousmane BADJI
 
Installer et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxInstaller et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxZakariyaa AIT ELMOUDEN
 
ネットワークエンジニア的Ansibleの始め方
ネットワークエンジニア的Ansibleの始め方ネットワークエンジニア的Ansibleの始め方
ネットワークエンジニア的Ansibleの始め方akira6592
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationJohn Lynch
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with AnsibleRayed Alrashed
 
CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes Adnan Rashid
 
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...Edureka!
 
Kolla talk at OpenStack Summit 2017 in Sydney
Kolla talk at OpenStack Summit 2017 in SydneyKolla talk at OpenStack Summit 2017 in Sydney
Kolla talk at OpenStack Summit 2017 in SydneyVikram G Hosakote
 
Kubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティKubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティNGINX, Inc.
 
PFsense 방화벽 소개
PFsense 방화벽 소개PFsense 방화벽 소개
PFsense 방화벽 소개ajj007
 
Network Automation with Ansible
Network Automation with AnsibleNetwork Automation with Ansible
Network Automation with AnsibleAnas
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationSuresh Kumar
 
Supervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec NagiosSupervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec Nagioschristedy keihouad
 

Tendances (20)

Intégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsIntégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec Jenkins
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPN
 
Etude de la virtualisation
Etude de la virtualisationEtude de la virtualisation
Etude de la virtualisation
 
Tuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-siteTuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-site
 
Authentification par certificat (clear box)
Authentification par certificat (clear box)Authentification par certificat (clear box)
Authentification par certificat (clear box)
 
Ansible - Introduction
Ansible - IntroductionAnsible - Introduction
Ansible - Introduction
 
Installer et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxInstaller et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linux
 
ネットワークエンジニア的Ansibleの始め方
ネットワークエンジニア的Ansibleの始め方ネットワークエンジニア的Ansibleの始め方
ネットワークエンジニア的Ansibleの始め方
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
IT Automation with Ansible
IT Automation with AnsibleIT Automation with Ansible
IT Automation with Ansible
 
CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes CKA Certified Kubernetes Administrator Notes
CKA Certified Kubernetes Administrator Notes
 
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...
Kubernetes Deployment Tutorial | Kubernetes Tutorial For Beginners | Kubernet...
 
Kolla talk at OpenStack Summit 2017 in Sydney
Kolla talk at OpenStack Summit 2017 in SydneyKolla talk at OpenStack Summit 2017 in Sydney
Kolla talk at OpenStack Summit 2017 in Sydney
 
Kubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティKubernetes環境で実現するWebアプリケーションセキュリティ
Kubernetes環境で実現するWebアプリケーションセキュリティ
 
Ansible-cours .pdf
Ansible-cours .pdfAnsible-cours .pdf
Ansible-cours .pdf
 
PFsense 방화벽 소개
PFsense 방화벽 소개PFsense 방화벽 소개
PFsense 방화벽 소개
 
Network Automation with Ansible
Network Automation with AnsibleNetwork Automation with Ansible
Network Automation with Ansible
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
Supervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec NagiosSupervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec Nagios
 
Ansible
AnsibleAnsible
Ansible
 

Similaire à [FR] Présentatation d'Ansible

Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm
 
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Smile I.T is open
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busyboxAyoub Rouzi
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipseISIG
 
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...OpenNebula Project
 
Python application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsPython application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsNicolas Mussat
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide
 
Je configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsJe configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsRonan Amicel
 
Retour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesRetour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesVincent Composieux
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printempsJulien Maitrehenry
 
Julien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsJulien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsWeb à Québec
 
Formation Play! framework
Formation Play! frameworkFormation Play! framework
Formation Play! frameworkBenoît Simard
 
Introduction à SBT
Introduction à SBTIntroduction à SBT
Introduction à SBTJean Detoeuf
 
Mise en place d'active directory sous windows serveur 22
Mise en place d'active directory sous windows serveur 22Mise en place d'active directory sous windows serveur 22
Mise en place d'active directory sous windows serveur 22ImnaTech
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdfbibouechristian
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdfbibouechristian
 

Similaire à [FR] Présentatation d'Ansible (20)

Expozimbra
ExpozimbraExpozimbra
Expozimbra
 
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et Administration
 
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busybox
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
Déploiement pour l’hébergement d’architecture cliente et mise en place du Sel...
 
Python application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgentsPython application packaging @ MeilleursAgents
Python application packaging @ MeilleursAgents
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Je configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsJe configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtools
 
Retour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesRetour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, Kubernetes
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printemps
 
Julien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsJulien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printemps
 
Dynamic Languages
Dynamic LanguagesDynamic Languages
Dynamic Languages
 
Formation Play! framework
Formation Play! frameworkFormation Play! framework
Formation Play! framework
 
Introduction à SBT
Introduction à SBTIntroduction à SBT
Introduction à SBT
 
Mise en place d'active directory sous windows serveur 22
Mise en place d'active directory sous windows serveur 22Mise en place d'active directory sous windows serveur 22
Mise en place d'active directory sous windows serveur 22
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf
 
05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf05 - creation-playbook-ansible-stack-lamp.pdf
05 - creation-playbook-ansible-stack-lamp.pdf
 

[FR] Présentatation d'Ansible

  • 1. Introduction à Ansible Armand Guio – Ingénieur Système – Présentation en français libre de droits
  • 2.  Description  Aspects Techniques  Applications  La communauté Sommaire
  • 3. Qu’est-ce que le projet Ansible? Questions sur StackOverflow  Ansible est une plate-forme logicielle libre pour la configuration et la gestion de plateformes linux et windows.  Conçu en 2012 par Michael DeHaan, créateur de Clobber  Clobber : serveur de provisionning opensource  Succès en 2015, rachat par RedHat
  • 4. Qu’est-ce que le projet Ansible?  Ansible a séduit la communauté OpenSource  +20 000 projets utilisant ansible  9e projet python le plus populaire  +10 000 scripts ansible  Et les professionnels  Amazon web services  Google cloud platform  Microsoft Azure  OpenShit by RedHat  Cisco Systems  Airbus Repositories suivis sur GitHub Popularité sur Debian
  • 5. Aspects Techniques  Utiliser Ansible demande:  Accès SSH  Librairie python 2.6  Pas d’agent, rien à maintenir  Windows: PowerShell remoting  Connexion  Utilisateur, accès, droits  Commandes  Copie de fichiers  Installation de paquets apt-get, rpm, yum  Librairies pythons pour +1300 commandes
  • 6. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables
  • 7. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] *****************************
  • 8. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] ***************************** Gathering Facts ******************************** Ok: [MachineA.Domain] Ok: [MachineB.Domain] Première connexion
  • 9. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] ***************************** Gathering Facts ******************************** Ok: [MachineA.Domain] Ok: [MachineB.Domain] Task: [Installer logiciel] ********************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Première connexion Installation Sauf si déjà présente
  • 10. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] ***************************** Gathering Facts ******************************** Ok: [MachineA.Domain] Ok: [MachineB.Domain] Task: [Installer logiciel] ********************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Task: [Copier configuration] ***************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Première connexion Installation Sauf si déjà présente Copie de configuration Sauf si même version
  • 11. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] ***************************** Gathering Facts ******************************** Ok: [MachineA.Domain] Ok: [MachineB.Domain] Task: [Installer logiciel] ********************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Task: [Copier configuration] ***************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Notified: [Redemarrer logiciel] ************* Changed: [MachineB.Domain] Première connexion Installation Sauf si déjà présente Copie de configuration Sauf si même version Redémarrage application Seulement si nouvelle config
  • 12. Aspects Techniques  Scripts en YAML  Lisible, facile à modifier  Vocabulaire  Playbook : Ensemble d’actions  Rôle :Liste d’actions  Liste d’hôtes  Variables  Un Exemple :  Installer un logiciel  Définir une configuration Play [Playbook01] ***************************** Gathering Facts ******************************** Ok: [MachineA.Domain] Ok: [MachineB.Domain] Task: [Installer logiciel] ********************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Task: [Copier configuration] ***************** Ok: [MachineA.Domain] Changed: [MachineB.Domain] Notified: [Redemarrer logiciel] ************* Changed: [MachineB.Domain] Play Recap ************************************** [MachineA.Domain]: Ok=3 Changed=0 [MachineB.Domain]: Ok=1 Changed=2 Première connexion Installation Sauf si déjà présente Copie de configuration Sauf si même version Redémarrage application Seulement si nouvelle config Résultats
  • 13. Applications  Problème:  6 serveurs complètement différents  Géré manuellement  Besoin d’une migration Public Privé Test Prod Val
  • 14. Applications  Problème:  6 serveurs complètement différents  Géré manuellement  Besoin d’une migration  Solution:  Ansible  Installation : Apt - Rpm  Configuration: Modèles + Variables  Taches planifiées  Utilisateurs ssh Public Privé Test Prod Val
  • 17. Applications  Projet Devops  Application Web Environnement ✔ Configuration ✔
  • 18. Applications  Projet Devops  Application Web Environnement ✔ Configuration ✔
  • 19. La communauté 19  Ansible sur github  Projets pour et par la communauté  Des projets utilisant Ansible  Des projets contribuant à Ansible Repositories suivis sur GitHub
  • 20. La communauté 20  Ansible Galaxy  Bibliothèque de Playbook générés par la communauté  +10 000 projets prêt à l’emploi  Gérer MongoDB, Mysql, Redis avec Ansible  Playbook Selenium de l’exemple devops
  • 21. La communauté 21 21  Red Hat  Propriétaires depuis 2015  Support technique  Interface graphique Ansible Tower
  • 22. “Ansible is Simple IT Automation”  Provisionnement ✓  Gestion de configuration ✓  Déploiement d’application ✓  Déploiement continue ✓  Gestion de la sécurité ✓  Orchestration ✓