SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
DevOps Day 2014
Puppet:
Un outil pour les installer tous
Chapitre 1
Le mouvement DevOps
1
Un projet informatique
3
La faute de l’Agile
4
La faute de l’Agile
5
L’infrastructure est peu Agile
6
Chapitre 2
Pourquoi Puppet ?
2
Pourquoi Puppet ?
Installer un projet ?
!
!
!
!
Diversité des plateformesA
C D
B
8
Cohérence des
environnements




Un langage commun
Chapitre 3
Architecture
3
Un run Puppet
11
PuppetMaster
Puppet
1
2
34
Chapitre 4
Infrastructure as
Code
4
A
C
Un ensemble de ressources
D
B
Un paquet ?
package{‘ntp’:

ensure => present

}



Un utilisateur ?
user{‘bob’:

ensure => present

}
Un fichier ?
file {‘/etc/profile’:

ensure => present

}
Un service ?
service {‘apache’:

ensure => ‘running’

}
13
Un module
14
class ntp{
package { 'ntp':
ensure => present,
before => File['/etc/ntp.conf']
}
file { '/etc/ntp.conf':
ensure => file,
owner => 0,
group => 0,
mode => '0644',
content => template("ntp/ntp_${::osfamily}.conf.erb"),
}
service { 'ntp':
ensure => present,
enable => true,
subscribe => File['/etc/ntp.conf']
}
}
Assigner un module à une machine
15
node 'agent1.localdomain' {
class{'ntp':}
}
Extensibilité
Ajout de ressources






Ajout de fonctions




















Ajout de facts




!
Et bien plus…
A
C
B
16
D
Le développement appliqué à l’infrastructure
Tests unitaires
Rspec-Puppet





Couverture de code
Total resources:   12
Touched resources: 7
Resource coverage: 58.33%
Untouched resources:
!
  Anchor[ntp::begin]
  Anchor[ntp::end]
  Class[Ntp::Params]
  Package[ntp]
  Service[ntp]



Tests d’intégration
serverspec, beaker





A
C
B
17
Chapitre 5
Retour d’expérience
5
La Poste
• Tri 60 millions d’enveloppes
par jour 

• Reparti sur 30 centres de tri

• Plus de 1000 serveurs en
production !
19
Infrastructure Puppet
• Un PuppetMaster 

• 2 runs Puppet par jour

• Version 0.25…

• Un ENC

• Des machines vierges en
« stand-by »
20
Boot
PXE
Run Puppet
ENC
o/
Provisioning d’une nouvelle machine
21
Chapitre 6
Demo !
6
Chapitre 7
Questions ?
7
Merci!

Weitere ähnliche Inhalte

Was ist angesagt?

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
Ludovic Piot
 
Déploiements avec Docker
Déploiements avec DockerDéploiements avec Docker
Déploiements avec Docker
Luis Lopez
 

Was ist angesagt? (20)

CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
 
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?DevOps : mission [im]possible ?
DevOps : mission [im]possible ?
 
Codons notre infrastructure
Codons notre infrastructureCodons notre infrastructure
Codons notre infrastructure
 
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
 
Introduction à docker.io
Introduction à docker.ioIntroduction à docker.io
Introduction à docker.io
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)
 
Livre blanc docker
Livre blanc docker Livre blanc docker
Livre blanc docker
 
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
 
Introduction à Docker et Gaudi
Introduction à Docker et GaudiIntroduction à Docker et Gaudi
Introduction à Docker et Gaudi
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
 
Déploiements avec Docker
Déploiements avec DockerDéploiements avec Docker
Déploiements avec Docker
 
Automatisation de la production
Automatisation de la productionAutomatisation de la production
Automatisation de la production
 
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
 
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
 
Présentation Docker
Présentation DockerPrésentation Docker
Présentation Docker
 
Open Recipes - Pouquoi le packaging est important pour l'intégration logicielle
Open Recipes - Pouquoi le packaging est important pour l'intégration logicielleOpen Recipes - Pouquoi le packaging est important pour l'intégration logicielle
Open Recipes - Pouquoi le packaging est important pour l'intégration logicielle
 
Docker du mythe à la réalité
Docker du mythe à la réalitéDocker du mythe à la réalité
Docker du mythe à la réalité
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
 
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
Docker nice meetup #1   construire, déployer et exécuter vos applications, ...Docker nice meetup #1   construire, déployer et exécuter vos applications, ...
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
 

