GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Installez Puppet Master et Agent sur Ubuntu 20.04

Puppet est un moteur d'administration automatisé gratuit et open source pour les systèmes d'exploitation Linux, Unix et Windows. Il est utilisé pour déployer, configurer et gérer des serveurs et effectuer des tâches administratives telles que l'ajout d'utilisateurs, l'installation de packages, etc. Il aide les administrateurs système à libérer du temps et de l'espace mental en automatisant les tâches sur des milliers de machines physiques et virtuelles. Il utilise un modèle client-serveur. Où le maître Puppet contrôle les informations de configuration des agents Puppet tandis que les agents Puppet communiquent avec le maître Puppet et en retirent les profils de configuration.

Dans ce tutoriel, nous expliquerons comment installer un serveur et un agent Puppet sur un serveur Ubuntu 20.04.

Prérequis

  • Deux serveurs exécutant Ubuntu 20.04.
  • Un mot de passe root est configuré sur les deux serveurs.

Mise en route

Tout d'abord, vous devrez mettre à jour tous les packages sur les systèmes Puppet master et Puppet client. Vous pouvez les mettre à jour en exécutant la commande suivante :

apt-get update -y

Une fois que tous les packages sont à jour, vous pouvez passer à l'étape suivante.

Configurer la résolution du nom d'hôte

Ensuite, vous devrez configurer le nom d'hôte sur les deux nœuds. Ainsi, chaque nœud peut communiquer entre eux par nom d'hôte. Vous pouvez le faire en éditant le fichier /etc/hosts sur les deux nœuds :

nano /etc/hosts

Ajoutez les lignes suivantes sur les deux nœuds :

puppet-master-ip puppetmaster puppet
puppet-client-ip puppetclient

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, vous pouvez passer à l'étape suivante.

Installer le serveur Puppet

Tout d'abord, vous devrez installer le serveur Puppet sur le nœud maître. Par défaut, le package Puppet n'est pas disponible dans le référentiel par défaut d'Ubuntu 20.04. Vous devrez donc installer le référentiel Puppet sur votre serveur.

Tout d'abord, téléchargez la dernière version de Puppet avec la commande suivante :

wget https://apt.puppetlabs.com/puppet6-release-focal.deb

Une fois le package téléchargé, installez-le en exécutant la commande suivante :

dpkg -i puppet6-release-focal.deb

Une fois l'installation terminée, mettez à jour le référentiel et installez le serveur Puppet en exécutant la commande suivante :

apt-get update -y
apt-get install puppetserver -y

Après avoir installé le serveur Puppet, vous devrez modifier la taille d'allocation de mémoire du processus Java Puppet. Vous pouvez le faire en éditant le fichier /etc/default/puppetserver :

nano /etc/default/puppetserver

Modifiez la taille de la mémoire à 1 g comme indiqué ci-dessous :

JAVA_ARGS="-Xms1g -Xmx1g -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger"

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, démarrez le service Puppet et activez-le au redémarrage du système avec la commande suivante :

systemctl start puppetserver
systemctl enable puppetserver

Ensuite, vous pouvez vérifier l'état du service Puppet avec la commande suivante :

systemctl status puppetserver

Vous devriez voir la commande suivante :

