Your SlideShare is downloading. ×
0
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Cobbler puppet
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cobbler puppet

2,016

Published on

Présentation de Cobbler & Puppet pour une administration sereine et détendue. …

Présentation de Cobbler & Puppet pour une administration sereine et détendue.
Par William Hoffmann - Senior Instructor.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,016
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
42
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. cobbler et Puppet William HoffmannProgrammeDétails techniquesIntroductioncobbler Pour une administration sereine etPuppet détendueDémonstrationPour finir William Hoffmann - Senior Instructor Red Hat France 12 Décembre 2010 1/23 Pour une administration sereine et détendue ± Forward
  • 2. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppetDémonstrationPour finir 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 3. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppet 2 IntroductionDémonstrationPour finir 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 4. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppet 2 IntroductionDémonstrationPour finir 3 cobbler 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 5. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppet 2 IntroductionDémonstrationPour finir 3 cobbler 4 Puppet 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 6. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppet 2 IntroductionDémonstrationPour finir 3 cobbler 4 Puppet 5 Démonstration 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 7. cobbler et Puppet Programme des réjouissances William HoffmannProgrammeDétails techniques 1 Détails techniquesIntroductioncobblerPuppet 2 IntroductionDémonstrationPour finir 3 cobbler 4 Puppet 5 Démonstration 6 Pour finir 2/23 Pour une administration sereine et détendue ± Back ± Forward
  • 8. cobbler et Puppet Matériel utilisé William HoffmannProgramme Pour cette courte présentation j’ai utilisé :Détails techniques Mon fidèle T60 (2Go de RAM/160Go)Introduction 1 réseau bridgé vers l’exterieurcobbler 1 réseau privé en 172.31.10.0/16 pourPuppet l’infrastructure de démo.DémonstrationPour finir Une bonne vieille F11 3 machines virtuelles 1 machine virtuelle : server1.example.com en RHEL-5.4 : cobbler + puppet dhcp sur le réseau example.com (172.31.10.0/16) dns pour example.com 2 machines virtuelles : {mail,web}.example.com Installées via cobbler et configurées via puppet clientes dhcp sur le réseau example.com (172.31.10.0/16) 3/23 Pour une administration sereine et détendue ± Back ± Forward
  • 9. cobbler et Puppet La fin de la bidouille William Hoffmann 1000 comme 10ProgrammeDétails techniques L’utilisation conjointe de cobbler et Puppet permetIntroduction d’optimiser et d’industrialiser le cycle classique d’uncobbler Système d’Information (le fameux SI) :PuppetDémonstrationPour finir 4/23 Pour une administration sereine et détendue ± Back ± Forward
  • 10. cobbler et Puppet La fin de la bidouille William Hoffmann 1000 comme 10ProgrammeDétails techniques L’utilisation conjointe de cobbler et Puppet permetIntroduction d’optimiser et d’industrialiser le cycle classique d’uncobbler Système d’Information (le fameux SI) :PuppetDémonstration TestPour finir 4/23 Pour une administration sereine et détendue ± Back ± Forward
  • 11. cobbler et Puppet La fin de la bidouille William Hoffmann 1000 comme 10ProgrammeDétails techniques L’utilisation conjointe de cobbler et Puppet permetIntroduction d’optimiser et d’industrialiser le cycle classique d’uncobbler Système d’Information (le fameux SI) :PuppetDémonstration TestPour finir Pre-prod 4/23 Pour une administration sereine et détendue ± Back ± Forward
  • 12. cobbler et Puppet La fin de la bidouille William Hoffmann 1000 comme 10ProgrammeDétails techniques L’utilisation conjointe de cobbler et Puppet permetIntroduction d’optimiser et d’industrialiser le cycle classique d’uncobbler Système d’Information (le fameux SI) :PuppetDémonstration TestPour finir Pre-prod Prod cobbler et Puppet nous permettent de mettre en pratique le vieil adage : "Don’t scale with using people" 4/23 Pour une administration sereine et détendue ± Back ± Forward
  • 13. cobbler et Puppet cobbler et Puppet William Hoffmann C’est quoi ces trucs ?ProgrammeDétails techniques cobbler permet la configuration rapide et simpleIntroduction d’environnements d’installation réseau, qui permettentcobbler d’installer rapidement et simplement de nouveauxPuppet systèmes en ayant plusieurs profiles disponibles.Démonstration Puppet est un système pour automatiser les tâchesPour finir d’administration système classiques : déployement de fichiers de configuration, installation de nouveaux logiciels, configuration de services. 5/23 Pour une administration sereine et détendue ± Back ± Forward
  • 14. cobbler et Puppet Architecture de cobbler William HoffmannProgramme cobbler un frontend unique pour utiliser et configurer unDétails techniques serveur dhcp, un serveur tftp, il va nous permettre aussiIntroduction de gérer les différentes versions de nos distributionscobbler (Fedora {6..12}, RHEL {4,5}-{U0-Un})Puppet cobbler va nous permettre de garder synchronisés :DémonstrationPour finir DHCP. TFTP. DNS. Profiles de machines. dépots & distributions. fichiers kickstarts. 6/23 Pour une administration sereine et détendue ± Back ± Forward
  • 15. cobbler et Puppet Installation William HoffmannProgramme Sur fedora, cobbler est dans les dépôts officiels il suffit deDétails techniques faire :Introduction [admin@server1 ~] sudo /usr/bin/yum -y install cobblercobblerPuppet Sur une RHEL le moyen le plus simple est d’utiliser leDémonstration dépôt EPEL, il faut donc installer le package epel-releasePour finir et utiliser yum : [admin@server1 ~] sudo /usr/bin/rpm -ivh epel-release..rpm [admin@server1 ~] sudo /usr/bin/yum -y install cobbler 7/23 Pour une administration sereine et détendue ± Back ± Forward
  • 16. cobbler et Puppet Configuration William Hoffmann /etc/cobbler/settingsProgrammeDétails techniques La première chose à faire est de configuer sudo, pourIntroduction déléguer à l’utilisateur admin, le droit d’utiliser lacobbler commande cobbler :Puppet Cmnd_Alias COBBLER = /usr/bin/cobblerDémonstration %admin ALL = ... COBBLERPour finir Puis définir quelques paramètres dans /etc/cobbler/settings : default_kickstart: /var/lib/cobbler/ kickstarts/default.ks default_password_crypted: "$1$HnnJr5sU $1E550pg82P.qJmm0oVuNN." manage_forward_zones: "example.com" manage_reverse_zones: "172.31.10" 8/23 Pour une administration sereine et détendue ± Back ± Forward
  • 17. cobbler et Puppet Configuration William Hoffmann Choix des modulesProgrammeDétails techniques En plus du /etc/cobbler/settings, il y a d’autresIntroduction fichiers qui peuvent s’avérer intéressants comme lecobbler /etc/cobbler/modules qui permet de choisir sonPuppet serveur dns et son serveur dhcp :Démonstration [dns]Pour finir module = manage_bind [dhcp] module = manage_isc Il faut ensuite adapter les fichiers de modèles comme /etc/cobbler/dhcpd.template, ces fichiers seront utilisés à chaque synchronisation de cobbler, c’est pourquoi il ne faut jamais éditer les fichers comme /etc/dhcpd.conf. 9/23 Pour une administration sereine et détendue ± Back ± Forward
  • 18. cobbler et Puppet Configuration William Hoffmann KickstartsProgrammeDétails techniques Pour installer les machines cobbler utilise des fichiersIntroduction kickstart, il est possible de préciser à chaque fois quelcobbler fichier utiliser, mais il est plus simple de définir un fichierPuppet kickstart minimal qui servira de base pour toutes lesDémonstration installations. Ce fichier est à copier dansPour finir /var/lib/cobbler/kickstarts/default.ks. Il faut aussi noter quelques paramètres kickstart utilisés uniquement avec cobbler : $kickstart_start $yum_config_stanza $kickstart_done 10/23 Pour une administration sereine et détendue ± Back ± Forward
  • 19. cobbler et Puppet Configuration William Hoffmann SNIPPETProgrammeDétails techniques Une fonctionnalité intéressante de cobbler est laIntroduction possibilité d’utiliser des "snippets", ainsi la création d’uncobbler fichier /var/lib/cobbler/snippet/puppet_name,Puppet contenant :Démonstration echo ’PUPPET_SERVER=server1.example.com ’ Pour finir >> /etc/sysconfig/puppet Cela permettra d’appeler ce snippet dans le fichier kickstart avec une ligne : $SNIPPET(’puppet_name’) et l’action contenue dans le fichier se réalisera automagiquement. 11/23 Pour une administration sereine et détendue ± Back ± Forward
  • 20. cobbler et Puppet Utilisation William Hoffmann Distributions et profilsProgrammeDétails techniques Maintenant que cobbler est configuré il faut "remplir" lesIntroduction dépots :cobbler Importation d’une distribution :PuppetDémonstration [admin@server1 ~] sudo /usr/bin/cobbler import --mirror /mnt/isos --name RHEL-5.4-i386Pour finir Importation d’un dépôt externe ( EPEL ) [admin@server1 ~] sudo /usr/bin/cobbler repo add --mirror=http://mirror.org --name EPEL-5-i386 [admin@server1 ~] sudo /usr/bin/cobbler reposync (long) Importation d’un dépot externe à un profile : [admin@server1 ~] sudo /usr/bin/cobbler profile edit --name RHEL-5.4-i386 --repos EPEL-i386 12/23 Pour une administration sereine et détendue ± Back ± Forward
  • 21. cobbler et Puppet Utilisation William Hoffmann SystèmesProgrammeDétails techniques cobbler nous permet d’associer une adresse MAC, à uneIntroduction adresse IP et un profil de distribution :cobbler [admin@server1 ~] sudo /usr/bin/cobbler system add Puppet --name mail --ip 172.31.10.100 --mac BA:DC:0F:FE:00:01 Démonstration --profile RHEL-5.4-i386Pour finir Dans le cadre de cette démonstration, pour pouvoir installer la machine virtuelle il faut lancer : [user@laptop ~] sudo /usr/bin/virt-install -n mail -r 512 --vcpus=1 --os-type=linux --os-variant=virtio26 -v --accelerate --pxe --disk path=/dev/VG00/LVmail -w network=example -m BA:DC:0F:FE:00:01 Dans le cadre d’une utilisation avec des machines physiques, il suffirait de démarrer la machine physique en PXE. 13/23 Pour une administration sereine et détendue ± Back ± Forward
  • 22. cobbler et Puppet Utilisation William Hoffmann BuildisoProgrammeDétails techniques Pour les environnements sans dhcp ni PXE, la commandeIntroduction buildiso est parfaite :cobbler [admin@server1 ~] sudo /usr/bin/cobbler buildiso --iso=boot.isoPuppet - using/creating tempdir: /root/buildisoDémonstration - building tree for isolinux - copying miscellaneous filesPour finir - copying kernels and initrds - for profiles skipping Xen distro: RHEL-5.4-xen-i386 - generating a isolinux.cfg - generating profile list... - done writing config - running: mkisofs -quiet -o boot.iso -r -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V cobbler Install -R -J -T /root/buildiso ISO build complete You may wish to delete: /root/buildiso The output file is: boot.iso 14/23 Pour une administration sereine et détendue ± Back ± Forward
  • 23. cobbler et Puppet Puppet William Hoffmann ArchitectureProgrammeDétails techniques Puppet suit un modèle client-serveur pour permettreIntroduction d’harmoniser les configuration de différents systèmes.cobbler C’est un système utilisant un langague déclaratif pourPuppet exprimer les configurations système. Nous avons donc :DémonstrationPour finir Le puppetmaster : c’est le serveur distribuant les configurations Les clients (nodes ) qui représentent les sytèmes gérés. Une communication en xmlrpc via https pour assurer la liaison entre les différents membres. Les manifestes et recettes qui représentent les éléments de configuration 15/23 Pour une administration sereine et détendue ± Back ± Forward
  • 24. cobbler et Puppet Puppet William Hoffmann InstallationProgrammeDétails techniques L’installation de puppet est très simple, il suffit de faireIntroduction sur le serveur :cobbler [admin@server1 ~] sudo /usr/bin/yum -y install puppet-serverPuppetDémonstration Sur les nodes il est possible d’installer puppet avec yum,Pour finir mais il est plus simple d’ajouter le package puppet dans la section %package d’un fichier kickstart. 16/23 Pour une administration sereine et détendue ± Back ± Forward
  • 25. cobbler et Puppet Puppet William Hoffmann Configuration du serveurProgrammeDétails techniques La configuration du serveur se fait dans le fichierIntroduction /etc/puppet/puppet.conf, mais aussi et surtout danscobbler le fichier /etc/puppet/manifests/site.pp. Ce dernierPuppet est en fait un résumé de l’organisation du site deDémonstration production.Pour finir Listing 1 – Extrait du site.pp node basenode { include base_apps $user_admin = "admin" include sudo include sshd_config include motd include admin_pubkey $puppet_srv = "server1.example.com" include mod_puppet_client } node default inherits basenode {} 17/23 Pour une administration sereine et détendue ± Back ± Forward
  • 26. cobbler et Puppet Puppet William Hoffmann RecettesProgrammeDétails techniques La configuration se fait au travers de recettes quiIntroduction utilisent des types, les différents types sont assez divers :cobbler Files qui supporte des paramètres comme : content,PuppetDémonstration permissions, ownership. . .Pour finir Packages Services Les fichiers peuvent se baser sur des modèles, être téléchargés depuis une source externe ou depuis le serveur puppet. La réunion de plusieurs types se fait au travers de classes, par exemple la classe sudo est composée d’un package et d’un fichier. 18/23 Pour une administration sereine et détendue ± Back ± Forward
  • 27. cobbler et Puppet Puppet William Hoffmann ExampleProgrammeDétails techniquesIntroduction Listing 2 – La classe sudocobbler class sudo {Puppet package { "sudo":Démonstration ensure => installed,Pour finir } file { "/etc/sudoers": owner => "root", group => "root", mode => "440", content => template("sudo/sudoers.erb"), require => Package["sudo"], } } 19/23 Pour une administration sereine et détendue ± Back ± Forward
  • 28. cobbler et Puppet Puppet William Hoffmann Appel d’une classeProgrammeDétails techniques L’appel d’une classe se fait au travers du fichierIntroduction /etc/puppet/manifests/site.pp.cobblerPuppet Listing 3 – appel de la classe sudoDémonstration node basenode {Pour finir $user_admin = "admin" include sudo Et dans le modèle : Listing 4 – extrait d’un modèle <%= user_admin %> ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS, DIVERS 20/23 Pour une administration sereine et détendue ± Back ± Forward
  • 29. cobbler et Puppet Puppet William Hoffmann Configuration d’un noeudProgrammeDétails techniques Pour configurer un noeud, il suffit de lui dire quelIntroduction "master" utiliser, cela se fait dans le fichiercobbler /etc/sysconfig/puppetPuppet server = server1.example.comDémonstrationPour finir Il est aussi possible de "demander" au noeud de reporter les mises à jours avec le fichier /etc/sysconfig/puppet/tagmail.conf all = admin@example.com 21/23 Pour une administration sereine et détendue ± Back ± Forward
  • 30. cobbler et Puppet Démonstration William HoffmannProgrammeDétails techniquesIntroductioncobblerPuppetDémonstrationPour finir Installation avec cobbler Configuration des noeuds 22/23 Pour une administration sereine et détendue ± Back ± Forward
  • 31. cobbler et Puppet Pour finir William Hoffmann Aller plus loinProgrammeDétails techniques Gérer plusieurs distributions avec cobblerIntroduction Utiliser GIT pour gérer les manifestes de puppetcobblerPuppet Utiliser les interfaces web de cobbler et puppetDémonstration Explorer les wikis :Pour finir https ://fedorahosted.org/cobbler/ http ://reductivelabs.com/trac/puppet Func http ://et.redhat.com Merci A Made with LTEX 23/23 Pour une administration sereine et détendue ± Back

×