Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux_puppet [2022/11/18 22:12] – [Enregistrement du client] nekanlinux_puppet [2023/05/30 15:58] (Version actuelle) – [Qu'est-ce qu'un orchestrateur ?] nekan
Ligne 5: Ligne 5:
 ===== Qu'est-ce qu'un orchestrateur ? ===== ===== Qu'est-ce qu'un orchestrateur ? =====
  
-Un orchestrateur est un système permettant d'automatiser une installation. ''puppet'' en est un. Une fois configuré, il pourra envoyer les différentes configurations à ces clients à distance, procéder àdes installations de paquets, etc. De plus, les fichiers de configurations gérés par ''puppet'' sont protégés d'une modification non voulue. Ainsi, si un programme malveillant ou une erreur d'un utilisateur modifie un fichier de configuration alors le système remettra le fichier valide en place et redémarrera les services concernés au besoin.+Un orchestrateur est un système permettant d'automatiser une installation. ''puppet'' en est un. Une fois configuré, il pourra envoyer les différentes configurations à ces clients à distance, procéder à des installations de paquets, etc. De plus, les fichiers de configurations gérés par ''puppet'' sont protégés d'une modification non voulue. Ainsi, si un programme malveillant ou une erreur d'un utilisateur modifie un fichier de configuration alors le système remettra le fichier valide en place et redémarrera les services concernés au besoin.
  
 <callout type="danger" title="Droits" icon="true">Les différentes procédures suivantes nécessite des droits ''root''. N'oubliez pas les sauvegardes avant toute action.</callout> <callout type="danger" title="Droits" icon="true">Les différentes procédures suivantes nécessite des droits ''root''. N'oubliez pas les sauvegardes avant toute action.</callout>
Ligne 70: Ligne 70:
  
   * Là aussi, pour plus de simplicité, on met en place des liens symboliques pour le client (présent sur le serveur) et le serveur :   * Là aussi, pour plus de simplicité, on met en place des liens symboliques pour le client (présent sur le serveur) et le serveur :
-<sxh bash>ln -sf /opt/puppetlabs/bin/puppet /bin/puppet +<sxh bash>ln -sf /opt/puppetlabs/bin/puppet /bin/puppet</sxh>
-ln -sf /opt/puppetlabs/bin/puppetserver /bin/puppetserver</sxh>+
  
 ==== Enregistrement du client ==== ==== Enregistrement du client ====
Ligne 79: Ligne 78:
  
   * La console affiche alors que le client a fait une requête pour la création d'un certificat auprès du serveur ''puppet'' :   * La console affiche alors que le client a fait une requête pour la création d'un certificat auprès du serveur ''puppet'' :
-<sxh>Info: Creating a new RSA SSL key for test.shyrkasys.local +<WRAP announcement purple> 
-Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml +<poem> 
-Info: Creating a new SSL certificate request for test.shyrkasys.local +<text type="success" size="10">Info: Creating a new RSA SSL key for test.shyrkasys.local</text> 
-Info: Certificate Request fingerprint (SHA256): 1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96 +<text type="success" size="10">Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml</text> 
-Info: Certificate for cassandra.shyrkasys.lan has not been signed yet+<text type="success" size="10">Info: Creating a new SSL certificate request for test.shyrkasys.local</text> 
 +<text type="success" size="10">Info: Certificate Request fingerprint (SHA256): 1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96</text> 
 +<text type="success" size="10">Info: Certificate for cassandra.shyrkasys.lan has not been signed yet</text>
 Couldn't fetch certificate from CA server; you might still need to sign this agent's certificate (test.shyrkasys.local). Couldn't fetch certificate from CA server; you might still need to sign this agent's certificate (test.shyrkasys.local).
-Exiting now because the waitforcert setting is set to 0.</sxh>+Exiting now because the waitforcert setting is set to 0. 
 +</poem> 
 +</WRAP>
  
-  * On retourne alors sur le serveur. Là, on tapes la commande :+  * On retourne alors sur le serveur. Là, on tape la commande :
 <sxh bash>puppetserver ca list</sxh> <sxh bash>puppetserver ca list</sxh>
  
   * On retrouve la demande de certificat :   * On retrouve la demande de certificat :
-<sxh>Requested Certificates: +<sxh bash>Requested Certificates: 
-    test.shyrkasys.local       (SHA256)  1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96</sxh> +    test.shyrkasys.local       (SHA256)  1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96 
-    +</sxh> 
   * On signe donc le certificat :   * On signe donc le certificat :
 <sxh bash>puppetserver ca sign --certname test.shyrkasys.local</sxh> <sxh bash>puppetserver ca sign --certname test.shyrkasys.local</sxh>
Ligne 101: Ligne 105:
  
   * La console doit alors nous indiquer qu'elle récupère le nouveau certificat et qu'elle met le catalogue en cache :   * La console doit alors nous indiquer qu'elle récupère le nouveau certificat et qu'elle met le catalogue en cache :
