GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Comment installer le maître et le client Puppet dans Ubuntu 14.04

Comment installer le maître et le client Puppet dans Ubuntu 14.04

Ce document décrit comment installer et configurer Puppet sur le serveur Ubuntu 14.04, je vais également connecter un client puppet avec le bureau Ubuntu 14.04. Puppet est un système de gestion de configuration qui vous permet de définir l'état de votre infrastructure informatique, puis applique automatiquement l'état correct. Que vous gériez seulement quelques serveurs ou des milliers de machines physiques et virtuelles, Puppet automatise les tâches que les administrateurs système effectuent souvent manuellement, libérant du temps et de l'espace mental afin que les administrateurs système puissent travailler sur les projets qui offrent une plus grande valeur commerciale.
Que vous déployiez des applications fournies par un fournisseur ou que vous travailliez avec une équipe de développeurs de logiciels internes, Puppet automatise chaque étape du processus de livraison de logiciels :du provisionnement des machines physiques et virtuelles à l'orchestration et au reporting ; du développement de code à un stade précoce jusqu'aux tests, à la sortie de production et aux mises à jour. La marionnette assure la cohérence, la fiabilité et la stabilité. Cela facilite également une collaboration plus étroite entre les administrateurs système et les développeurs, permettant une livraison plus efficace d'un code plus propre et mieux conçu.


1 Remarque préliminaire

Ce didacticiel est basé sur le serveur Ubuntu 14.04 et le bureau Ubuntu 14.04. Vous devez donc configurer une installation de base du serveur et du bureau Ubuntu 14.04 avant de poursuivre ce didacticiel. Le système doit avoir une adresse IP statique. J'utilise 192.168.0.100 comme adresse IP du serveur Ubuntu et 192.168.0.101 comme adresse IP du bureau Ubuntu dans ce tutoriel et server1.example.com comme nom d'hôte du serveur Ubuntu et desktop1.example.com comme nom d'hôte du bureau Ubuntu.

Dans le serveur Ubuntu et Ubuntu Desktop, il doit y avoir cette entrée dans le fichier /etc/hosts. Ces entrées seront communes à la fois au serveur et au client.

nano /etc/hosts

[...]
192.168.0.100 server1.example.com server1 192.268.0.101 desktop1.example.com desktop1

En plus de cela, le serveur et le bureau doivent avoir une synchronisation de l'heure, il sera traité sur les machines du serveur et du bureau comme suit :

ntpdate pool.ntp.org; apt-get update &&sudo apt-get -y install ntp; redémarrage du service ntp

2 Installation du maître Puppet sur Ubuntu Server 14.04

Pour installer Puppet Master, nous utiliserons le dernier référentiel et installerons Puppet comme suit :

cd /tmp
wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
dpkg -i puppetlabs-release-trusty.deb
apt-get update

apt-get install puppetmaster

Vérifiez la version de la marionnette comme :

marionnette -V

[email protected]:/tmp# puppet -V
3.7.1
[email protected]:/tmp#

Nous avons la version de marionnette comme 3.7.1. Nous devons maintenant verrouiller la mise à jour de la version de la marionnette car cela entravera les configurations lors de la mise à jour de la marionnette. Cela se fera en éditant le fichier comme suit :

nano /etc/apt/preferences.d/00-puppet.pref

Ajoutez les entrées dans le fichier nouvellement créé comme :

# /etc/apt/preferences.d/00-puppet.pref
Package: puppet puppet-common puppetmaster-passenger
Pin: version 3.7*
Pin-Priority: 501

Il ne mettra pas à jour la marionnette lors de l'exécution des mises à jour dans le système.

Ensuite, nous allons modifier le fichier de configuration comme suit :

nano /etc/puppet/puppet.conf

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
#templatedir=$confdir/templates

[master]
# These are needed when the puppetmaster is run by passenger
# and can safely be removed if webrick is used.
ssl_client_header = SSL_CLIENT_S_DN
ssl_client_verify_header = SSL_CLIENT_VERIFY