? puppetserver.service - puppetserver Service
     Loaded: loaded (/lib/systemd/system/puppetserver.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-09-05 09:33:55 UTC; 3s ago
    Process: 3673 ExecStart=/opt/puppetlabs/server/apps/puppetserver/bin/puppetserver start (code=exited, status=0/SUCCESS)
   Main PID: 3715 (java)
      Tasks: 42 (limit: 4915)
     Memory: 962.3M
     CGroup: /system.slice/puppetserver.service
             ??3715 /usr/bin/java -Xms2g -Xmx2g -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger -XX:OnOutOfMemoryError="kill>

Sep 05 09:33:08 puppetmaster systemd[1]: Starting puppetserver Service...
Sep 05 09:33:55 puppetmaster systemd[1]: Started puppetserver Service.

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer et configurer l'agent Puppet

À ce stade, le serveur Puppet est installé et configuré. Maintenant, vous devrez installer l'agent Puppet sur le nœud client.

Tout d'abord, téléchargez et installez le référentiel Puppet avec la commande suivante :

wget https://apt.puppetlabs.com/puppet6-release-focal.deb
dpkg -i puppet6-release-focal.deb

Ensuite, mettez à jour le référentiel et installez l'agent Puppet en exécutant la commande suivante :

apt-get update -y
apt-get install puppet-agent -y

Après avoir installé l'agent Puppet, vous devrez modifier le fichier de configuration Puppet et définir les informations du maître Puppet :

nano /etc/puppetlabs/puppet/puppet.conf

Ajoutez les lignes suivantes :

[main]
certname = puppetclient
server = puppetmaster

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, démarrez le service de l'agent Puppet et activez-le pour qu'il démarre au démarrage avec la commande suivante :

systemctl start puppet
systemctl enable puppet

Ensuite, vérifiez l'état de la marionnette avec la commande suivante :

systemctl status puppet

Vous devriez obtenir le résultat suivant :

? puppet.service - Puppet agent
     Loaded: loaded (/lib/systemd/system/puppet.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-09-05 09:43:15 UTC; 22s ago
   Main PID: 1435 (puppet)
      Tasks: 2 (limit: 2353)
     Memory: 52.8M
     CGroup: /system.slice/puppet.service
             ??1435 /opt/puppetlabs/puppet/bin/ruby /opt/puppetlabs/puppet/bin/puppet agent --no-daemonize

Sep 05 09:43:15 puppetagent systemd[1]: Started Puppet agent.

À ce stade, l'agent Puppet est installé et configuré. Vous pouvez maintenant passer à l'étape suivante.

Signer le certificat d'agent Puppet

Puppet utilise une architecture client-serveur, vous devrez donc approuver une demande de certificat pour chaque nœud d'agent avant de pouvoir le configurer.

Sur le nœud maître Puppet, exécutez la commande suivante pour répertorier tous les certificats :

/opt/puppetlabs/bin/puppetserver ca list

Vous devriez voir le résultat suivant :

Requested Certificates:
    puppetclient       (SHA256)  A4:9A:E9:87:8B:54:0A:4F:A0:78:65:1A:3C:99:B5:EC:31:9E:BB:4C:17:8A:50:16:E9:1E:3D:D6:27:74:89:85
    puppetmaster       (SHA256)  E9:25:4C:51:4E:47:D7:44:11:1F:C5:A9:4E:96:D9:E8:3A:EB:A0:01:48:06:B5:EF:3F:C4:09:03:90:3E:D8:2D

Maintenant, signez tous les certificats avec la commande suivante :

/opt/puppetlabs/bin/puppetserver ca sign --all

Vous devriez obtenir le résultat suivant :

Successfully signed certificate request for puppetclient
Successfully signed certificate request for puppetmaster

Désormais, le maître des marionnettes peut communiquer et contrôler le nœud de l'agent.

Sur le nœud de l'agent Puppet, testez la communication entre le maître Puppet et l'agent avec la commande suivante :

/opt/puppetlabs/bin/puppet agent --test

Si tout va bien, vous devriez obtenir le résultat suivant :

Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Caching catalog for puppetclient
Info: Applying configuration version '1599300398'
Notice: Applied catalog in 0.02 seconds

Conclusion

Toutes nos félicitations! vous avez installé et configuré avec succès le maître et l'agent Puppet sur le serveur Ubuntu 20.04. Vous pouvez désormais facilement ajouter plusieurs agents et les gérer facilement avec Puppet.


Ubuntu
  1. Comment installer Puppet sur macOS

  2. Installer Node.js dans Ubuntu et Debian

  3. Installer et exécuter Vagrant sur Ubuntu 20.04

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

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

Comment installer uTorrent dans Ubuntu 18.04 et Ubuntu 19.04

Comment installer TeamViewer 12 sur Ubuntu 16.04 et Ubuntu 16.10

2 façons d'installer VeraCrypt sur Ubuntu 16.04 et Ubuntu 16.10

Comment installer ScreenCloud sur Ubuntu 16.04 et Ubuntu 17.04

Comment installer et utiliser R sur Ubuntu

Comment installer Puppet sur Ubuntu 20.04