Andere mochten auch

Andere mochten auch (20)

Journée DevOps : La boite à outil d'une équipe DevOps
Journée DevOps : La boite à outil d'une équipe DevOpsJournée DevOps : La boite à outil d'une équipe DevOps
Journée DevOps : La boite à outil d'une équipe DevOps
 
DEVOPS - La synthèse
DEVOPS - La synthèseDEVOPS - La synthèse
DEVOPS - La synthèse
 
Introduction à la démarche Devops
Introduction à la démarche DevopsIntroduction à la démarche Devops
Introduction à la démarche Devops
 
Meetup DevOps / WebOps Nîmes 20161020
Meetup DevOps / WebOps Nîmes 20161020Meetup DevOps / WebOps Nîmes 20161020
Meetup DevOps / WebOps Nîmes 20161020
 
DevOps
DevOpsDevOps
DevOps
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOps
 
Après l’#agilité, le #DevOps, la nouvelle arme de la DSI
Après l’#agilité, le #DevOps, la nouvelle arme de la DSIAprès l’#agilité, le #DevOps, la nouvelle arme de la DSI
Après l’#agilité, le #DevOps, la nouvelle arme de la DSI
 
Software Defined WebSphere Messaging Infrastructure with Puppet
Software Defined WebSphere Messaging Infrastructure with PuppetSoftware Defined WebSphere Messaging Infrastructure with Puppet
Software Defined WebSphere Messaging Infrastructure with Puppet
 
La typographie est l'affaire de tous - Humantalks Angers - Avril 2016
La typographie est l'affaire de tous - Humantalks Angers - Avril 2016La typographie est l'affaire de tous - Humantalks Angers - Avril 2016
La typographie est l'affaire de tous - Humantalks Angers - Avril 2016
 
Commande linux
Commande linuxCommande linux
Commande linux
 
Ippevent Ogury 2016
Ippevent Ogury 2016Ippevent Ogury 2016
Ippevent Ogury 2016
 
Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…Microsoft Azure : DevOps pour le Cloud... et réciproquement…
Microsoft Azure : DevOps pour le Cloud... et réciproquement…
 
Continous Improvement
Continous ImprovementContinous Improvement
Continous Improvement
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatisé
 
Les 10 commandes utiles pour surveiller un système Linux
Les 10 commandes utiles pour surveiller un système LinuxLes 10 commandes utiles pour surveiller un système Linux
Les 10 commandes utiles pour surveiller un système Linux
 
Devops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with PuppetDevops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with Puppet
 
Concept de l’Intégration Continue
Concept de l’Intégration ContinueConcept de l’Intégration Continue
Concept de l’Intégration Continue
 
Stack Technologique Google
Stack Technologique GoogleStack Technologique Google
Stack Technologique Google
 
Présentation Git & GitHub
Présentation Git & GitHubPrésentation Git & GitHub
Présentation Git & GitHub
 

Ähnlich wie Journée DevOps : Puppet, un outil pour les installer tous

Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
boulonvert
 
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
 
API != REST - procmail à la rescousse
API != REST - procmail à la rescousseAPI != REST - procmail à la rescousse
API != REST - procmail à la rescousse
Open Source Experience
 
20100221 my phingtool - blog
20100221   my phingtool - blog20100221   my phingtool - blog
20100221 my phingtool - blog
PHPPRO
 
Alphorm.com Formation Odoo Technique : Installer et Configurer
Alphorm.com Formation Odoo Technique : Installer et ConfigurerAlphorm.com Formation Odoo Technique : Installer et Configurer
Alphorm.com Formation Odoo Technique : Installer et Configurer
Alphorm
 

Ähnlich wie Journée DevOps : Puppet, un outil pour les installer tous (20)

Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
memoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagiosmemoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagios
 
De la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logicielsDe la chaîne de production au SI géré par des logiciels
De la chaîne de production au SI géré par des logiciels
 
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
 
API != REST - procmail à la rescousse
API != REST - procmail à la rescousseAPI != REST - procmail à la rescousse
API != REST - procmail à la rescousse
 
OpenStack dans la pratique
OpenStack dans la pratiqueOpenStack dans la pratique
OpenStack dans la pratique
 
Installer et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxInstaller et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linux
 
Openshift 3 & Kubernetes
Openshift 3 & KubernetesOpenshift 3 & Kubernetes
Openshift 3 & Kubernetes
 
