Puppet - Configurazione
Dopo aver installato Puppet sul sistema, il passaggio successivo è configurarlo per eseguire determinate operazioni iniziali.
Apri porte firewall sui computer
Per fare in modo che il server Puppet gestisca centralmente il server del client, è necessario aprire una porta specificata su tutte le macchine, ad es 8140può essere utilizzato se non è in uso in nessuna delle macchine che stiamo cercando di configurare. Dobbiamo abilitare sia la comunicazione TCP che UDP su tutte le macchine.
File di configurazione
Il file di configurazione principale per Puppet è etc/puppet/puppet.conf. Tutti i file di configurazione vengono creati in una configurazione basata su pacchetti di Puppet. La maggior parte della configurazione necessaria per configurare Puppet è conservata in questi file e, una volta eseguita l'esecuzione di Puppet, raccoglie automaticamente tali configurazioni. Tuttavia, per alcune attività specifiche come la configurazione di un server Web o un'autorità di certificazione (CA) esterna, Puppet ha una configurazione separata per file e impostazioni.
I file di configurazione del server si trovano in conf.ddirectory nota anche come Puppet master. Questi file si trovano per impostazione predefinita in/etc/puppetlabs/puppetserver/conf.dsentiero. Questi file di configurazione sono in formato HOCON, che mantiene la struttura di base di JSON ma è più leggibile. All'avvio di Puppet, vengono prelevati tutti i file .cong dalla directory conf.d e li utilizza per apportare eventuali modifiche alla configurazione. Qualsiasi modifica in questi file avviene solo al riavvio del server.
File di elenco e file di impostazioni
- global.conf
- webserver.conf
- web-routes.conf
- puppetserver.conf
- auth.conf
- master.conf (deprecato)
- ca.conf (deprecato)
Ci sono diversi file di configurazione in Puppet che sono specifici per ogni componente in Puppet.
Puppet.conf
Il file Puppet.conf è il file di configurazione principale di Puppet. Puppet utilizza lo stesso file di configurazione per configurare tutti i comandi e servizi di Puppet richiesti. Tutte le impostazioni relative a Puppet, come la definizione di Puppet master, Puppet agent, Puppet apply e certificati, sono definite in questo file. Puppet può riferirli secondo il requisito.
Il file di configurazione assomiglia a un file ini standard in cui le impostazioni possono entrare nella sezione dell'applicazione specifica della sezione principale.
Sezione Main Config
[main]
certname = Test1.vipin.com
server = TestingSrv
environment = production
runinterval = 1h
File di configurazione di Puppet Master
[main]
certname = puppetmaster.vipin.com
server = MasterSrv
environment = production
runinterval = 1h
strict_variables = true
[master]
dns_alt_names = MasterSrv,brcleprod01.vipin.com,puppet,puppet.test.com
reports = puppetdb
storeconfigs_backend = puppetdb
storeconfigs = true
environment_timeout = unlimited
Panoramica dei dettagli
Nella configurazione di Puppet, il file che verrà utilizzato ha più sezioni di configurazione in cui ogni sezione ha diversi tipi di numero multiplo di impostazioni.
Sezione Config
Il file di configurazione di Puppet consiste principalmente nelle seguenti sezioni di configurazione.
Main- Questa è nota come la sezione globale che viene utilizzata da tutti i comandi e servizi in Puppet. Uno definisce i valori predefiniti nella sezione principale che possono essere sovrascritti da qualsiasi sezione presente nel file puppet.conf.
Master - Questa sezione è indicata dal servizio Puppet master e dal comando Puppet cert.
Agent - Questa sezione è riferita dal servizio agente Puppet.
User - Viene utilizzato principalmente dal comando Puppet apply e da molti dei comandi meno comuni.
[main]
certname = PuppetTestmaster1.example.com
Componenti chiave del file di configurazione
Di seguito sono riportati i componenti chiave del file Config.
Righe di commento
In Puppet, qualsiasi riga di commento inizia con (#) cartello. Questo può essere inteso con qualsiasi quantità di spazio. Possiamo anche avere un commento parziale all'interno della stessa riga.
# This is a comment.
Testing = true #this is also a comment in same line
Impostazioni Linee
La riga delle impostazioni deve essere composta da:
- Qualsiasi quantità di spazio iniziale (opzionale)
- Nome delle impostazioni
- Un segno uguale = a, che può essere circondato da un numero qualsiasi di spazio
- Un valore per l'impostazione
Impostazione delle variabili
Nella maggior parte dei casi, il valore delle impostazioni sarà una singola parola, ma in alcuni casi speciali, ci sono pochi valori speciali.
Sentieri
Nelle impostazioni del file di configurazione, prendi un elenco di directory. Durante la definizione di queste directory, si dovrebbe tenere presente che dovrebbero essere separate dal carattere separatore del percorso di sistema, che è (:) nelle piattaforme * nix e punto e virgola (;) su Windows.
# *nix version:
environmentpath = $codedir/special_environments:$codedir/environments
# Windows version:
environmentpath = $codedir/environments;C:\ProgramData\PuppetLabs\code\environment
Nella definizione, la directory del file che è elencata per prima viene scansionata e poi si sposta nell'altra directory nell'elenco, se non ne trova una.
File e directory
Tutte le impostazioni che accettano un singolo file o directory possono accettare un hash facoltativo di autorizzazioni. Quando il server si avvia, Puppet applicherà quei file o directory nell'elenco.
ssldir = $vardir/ssl {owner = service, mode = 0771}
Nel codice sopra, gli hash consentiti sono proprietario, gruppo e modalità. Esistono solo due valori validi per le chiavi del proprietario e del gruppo.