Installa Puppet: installa Puppet in quattro semplici passaggi

Questo blog è una guida su come installare Puppet Master e Puppet Agent. Include anche un esempio per distribuire Apache Tomcat utilizzando Puppet Tomcat Module.

Installa Puppet

Questo blog è una guida su come installare Puppet Master e Puppet Agent (Slave) su una macchina CentOS. Vedremo anche un esempio di Puppet, in cui distribuirò Apache Tomcat usando Puppet. Sto usando due immagini virtuali CentOS, una per Puppet Master e l'altra per Puppet Agent.

Di seguito sono riportati i passaggi per installare Puppet: -





  1. Installa Puppet Master e Puppet Agent
  2. Modifica host e file di configurazione di Puppet in Puppet Master e Agent
  3. Stabilisci una connessione sicura tra Puppet Master e Puppet Agent
  4. Distribuisci Apache Tomcat utilizzando Puppet

Prima di installare Puppet, diamo un'occhiata ad alcuni prerequisiti.

Prerequisiti

Sto usando due immagini virtuali, quindi puoi selezionarne una come Puppet Master e l'altra può essere definita come Puppet Agent.



Innanzitutto, dobbiamo eliminare tutte le regole del firewall da Puppet Master e Puppet Agent. Iptables è il firewall predefinito disponibile nella maggior parte delle distribuzioni Linux per impostazione predefinita.

Esegui questo:

iptables -F

Ora dobbiamo salvare queste configurazioni.



Esegui questo:

servizio iptables save

Dobbiamo abilitare il repository di raccolta ufficiale di Puppet Labs sia in Puppet Master che in Puppet Agent. Per ottenere questo repository, vai a un collegamento yum.puppetlabs.com .

Repository Puppet - Installa Puppet - EdurekaQui, copia il percorso del collegamento del repository in base alla versione di CentOS che stai utilizzando. Sto usando CentOS 6.

Ora per ottenere questo repository, esegui il comando seguente in entrambe le immagini virtuali:

Esegui questo:

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm

Abbiamo finito con i prerequisiti, ora prima di passare all'installazione di Puppet, guarda questo video di installazione di Puppet.

Tutorial installazione Puppet | Installazione Puppet - Distribuzione Tomcat | Strumenti DevOps | Edureka

1. Installa Puppet Master e Puppet Agent

1.1. Installa Puppet Master

Per installare Puppet Master, esegui il comando seguente:

Esegui questo (sul master):

yum installa il server delle marionette

1.2. Installa Puppet Agent

Per installare Puppet Agent eseguire il comando seguente:

