GNU/Linux >> Tutoriales Linux >  >> Panels >> Panels

Cómo instalar Puppet master y cliente en Ubuntu 14.04

Cómo instalar Puppet master y cliente en Ubuntu 14.04

Este documento describe cómo instalar y configurar Puppet en el servidor Ubuntu 14.04. También conectaré un cliente de Puppet con el escritorio de Ubuntu 14.04. Puppet es un sistema de administración de configuración que le permite definir el estado de su infraestructura de TI y luego aplica automáticamente el estado correcto. Ya sea que esté administrando solo unos pocos servidores o miles de máquinas físicas y virtuales, Puppet automatiza las tareas que los administradores de sistemas suelen realizar manualmente, liberando tiempo y espacio mental para que los administradores de sistemas puedan trabajar en los proyectos que brindan un mayor valor comercial.
Ya sea que esté implementando aplicaciones proporcionadas por proveedores o trabajando con un equipo de desarrolladores de software internos, Puppet automatiza cada paso del proceso de entrega de software:desde el aprovisionamiento de máquinas físicas y virtuales hasta la orquestación y generación de informes; desde el desarrollo del código en etapa inicial hasta las pruebas, el lanzamiento de producción y las actualizaciones. Puppet asegura consistencia, confiabilidad y estabilidad. También facilita una colaboración más estrecha entre los administradores de sistemas y los desarrolladores, lo que permite una entrega más eficiente de código más limpio y mejor diseñado.


1 Nota Preliminar

Este tutorial se basa en el servidor Ubuntu 14.04 y el escritorio Ubuntu 14.04, por lo que debe configurar una instalación básica de servidor y escritorio Ubuntu 14.04 antes de continuar con este tutorial. El sistema debe tener una dirección IP estática. Uso 192.168.0.100 como mi dirección IP del servidor Ubuntu y 192.168.0.101 como IP del escritorio Ubuntu en este tutorial y server1.example.com como el nombre de host del servidor Ubuntu y desktop1.example.com como el nombre de host del escritorio Ubuntu.

En Ubuntu Server y Ubuntu Desktop, debe haber esta entrada en el archivo /etc/hosts. Estas entradas serán comunes tanto en el servidor como en el cliente.

nano /etc/hosts

[...]
192.168.0.100 server1.example.com server1 192.268.0.101 desktop1.example.com desktop1

Además de que tanto el Servidor como el Escritorio deben tener sincronización de tiempo, se procesará en las máquinas Servidor y Escritorio de la siguiente manera:

ntpdate pool.ntp.org; apt-get update &&sudo apt-get -y install ntp; reiniciar servicio ntp

2 Instalación de Puppet master en Ubuntu Server 14.04

Para instalar Puppet master vamos al último repositorio e instalamos Puppet de la siguiente manera:

cd /tmp
wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
dpkg -i puppetlabs-release-trusty.deb
apt-get update

apt-get install titiritero

Verifique la versión de la marioneta como:

marioneta -V

[email protected]:/tmp# marioneta -V
3.7.1
[email protected]:/tmp#

Tenemos la versión de marionetas como 3.7.1. Ahora debemos bloquear la actualización de la versión de la marioneta, ya que esto dificultará las configuraciones mientras se actualiza la marioneta. Se hará editando el archivo de la siguiente manera:

nano /etc/apt/preferences.d/00-puppet.pref

Agregue las entradas en el archivo recién creado como:

# /etc/apt/preferences.d/00-puppet.pref
Package: puppet puppet-common puppetmaster-passenger
Pin: version 3.7*
Pin-Priority: 501

No actualizará Puppet mientras se ejecutan actualizaciones en el sistema.

A continuación cambiaremos el archivo de configuración de la siguiente manera:

nano /etc/puppet/puppet.conf

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
#templatedir=$confdir/templates

[master]
# These are needed when the puppetmaster is run by passenger
# and can safely be removed if webrick is used.
ssl_client_header = SSL_CLIENT_S_DN
ssl_client_verify_header = SSL_CLIENT_VERIFY

