SlideShare une entreprise Scribd logo
1 Présentation PuppetPrésentation Puppet & démo technique
2 PuppetQu'est-ce que c'est ? A quoi ça sert ?
Système de gestion centralisée des configurations (SCM)
• Chef
• CFEngine
• Puppet
• Salt
• Ansible
• …
→ Résoud les problèmes d'administration systèmes de
grands parcs
• Tâches répétitives
• Supervision de l'état du parc
• Audit
• etc.
3 PuppetQu'est-ce que c'est ? A quoi ça sert ?
Méthodes possibles d'administration de grands parcs
• Manuellement → long et source d'erreurs humaines
• Boucle SSH (script)
→ Long!
→ Comment vérifier les résultats ?
→ Reprise sur erreur
→ Pré-requis: s'assurer que tous les systèmes sont iso (ou s'assurer que
tous les cas de figure sont gérés)
• Update.sh (script au boot ou par cron/scheduler)
→ comment s'assurer que tous les noeuds ont bien exécuté le script ?
→ mêmes problèmes
→ comment distinguer les noeuds ?
• Agent
→ Puppet
→ Intrusif (Ruby)
4 Déclaratif vs. impératifLes concepts principaux
5 Avantages du déclaratifLes concepts principaux
Avantages du déclaratif
• On décrit l'état voulu, pas ce qu'il faut faire pour y arriver
• Rapide, tout le parc applique les règles en parallèle
• Pas de vérification des résultats. Un noeud est soit dans l'état désiré, soit pas
• Pas de reprise sur erreur. Il faut simplement investiguer pourquoi un noeud ne
tend pas vers l'état désiré
• Pas de nécessité de s'assurer que les noeuds sont dans un certain état initial
→ Le même code déclaratif amène vers l'état désiré un noeud vierge ou un
noeud presque dans l'état désiré
• Le code déclaratif a accès aux caractéristiques des noeuds
→ Il est très facile de distinguer les noeuds
6 Avantages de PuppetArchitecture
Avantages de Puppet
• Gestion centralisée, interfaces
de gestion permettant de voir
l'état du parc
• Inventaire
→ facter récupère
automatiquement de façon
centralisée toute valeur
intéressante
→ PuppetDB
7 Avantages du langage PuppetLes concepts principaux
Avantages du langage
• Graphe de dépendences
• Idempotence
• Modules (https://forge.puppet.com/)
→ réutilisation de code
→ exemple mysql::db
• Cross-platform
Exemple 1
group { 'web':
ensure => present,
gid => 502,
}
user { 'john':
ensure => present,
gid => “web”,
groups => [“adm”, “staff”],
shell => “/bin/bash”,
require => Group['web'],
}
Exemple 2
package { 'htop':
ensure => present,
}
i
8 Puppetpuppet.clevernetsystems.com
Démo Puppet
15 minutes
Technologies :
9 Infrastructure As CodeEnvironnements et versioning
Versioning du code
• Environnements (dev, valid, prod, windows, linux, mac, etc.)
• Utilisation de Subversion ou Git pour versionner le code
→ Audit (qui a modifié quoi à quel moment)
→ Risque et compliance
→ Possibilité de retour en arrière
→ Multi-utilisateurs
→ Branches

Contenu connexe

Tendances

Introduction a la securité informatique Volume1
Introduction a la securité informatique Volume1Introduction a la securité informatique Volume1
Introduction a la securité informatique Volume1
Sylvain Maret
 
Application Security Logging with Splunk using Java
Application Security Logging with Splunk using JavaApplication Security Logging with Splunk using Java
Application Security Logging with Splunk using Java
Robert Grupe, CSSLP CISSP PE PMP
 
Cybersecurité dossier
Cybersecurité dossier Cybersecurité dossier
Cybersecurité dossier
MandyDentzer
 
Firewall
FirewallFirewall
Firewall
Yadh Krandel
 
La sécurité informatique
La sécurité informatiqueLa sécurité informatique
La sécurité informatiqueSaber Ferjani
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1
Lilia Sfaxi
 
Siem OSSIM
Siem OSSIMSiem OSSIM
Ch_1 - Généralités sur la sécurité informatique.pdf
Ch_1 - Généralités sur la sécurité informatique.pdfCh_1 - Généralités sur la sécurité informatique.pdf
Ch_1 - Généralités sur la sécurité informatique.pdf
Nafissa11
 
Metasploit ile Android Telefonu Hackleme
Metasploit ile Android Telefonu HacklemeMetasploit ile Android Telefonu Hackleme
Metasploit ile Android Telefonu Hackleme
Büşra Yenidoğan
 
3GPP LTE Detailed explanation 4 (X2 Handover)
3GPP LTE Detailed explanation 4 (X2 Handover)3GPP LTE Detailed explanation 4 (X2 Handover)
3GPP LTE Detailed explanation 4 (X2 Handover)
Ryuichi Yasunaga
 
Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)
Network Intelligence India
 
Tuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-siteTuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-site
Dimitri LEMBOKOLO
 
memoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagiosmemoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagios
abouaalexis
 
Présentation sur splunk
Présentation sur splunkPrésentation sur splunk
Présentation sur splunk
Najib Ihsine
 
Presentación-nessus
Presentación-nessusPresentación-nessus
Presentación-nessus
nana nana
 
Authentification par certificat (clear box)
Authentification par certificat (clear box)Authentification par certificat (clear box)
Authentification par certificat (clear box)
Ousmane BADJI
 
HPE ProLiant DL360 Gen10 Server Data Sheet
HPE ProLiant DL360 Gen10 Server Data SheetHPE ProLiant DL360 Gen10 Server Data Sheet
HPE ProLiant DL360 Gen10 Server Data Sheet
美兰 曾
 
Gestion des LOGS savec syslog+loganalyzer
Gestion des LOGS savec syslog+loganalyzerGestion des LOGS savec syslog+loganalyzer
Gestion des LOGS savec syslog+loganalyzer
Mohamet Lamine DIOP
 
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Microsoft Technet France
 
vpn-site-a-site-avec-des-routeurs-cisco
 vpn-site-a-site-avec-des-routeurs-cisco vpn-site-a-site-avec-des-routeurs-cisco
vpn-site-a-site-avec-des-routeurs-cisco
Camara Assane
 

Tendances (20)

Introduction a la securité informatique Volume1
Introduction a la securité informatique Volume1Introduction a la securité informatique Volume1
Introduction a la securité informatique Volume1
 
Application Security Logging with Splunk using Java
Application Security Logging with Splunk using JavaApplication Security Logging with Splunk using Java
Application Security Logging with Splunk using Java
 
Cybersecurité dossier
Cybersecurité dossier Cybersecurité dossier
Cybersecurité dossier
 
Firewall
FirewallFirewall
Firewall
 
La sécurité informatique
La sécurité informatiqueLa sécurité informatique
La sécurité informatique
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1
 
Siem OSSIM
Siem OSSIMSiem OSSIM
Siem OSSIM
 
Ch_1 - Généralités sur la sécurité informatique.pdf
Ch_1 - Généralités sur la sécurité informatique.pdfCh_1 - Généralités sur la sécurité informatique.pdf
Ch_1 - Généralités sur la sécurité informatique.pdf
 
Metasploit ile Android Telefonu Hackleme
Metasploit ile Android Telefonu HacklemeMetasploit ile Android Telefonu Hackleme
Metasploit ile Android Telefonu Hackleme
 
3GPP LTE Detailed explanation 4 (X2 Handover)
3GPP LTE Detailed explanation 4 (X2 Handover)3GPP LTE Detailed explanation 4 (X2 Handover)
3GPP LTE Detailed explanation 4 (X2 Handover)
 
Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)Data Leakage Prevention (DLP)
Data Leakage Prevention (DLP)
 
Tuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-siteTuto VP IPSEC Site-to-site
Tuto VP IPSEC Site-to-site
 
memoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagiosmemoire utilisation de Puppet et Nagios
memoire utilisation de Puppet et Nagios
 
Présentation sur splunk
Présentation sur splunkPrésentation sur splunk
Présentation sur splunk
 
Presentación-nessus
Presentación-nessusPresentación-nessus
Presentación-nessus
 
Authentification par certificat (clear box)
Authentification par certificat (clear box)Authentification par certificat (clear box)
Authentification par certificat (clear box)
 
HPE ProLiant DL360 Gen10 Server Data Sheet
HPE ProLiant DL360 Gen10 Server Data SheetHPE ProLiant DL360 Gen10 Server Data Sheet
HPE ProLiant DL360 Gen10 Server Data Sheet
 
Gestion des LOGS savec syslog+loganalyzer
Gestion des LOGS savec syslog+loganalyzerGestion des LOGS savec syslog+loganalyzer
Gestion des LOGS savec syslog+loganalyzer
 
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
Tout sur les solutions de Haute Disponibilité et Disaster Recovery de SQL Ser...
 
vpn-site-a-site-avec-des-routeurs-cisco
 vpn-site-a-site-avec-des-routeurs-cisco vpn-site-a-site-avec-des-routeurs-cisco
vpn-site-a-site-avec-des-routeurs-cisco
 

Similaire à Présentation Puppet

Industrialiser le contrat dans un projet PHP
Industrialiser le contrat dans un projet PHPIndustrialiser le contrat dans un projet PHP
Industrialiser le contrat dans un projet PHP
halleck45
 
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
Olivier DASINI
 
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
Adrian CID ALMAGUER
 
Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
Microsoft Technet France
 
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Guillaume Chevalier
 
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
Normandy JUG
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
Stéphane Liétard
 
Puppet slides
Puppet slidesPuppet slides
Puppet slides
Pierre Mavro
 
Paris Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascriptParis Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascript
Michael Akbaraly
 
Road map to DevOps engineering - Elie Sirius
Road map to DevOps engineering -  Elie SiriusRoad map to DevOps engineering -  Elie Sirius
Road map to DevOps engineering - Elie Sirius
GDG Bujumbura
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven
Arnaud Héritier
 
Diagnostic performances
Diagnostic performancesDiagnostic performances
Diagnostic performances
Claude Falguiere
 
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Benoît de CHATEAUVIEUX
 
TD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdfTD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdf
Ines Ben Hassine
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
Marc Bojoly
 
Présentation devops&puppet 04112014
Présentation devops&puppet 04112014 Présentation devops&puppet 04112014
Présentation devops&puppet 04112014
Roberto Barros De Sousa
 