Drush make driven development
Drush make driven developmentDrush make driven development
Drush make driven development
 
l'Industrialisation (avec PHP) @MMIConnect
l'Industrialisation (avec PHP) @MMIConnectl'Industrialisation (avec PHP) @MMIConnect
l'Industrialisation (avec PHP) @MMIConnect
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
 
Des tests modernes pour Drupal
Des tests modernes pour DrupalDes tests modernes pour Drupal
Des tests modernes pour Drupal
 
20100221 my phingtool - blog
20100221   my phingtool - blog20100221   my phingtool - blog
20100221 my phingtool - blog
 
découverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspectsdécouverte du langage python dans tous ses aspects
découverte du langage python dans tous ses aspects
 
Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)Présentation de Django @ Orange Labs (FR)
Présentation de Django @ Orange Labs (FR)
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 
Alphorm.com Formation Odoo Technique : Installer et Configurer
Alphorm.com Formation Odoo Technique : Installer et ConfigurerAlphorm.com Formation Odoo Technique : Installer et Configurer
Alphorm.com Formation Odoo Technique : Installer et Configurer
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
M211-V1-0909.pptx.pdf
M211-V1-0909.pptx.pdfM211-V1-0909.pptx.pdf
M211-V1-0909.pptx.pdf
 

Mehr von Publicis Sapient Engineering

Mehr von Publicis Sapient Engineering (20)

XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humainXebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
XebiCon'18 - L'algorithme de reconnaissance de formes par le cerveau humain
 
Xebicon'18 - IoT: From Edge to Cloud
Xebicon'18 - IoT: From Edge to CloudXebicon'18 - IoT: From Edge to Cloud
Xebicon'18 - IoT: From Edge to Cloud
 
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveurXebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
Xebicon'18 - Spark in jail : conteneurisez vos traitements data sans serveur
 
XebiCon'18 - Modern Infrastructure
XebiCon'18 - Modern InfrastructureXebiCon'18 - Modern Infrastructure
XebiCon'18 - Modern Infrastructure
 
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
XebiCon'18 - La Web App d'aujourd'hui et de demain : état de l'art et bleedin...
 
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
XebiCon'18 - Des notebook pour le monitoring avec Zeppelin
 
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
XebiCon'18 - Event Sourcing et RGPD, incompatibles ?
 
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
XebiCon'18 - Deno, le nouveau NodeJS qui inverse la tendance ?
 
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribuéXebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
XebiCon'18 - Boostez vos modèles avec du Deep Learning distribué
 
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
XebiCon'18 - Comment j'ai développé un jeu vidéo avec des outils de développe...
 
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
XebiCon'18 - Les utilisateurs finaux, les oubliés de nos produits !
 
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des datavizXebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
XebiCon'18 - Comment fausser l'interprétation de vos résultats avec des dataviz
 
XebiCon'18 - Le développeur dans la Pop Culture
XebiCon'18 - Le développeur dans la Pop Culture XebiCon'18 - Le développeur dans la Pop Culture
XebiCon'18 - Le développeur dans la Pop Culture
 
XebiCon'18 - Architecturer son application mobile pour la durabilité
XebiCon'18 - Architecturer son application mobile pour la durabilitéXebiCon'18 - Architecturer son application mobile pour la durabilité
XebiCon'18 - Architecturer son application mobile pour la durabilité
 
XebiCon'18 - Sécuriser son API avec OpenID Connect
XebiCon'18 - Sécuriser son API avec OpenID ConnectXebiCon'18 - Sécuriser son API avec OpenID Connect
XebiCon'18 - Sécuriser son API avec OpenID Connect
 
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
XebiCon'18 - Structuration du Temps et Dynamique de Groupes, Théorie organisa...
 
XebiCon'18 - Spark NLP, un an après
XebiCon'18 - Spark NLP, un an aprèsXebiCon'18 - Spark NLP, un an après
XebiCon'18 - Spark NLP, un an après
 
XebiCon'18 - La sécurité, douce illusion même en 2018
XebiCon'18 - La sécurité, douce illusion même en 2018XebiCon'18 - La sécurité, douce illusion même en 2018
XebiCon'18 - La sécurité, douce illusion même en 2018
 
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
XebiCon'18 - Utiliser Hyperledger Fabric pour la création d'une blockchain pr...
 
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
 

Journée DevOps : Puppet, un outil pour les installer tous