Simplemente comente la línea templatedir=$confdir/templates y guarde el archivo.

Ahora detendremos y luego iniciaremos los servicios:

parada de titiritero de servicio
inicio de titiritero de servicio

Ahora el servidor maestro de marionetas está listo.

3 Instalación del cliente de Puppet en Ubuntu Desktop 14.04

Ahora nuestro objetivo es instalar y configurar Ubuntu Desktop como el cliente de Puppet para el servidor maestro de Puppet Ubuntu. Su cliente debe estar configurado para /etc/hosts además de que su escritorio Ubuntu debe tener un archivo sincronizado en el tiempo como se mencionó en el Capítulo 1 anterior. A continuación, instalaremos Puppet de la siguiente manera:

cd /tmp
wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
dpkg -i puppetlabs-release-trusty.deb
apt-get update

apt-get install marioneta

Verifique la versión de la marioneta como:

marioneta -V

[email protected]:/tmp# marioneta -V
3.7.1
[email protected]:/tmp#

Tenemos la versión de marionetas como 3.7.1. Ahora debemos bloquear la actualización de la versión de la marioneta, ya que esto dificultará las configuraciones mientras se actualiza la marioneta. Se hará editando el archivo de la siguiente manera:

nano /etc/apt/preferences.d/00-puppet.pref

Agregue las entradas en el archivo recién creado como:

# /etc/apt/preferences.d/00-puppet.pref
Package: puppet puppet-common puppetmaster-passenger
Pin: version 3.7*
Pin-Priority: 501

No actualizará Puppet mientras se ejecutan actualizaciones en el sistema.

A continuación cambiaremos el archivo de configuración de la siguiente manera:

nano /etc/puppet/puppet.conf

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
#templatedir=$confdir/templates

#[master]
## These are needed when the puppetmaster is run by passenger
## and can safely be removed if webrick is used.
#ssl_client_header = SSL_CLIENT_S_DN
#ssl_client_verify_header = SSL_CLIENT_VERIFY

[agent]
server = server1.example.com

Simplemente comente las líneas como se mencionó anteriormente y agregue las entradas del agente y guarde el archivo.

A continuación, debemos editar el archivo vi /etc/default/puppet y realizar cambios de no a sí como se muestra a continuación:

nano /etc/default/puppet

[...]
START=yes
[...]

Ahora estamos listos para iniciar el servicio de marionetas, se hará de la siguiente manera:

inicio de títeres de servicio

Ahora nuestra máquina cliente está lista para comunicarse con el servidor Puppet Master.

4 Intercambio de certificados del maestro de marionetas al cliente de marionetas

Después de la configuración exitosa, el cliente de Puppet Ubuntu Desktop buscará en el servidor maestro de Puppet y solicitará una solicitud de certificado antes de aceptar cualquier instrucción administrativa del servidor de marionetas maestro.

Para ver dicha solicitud de certificado, ejecute el comando en el servidor Puppet Master Ubuntu.

lista de certificados de marionetas

[email protected]:~# lista de certificados de marionetas
  "escritorio1.ejemplo.com" (SHA256) BD:F7:7C:76:48:09:C5:FE:0C:A8:CD:81:92 :1D:A4:1F:15:1C:1A:6E:DE:C1:3C:B4:CA:FC:C6:2F:B4:9A:91:74
[email protected]:~#

Significa que hay una máquina llamada dekstop1.example.com que se creó y solicita una solicitud de certificado. Ahora el servidor de Puppet Master debe firmar el certificado solicitado por el cliente de Puppet. Se puede hacer de la siguiente manera:

marioneta certificado firma escritorio1.example.com

La salida será así:

[email protected]:~# puppet cert sign desktop1.example.com
Aviso:Solicitud de certificado firmada para desktop1.example.com
Aviso:Eliminando el archivo Puppet::SSL::CertificateRequest desktop1.example. com en '/var/lib/puppet/ssl/ca/requests/desktop1.example.com.pem'
[email protected]:~#

