Instale Puppet: instale Puppet en cuatro sencillos pasos



Este blog es una guía sobre cómo instalar Puppet Master y Puppet Agent. También incluye un ejemplo para implementar Apache Tomcat usando el módulo Puppet Tomcat.

Instalar Puppet

Este blog es una guía sobre cómo instalar Puppet Master y Puppet Agent (Slave) en una máquina CentOS. También veremos un ejemplo de Puppet, en el que desplegaré Apache Tomcat usando Puppet. Estoy usando dos imágenes virtuales CentOS, una para Puppet Master y otra para Puppet Agent.

Los siguientes son los pasos para instalar Puppet: -





  1. Instalar Puppet Master y Puppet Agent
  2. Edite hosts y archivos de configuración de Puppet en Puppet Master y Agent
  3. Establecer una conexión segura entre Puppet Master y Puppet Agent
  4. Implementar Apache Tomcat con Puppet

Antes de instalar Puppet, veamos algunos requisitos previos.

Prerrequisitos

Estoy usando dos imágenes virtuales, por lo que puede seleccionar cualquiera de ellas como Puppet Master y la otra puede denominarse Puppet Agent.



Primero, necesitamos eliminar todas las reglas de firewall de Puppet Master y Puppet Agent. Iptables es el firewall predeterminado disponible en la mayoría de las distribuciones de Linux de forma predeterminada.

Ejecuta esto:

iptables -F

Ahora necesitamos guardar estas configuraciones.



Ejecuta esto:

guardar iptables de servicio

Necesitamos habilitar el repositorio de la colección oficial de Puppet Labs tanto en Puppet Master como en Puppet Agent. Para obtener este repositorio, vaya a un enlace yum.puppetlabs.com .

Puppet Repository - Instalar Puppet - EdurekaAquí, copie la ubicación del enlace del repositorio de acuerdo con la versión de CentOS que esté utilizando. Estoy usando CentOS 6.

Ahora, para obtener este repositorio, ejecute el siguiente comando en ambas imágenes virtuales:

Ejecuta esto:

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

Hemos terminado con los requisitos previos, ahora antes de pasar a la instalación de Puppet, vea este video de instalación de Puppet.

Tutorial de instalación de marionetas | Instalación de marionetas - Implementación de Tomcat | Herramientas de DevOps | Edureka

1. Instale Puppet Master y Puppet Agent

1.1. Instalar Puppet Master

Para instalar Puppet Master, ejecute el siguiente comando:

Ejecute esto (en el maestro):

yum instalar servidor de marionetas

1.2. Instalar Puppet Agent

Para instalar Puppet Agent, ejecute el siguiente comando:

Ejecute esto (en el agente):

yum instalar marioneta

2. Edite hosts y archivos de configuración de Puppet en Puppet Master y Agent

2.1. Editar hosts y archivos de configuración de Puppet en Puppet Master

Primero, en la imagen virtual de Puppet Master, editaré el archivo de hosts usando el editor vi. También puede utilizar cualquier otro editor como vim, gedit, etc.

Ejecute esto (en el maestro):

vi / etc / hosts

Simplemente escriba la dirección IP de su máquina y asígnele un nombre de dominio. En la captura de pantalla anterior, puede ver que 192.168.1.182 es la dirección IP de mi máquina y le he asignado un nombre de dominio. puppet puppet.edureka.co .

Para conocer la dirección IP de su máquina, utilice el siguiente comando:

Ejecute esto (en el maestro):

ifconfig

Ahora editaremos el archivo de configuración de Puppet, usaré el editor vi.

Ejecute esto (en el maestro):

vi /etc/puppet/puppet.conf

Aquí, en la sección Master, ingrese el nombre DNS al que responderá el servidor (escriba el nombre de dominio que le ha dado a su Puppet Master). El DNS es un elemento importante para garantizar que los nodos se comuniquen utilizando nombres descriptivos en lugar de direcciones IP.

dns_alt_names = puppet, puppet.edureka.co

También debemos dar el nombre del certificado.

certname = puppet

2.2. Editar hosts y archivos de configuración de Puppet en Puppet Agente

Similar a Puppet Master aquí en la imagen virtual de Puppet Agent, primero editaremos el archivo de hosts usando el editor vi.

Ejecute esto (en el agente):

vi / etc / hosts

Ahora escriba la dirección IP de su Puppet Agent y déle un nombre de dominio, le he dado ' agente títere '. También debe proporcionar la dirección IP de su Puppet Master y el nombre de dominio adjunto.

192.168.1.119 agente títere
192.168.1.182 puppet puppet.edureka.co

Editemos ahora el archivo de configuración de Puppet.

Ejecute esto (en el agente):

vi /etc/puppet/puppet.conf

Ahora, en la sección del agente, asigne el nombre del servidor.
Escriba el nombre de dominio de su Puppet Master. Este es un paso muy importante porque una vez que le dé el nombre de dominio, irá al archivo de hosts y verificará la dirección IP adjunta a ese nombre de dominio. Asegúrese de haber escrito el nombre de dominio correcto.

servidor = puppet.edureka.co

3. Establezca una conexión segura entre Puppet Master y Puppet Agent

