Instalar agente Puppet en cliente GNU Linux
El artículo de hoy va sobre la instalación y configuración del agente Puppet, en un servidor con GNU Linux. Es la segunda parte sobre dicho producto, en la anterior vimos como instalar el producto en un servidor con CentOS 7.
Instalar agente Puppet en cliente GNU Linux
A modo de muestra, he seguido los pasos de instalación sobre un VPS con Debian 8 «Jessie». Ambas máquinas han sido creadas en DigitalOcean, y cuando las configuré les asigne además de una IP pública que viene por defecto, otra interna. Utilizarán dicha interfaz para comunicarse entre sí.
Antes de nada, el primer paso, ya que no tengo configurado un servidor DNS interno, utilizaremos el fichero /etc/hosts, para definir las IP y sus nombres. Es muy importante esta parte, si queremos que todo funcione correctamente. En mi caso, quedaría así:
10.135.x.x centos-puppet centos-puppet
10.135.x.x debiancliente debiancliente
La información sobre los hosts debe indicarse en los dos servidores. Antes de avanzar al siguiente paso quiero recalcar una cosa. Al principio los nombres de lo hosts en mi banco de pruebas, tenían alguna mayúscula, y eso hacía que más adelante tuviese problemas al arrancar los servicios, por lo que, recomiendo que lo nombres de los hosts vayan en minúscula.
Ahora pasaremos a instalar al cliente en el host «debiancliente«, de la siguiente manera:
wget https://apt.puppetlabs.com/puppetlabs-release-pc1-jessie.deb
dpkg -i puppetlabs-release-pc1-jessie.deb
Una vez descargados e instalados los repositorios, pasamos a instalar el cliente:
apt update
apt install puppet-agent
Una vez hecho esto debemos iniciar el servicio:
/opt/puppetlabs/bin/puppet resource service puppet ensure=running enable=true
En el cliente modificamos el fichero /etc/puppetlabs/puppet/puppet.conf, y añadimos justo al final del fichero:
[main]
server = centos-puppet
Aquí indicamos el nombre del servidor maestro. En el servidor principal de pappet, también debemos modificar el mismo fichero. Justo al final del mismo:
[main]
dns_alt_names = centos-puppet
Guardamos y reinciamos los servicios:
#En el servidor maestro con centos
systemctl restart puppetserver
#En el servidor cliente con Debian
service puppet restart
Ahora desde el cliente creamos un petición, que envía el certificado del servidor al servidor maestro. Para que éste, si se tercia lo acepte:
puppet agent -t
Si todo va bien, veremos el resultado de la imagen:
Desde el servidor maestro, podemos recoger la petición y firmarla:
/opt/puppetlabs/bin/puppet cert sign debiancliente
Si todo ha ido bien, ejecutando el siguiente comando, ya veremos el cliente, en la lista de todos los certificados:
/opt/puppetlabs/bin/puppet cert list --all
En mi caso me muestra en mensaje:
De momento lo dejamos aquí, en el próximo artículo veremos algunos ejemplos de funcionamiento:
Espero que el de hoy haya sido de vuestro interés. Nos leemos en la próxima 😉