Commentez simplement la ligne templatedir=$confdir/templates et enregistrez le fichier.

Nous allons maintenant arrêter puis démarrer les services :

service puppetmaster stop
service puppetmaster start

Maintenant, le serveur maître de marionnettes est prêt.

3 Installation du client Puppet sur Ubuntu Desktop 14.04

Notre objectif est maintenant d'installer et de configurer Ubuntu Desktop en tant que client Puppet pour le serveur Ubuntu maître Puppet. Votre client doit être configuré pour /etc/hosts  en plus de cela, votre bureau Ubuntu doit être synchronisé avec le temps comme mentionné dans le chapitre 1 ci-dessus. Ensuite, nous allons installer Puppet comme suit :

cd /tmp
wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
dpkg -i puppetlabs-release-trusty.deb
apt-get update

apt-get installer la marionnette

Vérifiez la version de la marionnette comme :

marionnette -V

[email protected]:/tmp# puppet -V
3.7.1
[email protected]:/tmp#

Nous avons la version de marionnette comme 3.7.1. Nous devons maintenant verrouiller la mise à jour de la version de la marionnette car cela entravera les configurations lors de la mise à jour de la marionnette. Cela se fera en éditant le fichier comme suit :

nano /etc/apt/preferences.d/00-puppet.pref

Ajoutez les entrées dans le fichier nouvellement créé comme :

# /etc/apt/preferences.d/00-puppet.pref
Package: puppet puppet-common puppetmaster-passenger
Pin: version 3.7*
Pin-Priority: 501

Il ne mettra pas à jour la marionnette lors de l'exécution des mises à jour dans le système.

Ensuite, nous allons modifier le fichier de configuration comme suit :

nano /etc/puppet/puppet.conf

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
#templatedir=$confdir/templates

#[master]
## These are needed when the puppetmaster is run by passenger
## and can safely be removed if webrick is used.
#ssl_client_header = SSL_CLIENT_S_DN
#ssl_client_verify_header = SSL_CLIENT_VERIFY

[agent]
server = server1.example.com

Commentez simplement les lignes comme mentionné ci-dessus, ajoutez les entrées de l'agent et enregistrez le fichier.

Ensuite, nous devons éditer le fichier vi /etc/default/puppet et apporter des modifications de non à oui comme indiqué ci-dessous :

nano /etc/default/marionnette

[...]
START=yes
[...]

Nous sommes maintenant prêts à démarrer le service de marionnettes, cela se fera comme suit :

démarrage de la marionnette de service

Maintenant, notre machine cliente est prête à communiquer avec le serveur Puppet Master.

4 échange de certificats entre le maître Puppet et le client Puppet

Une fois la configuration réussie, le client Puppet Ubuntu Desktop recherchera le serveur maître Puppet et demandera une demande de certificat avant d'accepter les instructions administratives du serveur maître marionnette.

Pour afficher cette demande de certificat, exécutez la commande sur le serveur Puppet Master Ubuntu.

liste de certificats de marionnettes

[email protected] :~# liste de certificats de marionnettes
  "desktop1.example.com" (SHA256) BD:F7:7C:76:48:09:C5:FE:0C:A8:CD:81:92 :1D:A4:1F:15:1C:1A:6E:DE:C1:3C:B4:CA:FC:C6:2F:B4:9A:91:74
[email protected]:~#

Cela signifie qu'il existe une machine nommée dekstop1.example.com qui a vu le jour et demande une demande de certificat. Maintenant, le serveur maître de marionnettes doit signer le certificat demandé au client de marionnettes. Cela peut être fait comme suit :

signe de certificat de marionnette desktop1.example.com

La sortie ressemblera à ceci :

[email protected]:~# puppet cert sign desktop1.example.com
Avis :demande de certificat signée pour desktop1.example.com
Avis :suppression du fichier Puppet::SSL::CertificateRequest desktop1.example. com à '/var/lib/puppet/ssl/ca/requests/desktop1.example.com.pem'
[email protected] :~#

