Infraestructura de Puppet
El sistema puppet se compone de la siguiente infraestructura.
Puppet Master
Servidor donde se alojan los módulos y configuraciones que indicará a los clientes cual es el estado deseado por el administrador.
Modulos
Un módulo se compone de
- Manifests
- Templates
- Ficheros
Manifest
Scripts en ruby con el código que realizará la gestión de la configuración. Existen módulos para diferentes tipos de software, por ejemplo:
- Zabbix Server / Proxy / Agent / Agent 2
- Firewalld
- NTP
Son los encargados de realizar la instalación en caso de que se solicite en la configuración o template.
Template
Es la configuración que se desea para un software que se haya instalado, por ejemplo para poder indicar a Zabbix Agent cual es su servidor y servidor activo, para el NTP cual es su servidor desde donde sincronizarse, para el Firewalld cuales son las reglas que debe aplicar. Tambien poder indicarle el estado del servicio, si siempre ha de estar encendido.
También permite indicar la creación de usuarios, copiar las claves RSA que deben autorizar el login...
Ficheros
A diferencia de los templates, los ficheros simplemente son instrucciones de copiar uno o varios ficheros al cliente, de forma que siempre tenga el fichero disponible o instalado. Uno de los posibles usos es copiar certificados a la root trusted store para que el cliente pueda confiar en los equipos de la red interna.