-<sxh>Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml +<WRAP announcement purple> 
-Info: Creating a new SSL certificate request for test.shyrkasys.local +<poem> 
-Info: Certificate Request fingerprint (SHA256): 1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96 +<text type="success" size="10">Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml</text> 
-Info: Downloaded certificate for test.shyrkasys.local from https://puppet.shyrkasys.local:8140/puppet-ca/v1 +<text type="success" size="10">Info: Creating a new SSL certificate request for test.shyrkasys.local</text> 
-Info: Using environment 'production' +<text type="success" size="10">Info: Certificate Request fingerprint (SHA256): 1B:84:A2:70:05:47:26:9F:D0:44:75:F4:97:C6:1C:D2:C0:7A:EC:BE:6A:26:97:3F:0F:1A:FF:08:49:D4:B4:96</text> 
-Info: Retrieving pluginfacts +<text type="success" size="10">Info: Downloaded certificate for test.shyrkasys.local from https://puppet.shyrkasys.local:8140/puppet-ca/v1</text> 
-Info: Retrieving plugin +<text type="success" size="10">Info: Using environment 'production'</text> 
-Info: Caching catalog for test.shyrkasys.local +<text type="success" size="10">Info: Retrieving pluginfacts</text> 
-Info: Applying configuration version '1668800975' +<text type="success" size="10">Info: Retrieving plugin</text> 
-Info: Creating state file /opt/puppetlabs/puppet/cache/state/state.yaml +<text type="success" size="10">Info: Caching catalog for test.shyrkasys.local</text> 
-Notice: Applied catalog in 0.10 seconds</sxh>+<text type="success" size="10">Info: Applying configuration version '1668800975'</text> 
 +<text type="success" size="10">Info: Creating state file /opt/puppetlabs/puppet/cache/state/state.yaml</text> 
 +Notice: Applied catalog in 0.10 seconds 
 +</poem> 
 +</WRAP>
  
 ===== Test de déploiement ===== ===== Test de déploiement =====
  
   * Sur le serveur, on va créer une classe de test ''/etc/puppetlabs/code/environments/production/manifests/class/test.pp'' dans laquelle on va ajouter le code suivant :   * Sur le serveur, on va créer une classe de test ''/etc/puppetlabs/code/environments/production/manifests/class/test.pp'' dans laquelle on va ajouter le code suivant :
-<sxh puppet>class test { +<file>class test { 
-        notify { "Ceci est un test de déploiement":+     notify { "Ceci est un test de déploiement":
-}</sxh>+}</file>
  
   * On modifie aussi le fichier ''/etc/puppetlabs/code/environments/production/manifests/node.pp'' avec la ligne suivante :   * On modifie aussi le fichier ''/etc/puppetlabs/code/environments/production/manifests/node.pp'' avec la ligne suivante :
-<sxh puppet>node "test.shyrkasys.local" { include test }</sxh>+<file>node "test.shyrkasys.local" { include test }</file>
  
   * Sur le client cette fois, on relance la commande de l'agent :   * Sur le client cette fois, on relance la commande de l'agent :
Ligne 127: Ligne 135:
  
   * La console doit alors faire apparaître la ligne de notification paramétrée :   * La console doit alors faire apparaître la ligne de notification paramétrée :
-<sxh>Info: Using environment 'production' +<WRAP announcement purple> 
-Info: Retrieving pluginfacts +<poem> 
-Info: Retrieving plugin +<text type="success" size="10">Info: Using environment 'production'</text> 
-Info: Caching catalog for test.shyrkasys.local +<text type="success" size="10">Info: Retrieving pluginfacts</text> 
-Info: Applying configuration version '1668802924'+<text type="success" size="10">Info: Retrieving plugin</text> 
 +<text type="success" size="10">Info: Caching catalog for test.shyrkasys.local</text> 
 +<text type="success" size="10">Info: Applying configuration version '1668802924'</text>
 Notice: Ceci est un test de déploiement Notice: Ceci est un test de déploiement
 Notice: /Stage[main]/Test/Notify[Ceci est un test de déploiement]/message: defined 'message' as 'Ceci est un test de déploiement' Notice: /Stage[main]/Test/Notify[Ceci est un test de déploiement]/message: defined 'message' as 'Ceci est un test de déploiement'
-Notice: Applied catalog in 0.58 seconds</sxh>+Notice: Applied catalog in 0.58 seconds 
 +</poem> 
 +</WRAP>
  
 <callout type="success" title="Félicitations" icon="true">Et voilà, votre orchestrateur est prêt à envoyer vos configurations et à automatiser vos installations sur tous ses clients. Il ne reste plus qu'à créer les classes nécessaires et à les appliquer sur le site ou les clients qui en ont besoin.</callout> <callout type="success" title="Félicitations" icon="true">Et voilà, votre orchestrateur est prêt à envoyer vos configurations et à automatiser vos installations sur tous ses clients. Il ne reste plus qu'à créer les classes nécessaires et à les appliquer sur le site ou les clients qui en ont besoin.</callout>
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
  • linux_puppet.1668805928.txt.gz
  • Dernière modification : 2022/11/18 22:12
  • de nekan