Puppet Agent solicita a Puppet Master su certificado. Una vez que Puppet Master envía su certificado, Puppet Agent genera su propio certificado. Luego solicita al Puppet Master que firme este certificado. Una vez que Master ha firmado este certificado, se establece una conexión segura entre Puppet Master y Puppet Agent.

3.1. Generar certificado de Puppet Master

En la imagen virtual Puppet Master, para generar el certificado CA y el certificado Puppet Master en la máquina Puppet Master, ejecute el siguiente comando:

Ejecute esto (en el maestro):

sudo -u puppet puppet master --no-daemonize --verbose

Este comando creará el certificado CA y un certificado Puppet Master, con los nombres DNS apropiados incluidos. Deténgalo una vez que se muestre la versión de Puppet usando ctrl + c porque no podemos iniciar el Puppet Master en este momento.

Ahora comenzaré Puppet Master.

Ejecute esto (en el maestro):

servicio de recursos de títeres titiritero asegurar = en ejecución

3.2. Enviar solicitud de firma de certificado de Puppet Agent a Puppet Master

Aquí, en la imagen virtual de Puppet Agent, necesito enviar la solicitud de firma del certificado a Puppet Master.

Ejecute esto (en el agente):

agente títere -t

3.3. Firmar el certificado de Puppet Agent en Puppet Master

En la imagen virtual de Puppet Master, debemos firmar el certificado solicitado por Puppet Agent. Para obtener la lista de certificados, ejecute el siguiente comando:

Ejecute esto (en el maestro):

lista de certificados de marionetas

Como puede ver, hay una solicitud de firma de certificado pendiente con el nombre puppetagent. Para firmar ese certificado, ejecute el siguiente comando:

Ejecute esto (en el maestro):

títere certificado firmar títere

Aquí la solicitud de firma del certificado fue enviada por Puppet Agent, así que he firmado ese certificado en particular, consulte la captura de pantalla anterior.

3.4. Actualizar Puppet Agent

Primero, necesitamos iniciar Puppet Agent.

Ejecute esto (en el agente):

cómo finalizar un programa java
servicio de recursos de títeres títere asegurar = correr

Ahora necesitamos actualizar Puppet Agent con los cambios realizados en Puppet Master. Dado que el Maestro ha firmado recientemente el certificado, lo actualizará.

Ejecute esto (en el agente):

agente títere -t

¡Felicidades! Ahora hay una conexión segura entre Puppet Master y Puppet Agent. Veamos ahora un ejemplo de Puppet, en el que desplegaré Apache Tomcat usando Puppet.

4. Implementar Apache Tomcat con Puppet

4.1. Definir configuración en Puppet Master

En la imagen virtual Puppet Master, antes de instalar Tomcat 9, necesito instalar Java 8 porque Tomcat 9 solo es compatible con Java 8 o versiones de Java lanzadas después de Java 8.

4.1.1. Instalar el módulo Java y Tomcat

Para instalar Java, necesito instalar el módulo Java, este módulo instala automáticamente Java JDK y simplifica la instalación de Java usando Puppet.

Ejecute esto (en el maestro):

módulo puppet instalar puppetlabs-java

Este comando instalará la última versión compatible del módulo Java.

Ahora, instalaremos el módulo Tomcat. Le permite usar Puppet para instalar Tomcat, administrar sus archivos de configuración e implementar aplicaciones web en él.

Para instalar la última versión compatible del módulo Tomcat:

Ejecute esto (en el maestro):

módulo de marionetas instalar puppetlabs-tomcat

4.1.2. Editar archivo site.pp en Puppet Manifests

Edite el archivo site.pp en Puppet Manifests usando su editor favorito, usaré el editor vi, para saber más sobre Manifests, consulte mi Tutorial de marionetas blog.

Ejecute esto (en el maestro):

vi /etc/puppet/manifests/site.pp

Aquí se incluyen los siguientes:

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 :: instancia {' predeterminado ': catalana_home = & gt' / opt / tomcat ',}

Así es como debería verse el archivo site.pp:

Guarde el archivo y salga del editor vi.

4.2. Actualizar Puppet Agent

Puppet Agent extrae su configuración del Master periódicamente (después de cada 30 minutos). Evaluará el manifiesto principal y aplicará el módulo que especifica la configuración de Tomcat. Si desea probarlo de inmediato, debe ejecutar el siguiente comando en cada nodo del Agente:

Ejecute esto (en el agente):

agente títere -t

Veamos si Apache Tomcat está funcionando en Puppet Agent. Para confirmar que abre localhost: 8080 en su navegador en la imagen virtual de Puppet Agent (el puerto 8080 es el puerto predeterminado para Apache Tomcat).

Hemos instalado correctamente Apache Tomcat utilizando Puppet. De manera similar, una gran infraestructura con cientos de agentes se puede administrar automáticamente usando Puppet y juega un papel vital en el logro de DevOps.

Espero que hayas podido seguir la guía de instalación de Puppet y que, a estas alturas, Puppet debe estar en funcionamiento en tu máquina. , revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de formación de certificación de Edureka DevOps ayuda a los alumnos a adquirir experiencia en varios procesos y herramientas de DevOps, como Puppet, Jenkins, Nagios y GIT, para automatizar varios pasos en SDLC.