Esegui questo (sull'agente):

yum installa pupazzo

2. Modificare gli host e i file di configurazione di Puppet in Puppet Master e Agent

2.1. Modifica host e file di configurazione di Puppet in Puppet Master

Innanzitutto, nell'immagine virtuale di Puppet Master modificherò il file hosts utilizzando l'editor vi. Puoi anche usare qualsiasi altro editor come vim, gedit ecc.

Esegui questo (sul master):

vi / etc / hosts

Basta digitare l'indirizzo IP della macchina e assegnargli un nome di dominio. Nella schermata sopra puoi vedere che 192.168.1.182 è l'indirizzo IP della mia macchina e gli ho assegnato un nome di dominio puppet puppet.edureka.co .

Per conoscere l'indirizzo IP della tua macchina usa il comando seguente:

Esegui questo (sul master):

ifconfig

Ora modificheremo il file di configurazione di Puppet, userò l'editor vi.

Esegui questo (sul master):

vi /etc/puppet/puppet.conf

Qui nella sezione Master inserisci il nome DNS a cui risponderà il server (digita il nome di dominio che hai dato al tuo Puppet Master). Il DNS è un elemento importante per garantire che i nodi comunichino utilizzando nomi descrittivi anziché indirizzi IP.

dns_alt_names = puppet, puppet.edureka.co

Dobbiamo fornire anche il nome del certificato

certname = pupazzo

2.2. Modifica host e file di configurazione di Puppet in Puppet Agente

Simile a Puppet Master qui nell'immagine virtuale di Puppet Agent, modificheremo prima il file hosts utilizzando l'editor vi.

Esegui questo (sull'agente):

vi / etc / hosts

Ora digita l'indirizzo IP del tuo Puppet Agent e dagli un nome di dominio, ho dato ' burattinaio '. Devi anche fornire l'indirizzo IP del tuo Puppet Master e il nome di dominio ad esso associato.

192.168.1.119 burattinaio
192.168.1.182 puppet puppet.edureka.co

Ora modifichiamo il file di configurazione di Puppet.

Esegui questo (sull'agente):

vi /etc/puppet/puppet.conf

Ora nella sezione agente assegna il nome del server.
Digita il nome di dominio del tuo Puppet Master. Questo è un passaggio molto importante perché una volta fornito il nome di dominio, andrà al file hosts e controllerà l'indirizzo IP associato a quel nome di dominio. Assicurati di aver digitato il nome di dominio corretto.

server = puppet.edureka.co

3. Stabilire una connessione sicura tra Puppet Master e Puppet Agent

Puppet Agent richiede Puppet Master per il suo certificato. Una volta che Puppet Master invia il certificato, Puppet Agent genera il proprio certificato. Quindi richiede al burattinaio di firmare questo certificato. Una volta che Master ha firmato questo certificato, viene stabilita una connessione sicura tra Puppet Master e Puppet Agent.

3.1. Genera certificato Puppet Master

Nell'immagine virtuale di Puppet Master, per generare il certificato CA e il certificato Puppet Master nella macchina Puppet Master, eseguire il comando seguente:

Esegui questo (sul master):

sudo -u burattinaio burattinaio --no-daemonize --verbose

Questo comando creerà il certificato CA e un certificato Puppet Master, con i nomi DNS appropriati inclusi. Fermalo una volta che la versione di Puppet viene visualizzata usando ctrl + c perché non possiamo avviare il Puppet Master in questo momento.

Ora avvierò Puppet Master.

Esegui questo (sul master):

marionetta servizio risorse burattinaio assicurarsi = in esecuzione

3.2. Invia richiesta di firma del certificato da Puppet Agent a Puppet Master

Qui nell'immagine virtuale di Puppet Agent, devo inviare la richiesta di firma del certificato a Puppet Master.

Esegui questo (sull'agente):

agente fantoccio -t

3.3. Firma il certificato di agente delle marionette in Puppet Master

Nell'immagine virtuale di Puppet Master, dobbiamo firmare il certificato richiesto da Puppet Agent. Per ottenere l'elenco dei certificati, eseguire il comando seguente:

Esegui questo (sul master):

elenco certificati marionette

Come puoi vedere, c'è una richiesta di firma del certificato in attesa di nome puppetagent. Per firmare quel certificato eseguire il comando seguente:

Esegui questo (sul master):

marionetta cert segno marionettista

Qui la richiesta di firma del certificato è stata inviata da Puppet Agent, quindi ho firmato quel particolare certificato, fare riferimento allo screenshot qui sopra.

3.4. Aggiorna Puppet Agent

Per prima cosa, dobbiamo avviare il Puppet Agent.

Esegui questo (sull'agente):

marionetta servizio risorse marionetta garantire = in esecuzione

Ora dobbiamo aggiornare Puppet Agent con le modifiche apportate in Puppet Master. Poiché il Master ha recentemente firmato il certificato, lo aggiornerà.

Esegui questo (sull'agente):

come funziona tostring in java
agente fantoccio -t

Congratulazioni! Ora c'è una connessione sicura tra Puppet Master e Puppet Agent. Vediamo ora un esempio di Puppet, in cui distribuirò Apache Tomcat utilizzando Puppet.

4. Distribuire Apache Tomcat utilizzando Puppet

4.1. Definisci la configurazione in Puppet Master

Nell'immagine virtuale di Puppet Master, prima di installare Tomcat 9, devo installare Java 8 perché Tomcat 9 è compatibile solo con Java 8 o versioni di Java rilasciate dopo Java 8.

4.1.1. Installa Java e Tomcat Module

Per installare Java devo installare il modulo Java, questo modulo installa automaticamente Java JDK e semplifica l'installazione di Java utilizzando Puppet.

Esegui questo (sul master):

modulo puppet installa puppetlabs-java

Questo comando installerà l'ultima versione compatibile del modulo Java.

Ora installeremo il modulo Tomcat. Ti consente di utilizzare Puppet per installare Tomcat, gestire i suoi file di configurazione e distribuirvi app web.

Per installare l'ultima versione compatibile del modulo Tomcat:

Esegui questo (sul master):

modulo puppet installa puppetlabs-tomcat

4.1.2. Modifica il file site.pp in Puppet Manifests

Modifica il file site.pp in Puppet Manifests usando il tuo editor preferito, userò l'editor vi, per saperne di più sui manifesti fai riferimento al mio Tutorial marionette Blog.

Esegui questo (sul master):

vi /etc/puppet/manifests/site.pp

Includere quanto segue:

class {'java': package = & gt 'java-1.8.0-openjdk-devel':} tomcat :: install {'/ opt / tomcat': source_url = & gt 'http://redrockdigimark.com/apachemirror/tomcat/ tomcat-9 / v9.0.0.M13 / bin / apache-tomcat-9.0.0.M13.tar.gz ',} tomcat :: instance {' default ': catalana_home = & gt' / opt / tomcat ',}

Ecco come dovrebbe apparire il file site.pp:

Salvare il file e uscire dall'editor vi.

4.2. Aggiorna Puppet Agent

Puppet Agent estrae periodicamente la propria configurazione dal Master (ogni 30 minuti). Valuterà il manifest principale e applicherà il modulo che specifica l'installazione di Tomcat. Se vuoi provarlo immediatamente, devi eseguire il seguente comando su ogni nodo dell'agente:

Esegui questo (sull'agente):

agente fantoccio -t

Vediamo se Apache Tomcat funziona in Puppet Agent. Per confermare che apri localhost: 8080 nel tuo browser sull'immagine virtuale di Puppet Agent (la porta 8080 è la porta predefinita per Apache Tomcat).

Abbiamo installato con successo Apache Tomcat utilizzando Puppet. Allo stesso modo, una grande infrastruttura con centinaia di agenti può essere gestita automaticamente utilizzando Puppet e svolge un ruolo fondamentale nel raggiungimento di DevOps.

Spero che tu sia riuscito a seguire la guida all'installazione di Puppet e che a questo punto Puppet sia attivo e funzionante sulla tua macchina , controlla il da Edureka, una società di formazione online affidabile con una rete di oltre 250.000 studenti soddisfatti sparsi in tutto il mondo. Il corso di formazione sulla certificazione DevOps di Edureka aiuta gli studenti ad acquisire esperienza in vari processi e strumenti DevOps come Puppet, Jenkins, Nagios e GIT per automatizzare più passaggi in SDLC.