RUDDER - Continuous Configuration (configuration management + continuous audi...
RUDDER - Continuous Configuration (configuration management + continuous audi...RUDDER - Continuous Configuration (configuration management + continuous audi...
RUDDER - Continuous Configuration (configuration management + continuous audi...
RUDDER
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2
Christophe Rochefolle
 
Formation Google App Engine
Formation Google App EngineFormation Google App Engine
Formation Google App Engine
Abdelhakim Rhanizar
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09
Olivier Gutknecht
 

Similaire à Présentation Puppet (20)

Industrialiser le contrat dans un projet PHP
Industrialiser le contrat dans un projet PHPIndustrialiser le contrat dans un projet PHP
Industrialiser le contrat dans un projet PHP
 
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
 
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
Quelques conseils sur la migration des modules à Drupal 8. Étude de cas: Node...
 
Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
 
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
 
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
Capacity Planning : Pratiques et outils pour regarder la foudre tomber sans p...
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
 
Puppet slides
Puppet slidesPuppet slides
Puppet slides
 
Paris Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascriptParis Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascript
 
Road map to DevOps engineering - Elie Sirius
Road map to DevOps engineering -  Elie SiriusRoad map to DevOps engineering -  Elie Sirius
Road map to DevOps engineering - Elie Sirius
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven
 
Diagnostic performances
Diagnostic performancesDiagnostic performances
Diagnostic performances
 
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
Démo Gatling au Performance User Group de Casablanca - 25 sept 2014
 
TD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdfTD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdf
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
 
Présentation devops&puppet 04112014
Présentation devops&puppet 04112014 Présentation devops&puppet 04112014
Présentation devops&puppet 04112014
 
RUDDER - Continuous Configuration (configuration management + continuous audi...
RUDDER - Continuous Configuration (configuration management + continuous audi...RUDDER - Continuous Configuration (configuration management + continuous audi...
RUDDER - Continuous Configuration (configuration management + continuous audi...
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2
 
Formation Google App Engine
Formation Google App EngineFormation Google App Engine
Formation Google App Engine
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09
 

Présentation Puppet

  • 1. 1 Présentation PuppetPrésentation Puppet & démo technique
  • 2. 2 PuppetQu'est-ce que c'est ? A quoi ça sert ? Système de gestion centralisée des configurations (SCM) • Chef • CFEngine • Puppet • Salt • Ansible • … → Résoud les problèmes d'administration systèmes de grands parcs • Tâches répétitives • Supervision de l'état du parc • Audit • etc.
  • 3. 3 PuppetQu'est-ce que c'est ? A quoi ça sert ? Méthodes possibles d'administration de grands parcs • Manuellement → long et source d'erreurs humaines • Boucle SSH (script) → Long! → Comment vérifier les résultats ? → Reprise sur erreur → Pré-requis: s'assurer que tous les systèmes sont iso (ou s'assurer que tous les cas de figure sont gérés) • Update.sh (script au boot ou par cron/scheduler) → comment s'assurer que tous les noeuds ont bien exécuté le script ? → mêmes problèmes → comment distinguer les noeuds ? • Agent → Puppet → Intrusif (Ruby)
  • 4. 4 Déclaratif vs. impératifLes concepts principaux
  • 5. 5 Avantages du déclaratifLes concepts principaux Avantages du déclaratif • On décrit l'état voulu, pas ce qu'il faut faire pour y arriver • Rapide, tout le parc applique les règles en parallèle • Pas de vérification des résultats. Un noeud est soit dans l'état désiré, soit pas • Pas de reprise sur erreur. Il faut simplement investiguer pourquoi un noeud ne tend pas vers l'état désiré • Pas de nécessité de s'assurer que les noeuds sont dans un certain état initial → Le même code déclaratif amène vers l'état désiré un noeud vierge ou un noeud presque dans l'état désiré • Le code déclaratif a accès aux caractéristiques des noeuds → Il est très facile de distinguer les noeuds
  • 6. 6 Avantages de PuppetArchitecture Avantages de Puppet • Gestion centralisée, interfaces de gestion permettant de voir l'état du parc • Inventaire → facter récupère automatiquement de façon centralisée toute valeur intéressante → PuppetDB
  • 7. 7 Avantages du langage PuppetLes concepts principaux Avantages du langage • Graphe de dépendences • Idempotence • Modules (https://forge.puppet.com/) → réutilisation de code → exemple mysql::db • Cross-platform Exemple 1 group { 'web': ensure => present, gid => 502, } user { 'john': ensure => present, gid => “web”, groups => [“adm”, “staff”], shell => “/bin/bash”, require => Group['web'], } Exemple 2 package { 'htop': ensure => present, }
  • 9. 9 Infrastructure As CodeEnvironnements et versioning Versioning du code • Environnements (dev, valid, prod, windows, linux, mac, etc.) • Utilisation de Subversion ou Git pour versionner le code → Audit (qui a modifié quoi à quel moment) → Risque et compliance → Possibilité de retour en arrière → Multi-utilisateurs → Branches