Cela signifie que la demande de la machine de bureau est acceptée sur la machine maître Puppet. Nous pouvons également vérifier cela avec la commande :

liste de certificats de marionnettes -all

[email protected] :~# liste de certificats de marionnettes -all
+ "desktop1.example.com"        (SHA256) 7A:B7:CE:C4:A0:05:99:E7:E2:53:AD :D2:7F:6E:B5:38:CA:87:E0:8D:C7:0E:71:89:82:E1:17:FA:9D:B1:01:6D
+ "serveur1.serveur1 .example.com" (SHA256) FF:E2:49:B9:2F:B4:D1:79:21:E9:1A:83:22:FA:DB:E8:5D:9B:9A:1C:E1 :4D:83:B9:16:9D:FD:8B:72:FD:62:5F (noms alternatifs :"DNS:puppet", "DNS:puppet.server1.example.com", "DNS:server1.server1. exemple.com")
[email protected] :~#

Le signe + ci-dessus dans la sortie montre une signature de certificat réussie sur le serveur Ubuntu Puppet master.

Pour afficher l'empreinte digitale du certificat client sur le bureau Ubuntu de Puppet Client, exécutez :

agent marionnette --fingerprint

[email protected] :~# agent marionnette --fingerprint
(SHA256) 7A:B7:CE:C4:A0:05:99:E7:E2:53:AD:D2:7F:6E:B5 :38:CA:87:E0:8D:C7:0E:71:89:82:E1:17:FA:9D:B1:01:6D
[email protected] :~#

De même, nous pouvons ajouter n'importe quel nombre de clients avec Puppet master Ubuntu Server et signer les demandes de certificat des clients. Si, pour toute exigence administrative, vous souhaitez révoquer les certificats du serveur Ubuntu maître de Puppet, nous pouvons exécuter :

certificat de marionnette propre desktop1.example.com

[email protected]:~# puppet cert clean desktop1.example.com
Avis :Certificat révoqué avec le numéro de série 3
Avis :Suppression du fichier Puppet::SSL::Certificate desktop1.example.com à '/ var/lib/puppet/ssl/ca/signed/desktop1.example.com.pem'
Avis :Suppression du fichier Puppet::SSL::Certificate desktop1.example.com à '/var/lib/puppet/ssl /certs/desktop1.example.com.pem'
[email protected]:~#

Pour être sûr que les certificats sont complètement supprimés sur le serveur Puppet Master Ubuntu, je les ai explicitement nettoyés à nouveau

marionnette cert -c

Remarque Ci-dessus, je viens de mentionner comment nous pouvons révoquer le certificat et déconnecter le bureau du serveur maître Puppet.

Comme mentionné ci-dessus, nous pouvons connecter un nombre N de postes de travail et effectuer les administrations de manière centralisée via le serveur maître Puppet. Toutes nos félicitations! Nous avons maintenant une instance Puppet entièrement fonctionnelle sur notre Ubuntu 14.04 :)

  • Marionnette :http://puppetlabs.com/
  • Ubuntu :http://www.ubuntu.com/

Panels
  1. Installez Puppet Master et Agent sur Ubuntu 20.04

  2. Comment installer le client et le serveur NFS sur Ubuntu 20.04

  3. Comment installer et configurer Puppet 4 sur CentOS et Ubuntu ? [Maître et agent]

  4. Comment installer et configurer CyberPanel sur Ubuntu 18.04

  5. Comment installer Node.js et npm sur Ubuntu 20.04

Comment installer le serveur et le client NTP sur Ubuntu

Comment installer le serveur et le client UrBackup sur Ubuntu 20.04

Comment installer Juju sur Ubuntu 20.04

Comment installer le serveur et le client Telnet sur Ubuntu

Comment installer le client TeamSpeak sur Ubuntu

Comment installer le serveur NTP et le ou les clients sur Ubuntu 20.04 LTS