Fermer

janvier 31, 2023

Contremaître et marionnette : le duo OG pour l’automatisation informatique

Contremaître et marionnette : le duo OG pour l’automatisation informatique


Foreman est un puissant outil open source qui aide à gérer l’infrastructure, y compris l’approvisionnement, la configuration et la surveillance des serveurs. Puppet est un outil de gestion de configuration bien connu qui peut être utilisé conjointement avec Foreman pour automatiser la configuration des serveurs. Ce billet de blog couvrira la dernière installation et intégration de Foreman avec Puppet sur Ubuntu 20.04.

Conditions préalables

  • Un serveur exécutant Ubuntu 20.04 ou une version ultérieure
  • Un serveur exécutant Puppet 6 ou une version ultérieure
  • Un nom de domaine ou une adresse IP statique pour le serveur Foreman
  • Un serveur DNS configuré avec un enregistrement DNS A qui résout le nom d’hôte du serveur Foreman en son adresse IP, ou une entrée de fichier d’hôtes sur les systèmes clients qui seront gérés par Foreman.

Veuillez noter que vous devrez ouvrir les ports TCP suivants pour accéder à votre serveur :

  • Port TCP 80 — pour le service de déploiement de la configuration.
  • Port TCP 443 — pour accéder au panneau de contrôle Foreman.
  • Port TCP 8140 — pour que Puppet Agent fonctionne.
  • Port TCP 5648 — pour le fonctionnement du client et du Smart Proxy.
  • Port TCP 9090 — pour la communication avec Smart Proxy.

Installation du contremaître

Étape 1: Ajoutez le référentiel Foreman à votre système en exécutant la commande suivante :

echo "deb http://deb.theforeman.org/ focal 3.4" | sudo tee /etc/apt/sources.list.d/foreman.list
echo "deb http://deb.theforeman.org/ plugins 3.4" | sudo tee -a /etc/apt/sources.list.d/foreman.list
OR

Étape 2: importez la clé GPG du référentiel en exécutant la commande suivante :

wget -q https://deb.theforeman.org/pubkey.gpg -O- | sudo apt-key add -

OU ALORS

sudo wget https://deb.theforeman.org/foreman.asc -O /etc/apt/trusted.gpg.d/foreman.asc

Étape 3: Mettez à jour la liste des packages et installez le package Foreman en exécutant la commande suivante :

sudo apt update && sudo apt install foreman-installer

Étape 4: Exécutez le programme d’installation avec la commande suivante :

sudo foreman-installer

Étape 5: Le programme d’installation vous guidera tout au long du processus d’installation, qui comprend la configuration de la base de données, du serveur Web et d’autres composants. Assurez-vous de configurer les paramètres corrects pour votre environnement, tels que le nom d’hôte, les paramètres de base de données et les paramètres SSL.

À l’étape suivante, vous recevrez le nom d’utilisateur et le mot de passe d’un compte avec les droits d’administrateur Foreman.

Une fois terminé, le programme d’installation imprimera quelques détails sur l’endroit où trouver Foreman et le Smart Proxy. La sortie devrait ressembler à ceci :

Installation de marionnette

Étape 1: Ajoutez le dépôt Puppet à votre système en exécutant la commande suivante :

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

Étape 2: Mettez à jour la liste des packages et installez le package Puppet en exécutant la commande suivante :

sudo apt update && sudo apt install puppet-agent

Intégration de Foreman avec Puppet

Étape 1: Installez les modules Foreman et Puppet en exécutant la commande suivante :

sudo apt install -y ruby-foreman-puppet

Cette commande installera les modules nécessaires permettant à Foreman de communiquer avec Puppet.

Étape 2: configurez Puppet pour qu’il utilise Foreman comme autorité de certification en ajoutant les lignes suivantes au fichier puppet.conf :

cat >> /etc/puppetlabs/puppet/puppet.conf << EOL
[main]
server = foreman.example.com
ca_server = foreman.example.com
environment = production
runinterval = 1800
configtimeout = 600
certname = foreman.example.com
EOL

Cette étape configurera l’agent marionnette pour utiliser le serveur Foreman comme autorité de certification et définira l’environnement, l’intervalle d’exécution et le délai de configuration en conséquence.

Étape 3: Configurez Foreman pour utiliser l’autorité de certification Puppet en exécutant la commande suivante :

sudo foreman-rake puppet:ca:create
sudo foreman-rake puppet:ca:import

Cette étape créera et importera l’autorité de certification Puppet dans Foreman, lui permettant de gérer le processus de signature de certificat.

Étape 4: importez les classes Puppet dans Foreman en exécutant la commande suivante :

sudo puppet class list --all | sudo foreman-rake puppet:import:puppet_classes

Cette commande importera toutes les classes Puppet disponibles dans Foreman, vous permettant de les gérer via l’interface Web Foreman.

Étape 5: enregistrez vos nœuds d’agent Puppet auprès de Foreman en exécutant la commande suivante sur chaque nœud d’agent :

sudo puppet agent --test --waitforcert 60

Cette commande enregistrera le nœud de l’agent auprès du serveur Foreman et demandera un certificat à l’autorité de certification Foreman.

Les binaires Puppet sont situés dans le répertoire « /opt/puppetlabs/bin/ », qui n’est pas dans la variable d’environnement « PATH » par défaut et dans la variable « secure_path » qui est utilisée pour les opérations « sudo ».

Notez que le chemin vers les fichiers exécutables n’est pas pertinent pour les services Puppet puisque le démarrage des services ne dépend pas du « PATH » et du « secure_path ».

En ajoutant le chemin des fichiers exécutables aux variables, vous pouvez utiliser :

sudo puppet agent -t

Plutôt:

sudo /opt/puppetlabs/bin/puppet agent -t

Avec ces étapes, vous devez avoir intégré avec succès Foreman à Puppet sur Ubuntu 20.04. Vous pouvez désormais utiliser l’interface Web Foreman pour gérer vos agents Puppet et leur appliquer des configurations. De plus, vous pouvez également utiliser Foreman pour surveiller l’état de vos serveurs et résoudre les problèmes qui pourraient survenir.

TROUVÉ CELA UTILE ? PARTAGEZ-LE




Source link