Significa que la solicitud de la máquina de escritorio se acepta en la máquina maestra de Puppet. También podemos verificar eso con el comando:

lista de certificados de marionetas -todos

[email protected]:~# lista de certificados de marionetas -todos
+ "desktop1.ejemplo.com"        (SHA256) 7A:B7:CE:C4:A0:05:99:E7:E2:53:AD:D2:7F:6E:B5:38:CA:87:E0:8D:C7:0E:71:89:82:E1:17:FA:9D:B1:01:6D
+ "servidor1.servidor1 .ejemplo.com" (SHA256) FF:E2:49:B9:2F:B4:D1:79:21:E9:1A:83:22:FA:DB:E8:5D:9B:9A:1C:E1:4D:83:B9:16:9D:FD:8B:72:FD:62:5F (nombres alternativos:"DNS:puppet", "DNS:puppet.server1.example.com", "DNS:server1.server1. ejemplo.com")
[email protected]:~#

El signo + anterior en la salida muestra la firma exitosa del certificado en Puppet master Ubuntu Server.

Para ver la huella digital del certificado del cliente en el escritorio Puppet Client Ubuntu, ejecute:

agente títere --huella dactilar

[email protected]:~# agente de marionetas --fingerprint
(SHA256) 7A:B7:CE:C4:A0:05:99:E7:E2:53:AD:D2:7F:6E:B5:38:CA:87:E0:8D:C7:0E:71:89:82:E1:17:FA:9D:B1:01:6D
[email protected]:~#

Del mismo modo, podemos agregar cualquier número de clientes con Puppet master Ubuntu Server y firmar las solicitudes de certificado de los clientes. Si por algún requisito administrativo desea revocar los certificados del servidor Ubuntu maestro de Puppet, podemos ejecutar:

títere certificado limpio escritorio1.example.com

[email protected]:~# puppet cert clean desktop1.example.com
Aviso:Certificado revocado con serial 3
Aviso:Eliminando el archivo Puppet::SSL::Certificate desktop1.example.com en '/ var/lib/puppet/ssl/ca/signed/desktop1.example.com.pem'
Aviso:eliminando el archivo Puppet::SSL::Certificate desktop1.example.com en '/var/lib/puppet/ssl /certs/desktop1.example.com.pem'
[email protected]:~#

Para asegurarme de que los certificados se eliminen por completo en el servidor Ubuntu de Puppet Master, los limpié explícitamente de nuevo

certificado de marionetas -c

Nota anterior Acabo de mencionar cómo podemos revocar el certificado y desconectar el escritorio del servidor maestro de Puppet.

Como se mencionó anteriormente, podemos conectar una cantidad N de escritorios y realizar las administraciones de manera centralizada a través del servidor maestro de Puppet. ¡Felicidades! Ahora tenemos una instancia de Puppet completamente funcional en nuestro Ubuntu 14.04 :)

5 Enlaces

  • Marioneta:http://puppetlabs.com/
  • Ubuntu:http://www.ubuntu.com/

Panels
  1. Cómo instalar NFS Client y Server en Ubuntu 20.04

  2. ¿Cómo instalar y configurar Puppet 4 en CentOS y Ubuntu? [Maestro y Agente]

  3. Cómo instalar y configurar LibreNMS en Ubuntu 16.04

  4. Cómo instalar y asegurar Redis en Ubuntu 20.04

  5. Cómo instalar y configurar Fail2ban en Ubuntu 20.04

Cómo instalar servidor y cliente NTP en Ubuntu

Cómo instalar UrBackup Server and Client en Ubuntu 20.04

Cómo instalar Juju en Ubuntu 20.04

Cómo instalar el servidor y el cliente Telnet en Ubuntu

Cómo instalar el cliente TeamSpeak en Ubuntu

Cómo instalar el servidor NTP y los clientes en Ubuntu 20.04 LTS