Introduzione
Puppet è un popolare strumento di gestione dell'infrastruttura. Con l'aiuto del server Puppet, puoi gestire facilmente un gran numero di server da un server principale. Il nodo del server Puppet è responsabile della gestione di più nodi client. È necessario che tutti i nodi client del server Puppet Agent siano installati e in esecuzione.
Il nostro tutorial precedente descrive come configurare il nodo master Puppet su un sistema Ubuntu 20.04 insieme al nodo client. Se è necessario aggiungere più server client alla rete Puppet esistente, è sufficiente installare il server Agent sul server.
Questo tutorial descrive la configurazione passo passo per installare Puppet Agent sul sistema Ubuntu 20.04. Ti aiuta anche a connettere un nodo client con il nodo master.
Prerequisiti
- Supponendo che tu abbia già il nodo master Puppet.
- Un sistema Ubuntu 20.04 in esecuzione da configurare come client dell'agente Puppet.
- Accesso shell a tutti i sistemi con account privilegiato sudo.
- Questo sistema deve essere connesso al nodo master su una rete pubblica o privata.
Se desideri installare Puppet Agent su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Configurare gli host
Puppet e i nodi client utilizzano l'hostname per comunicare tra loro. Quindi è bene iniziare con l'assegnazione di un nome host univoco per ogni nodo.
Puppet Master: accedi al nodo master e modifica il file /etc/hosts
:
sudo nano /etc/hosts
Aggiungi le nuove voci del server al file hosts:
10.132.14.239 puppetmaster puppet
10.132.14.240 puppetclient1
10.132.14.241 puppetclient2
Supponendo che Puppetmaster e Puppetclient1 siano già stati aggiunti nel file. Quindi aggiungi una nuova voce accanto a quelle righe.
Nodo client: accedere al nuovo server dell'agente Puppet e modificare il file /etc/hosts
:
sudo nano /etc/hosts
Aggiungi il tuo nuovo server ai file host:
10.132.14.239 puppetmaster puppet
10.132.14.241 puppetclient2
Salva il tuo file e chiudilo.
Installare Puppet Agent su Ubuntu
I pacchetti Debian Puppet sono disponibili nel repository ufficiale APT. È possibile configurare il file di configurazione del repository installando un pacchetto Debian sul proprio sistema.
Ora scarica e installa l'ultimo pacchetto Debian di Puppet per configurare PPA sul tuo nodo client:
wget https://apt.puppetlabs.com/puppet7-release-focal.deb
sudo dpkg -i puppet7-release-focal.deb
Dopo aver configurato il PPA, installare il pacchetto dell'agente Puppet su tutti i server client.
sudo apt update
sudo apt install puppet-agent -y
Al termine dell'installazione dei pacchetti modifica il file di configurazione di Puppet:
sudo nano /etc/puppetlabs/puppet/puppet.conf
Aggiungi le seguenti voci alla fine del file di configurazione di Puppet per definire i dettagli del nodo principale di Puppet:
[main]
certname = puppetclient2
server = puppetmaster
Salva il tuo file e chiudilo.
Successivamente, avvia il servizio dell'agente Puppet su tutti i nodi client e impostalo per l'avvio automatico all'avvio del sistema:
sudo systemctl start puppet
sudo systemctl enable puppet
Al termine, verifica che il servizio dell'agente Puppet funzioni correttamente:
sudo systemctl status puppet
Dovresti vedere uno stato di esecuzione su tutti i sistemi dell'agente
Firmare i certificati di Puppet Agent
Hai finito con la configurazione. Ora, accedi al nodo master Puppet ed esegui il seguente comando per elencare tutti i certificati disponibili:
sudo /opt/puppetlabs/bin/puppetserver ca list --all
Quindi, firmare tutti i certificati client utilizzando:
sudo /opt/puppetlabs/bin/puppetserver ca sign --all
Infine, verifica la comunicazione tra il master Puppet e i nodi client utilizzando il seguente comando.
sudo /opt/puppetlabs/bin/puppet agent --test
Conclusione
Questo è tutto. Hai installato correttamente l'agente Puppet sul sistema Ubuntu 20.04 LTS Focal Fossa. Configurato anche un nuovo nodo con il nodo master Puppet.