GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Foreman para administrar nodos de marionetas en Ubuntu 16.04

Hola a todos, bienvenidos a nuestro artículo de hoy sobre Foreman para administrar sus Puppet Nodes en Ubuntu 16. Foreman es una herramienta de código abierto que ayuda a los administradores de sistemas a administrar servidores a lo largo de su ciclo de vida, desde el aprovisionamiento y la configuración hasta la orquestación y el monitoreo. Puede automatizar fácilmente tareas repetitivas, implementar aplicaciones rápidamente y administrar cambios de manera proactiva, tanto en las instalaciones con VM y bare-metal o en la nube mediante el uso de la arquitectura de proxy inteligente de Puppet, Chef, Salt, Ansible y Foreman. Foreman proporciona instalaciones de interacción integrales que incluyen una interfaz web, CLI y API RESTful que le permiten crear una lógica comercial de nivel superior sobre una base sólida.

Con Foreman, puede descubrir, aprovisionar y actualizar toda su infraestructura completa, crear y administrar instancias en nubes públicas y privadas. Puede usarlo en un grupo de sus hosts y administrarlos de forma masiva, independientemente de la ubicación, luego revise los cambios históricos para auditarlos o solucionar problemas.

Requisitos

Hay algunos requisitos básicos que deben asegurarse antes de pasar a la instalación de Foreman. Lo primero es crear una máquina virtual nueva en la que tenga privilegios de root, configurar su FQDN y nombre de host que se puede configurar con los siguientes comandos.

# hostnamectl set-hostname ksh-u16

Luego edite el archivo 'hosts' con su FQDN antes del nombre de host.

# vi /ete/hosts
127.0.0.1 ksh-u16.domain.com ksh-u16

Guarde y cierre el archivo y ejecute el siguiente comando para comprobar si se ha configurado su FQDN.

# hostname -f

Verá su FQDN en la salida. Ahora actualice su sistema con las últimas actualizaciones y parches de seguridad usando el siguiente comando en su terminal de línea de comandos.

# apt-get update
# apt-get upgrade

Seleccione la tecla 'Y' para confirmar y comenzar las actualizaciones de su sistema. Una vez que todas las actualizaciones estén completas, podemos pasar a la instalación de Foreman.

Instalación de Foreman en Ubuntu 16

Ahora vamos a instalar Foreman usando su instalador, que incluirá todos los componentes necesarios para ejecutar Foreman, que es Puppet master y agent, Apache Web server con SSL y Passenger module.

Primero habilitaremos el repositorio para usar Puppet 4.x con Puppet Agent y Puppet Server usando los siguientes comandos.

# apt-get -y install ca-certificates
# wget https://apt.puppetlabs.com/puppetlabs-release-pc1-xenial.deb
# dpkg -i puppetlabs-release-pc1-xenial.deb

Luego use los comandos a continuación para habilitar el repositorio de Foreman.

echo "deb http://deb.theforeman.org/ xenial 1.14" > /etc/apt/sources.list.d/foreman.list
echo "deb http://deb.theforeman.org/ plugins 1.14" >> /etc/apt/sources.list.d/foreman.list
apt-get -y install ca-certificates
wget -q https://deb.theforeman.org/pubkey.gpg -O- | apt-key add -

Descarga el instalador de Forman usando el siguiente comando.

# apt-get update && apt-get -y install foreman-installer

Ahora ejecutaremos el instalador de capataz, pero antes de ejecutar el instalador, asegúrese de que ping $(hostname -f) muestra la dirección IP real, no 127.0.1.1. Cambie o elimine esta entrada de /etc/hosts si está presente.

La ejecución de la instalación no es interactiva, pero la configuración se puede personalizar proporcionando cualquiera de las opciones enumeradas en foreman-installer --help o ejecutando foreman-installer -i para el modo interactivo. Agregar -v desactivará la barra de progreso y mostrará todos los cambios.

Para ejecutar el instalador, ejecute el siguiente comando.

# foreman-installer
Installing Done [100%] [...........................................................................]
Success!
* Foreman is running at https://ksh-u16.domain.com
Initial credentials are admin / cwGbVjM2zGP5aDwm
* Foreman Proxy is running at https://ksh-u16.domain.com:8443
* Puppetmaster is running at port 8140
The full log is at /var/log/foreman-installer/foreman.log

Una vez finalizado, el instalador imprimirá algunos detalles como se muestra arriba, donde encontrará los detalles maestros de Foreman, Smart Proxy y Puppet.

Interfaz web de capataz

Abramos su navegador favorito junto con la URL web de Foreman mencionada anteriormente e iniciemos sesión con las credenciales proporcionadas como se muestra.

https://ksh-u16.domain.com

Gestión de marionetas

Después de una instalación exitosa, el instalador de Foreman habrá configurado un maestro de marionetas en el host, totalmente integrado con Foreman. Primero ejecute el agente de Puppet en el host de Foreman, que enviará el primer informe de Puppet a Foreman, creando automáticamente el host en la base de datos de Foreman.

# puppet agent --test
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for ksh-u16.centricait.com
Info: Applying configuration version '1485372953'
Notice: Applied catalog in 0.23 seconds

Ahora, en la interfaz web de Foreman, haga clic en Hosts y su host Foreman debería estar visible en la lista con un estado "OK". Esto indica que su estado es correcto, sin cambios en la última ejecución de Puppet.

Descargando un módulo de Puppet

A continuación, instalaremos un módulo de Puppet para administrar el servicio NTP desde Puppet Forge a nuestro entorno de "producción" predeterminado mediante el siguiente comando.

# puppet module install puppetlabs/ntp
Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
Notice: Downloading from https://forgeapi.puppet.com ...
Notice: Installing -- do not interrupt ...
/etc/puppetlabs/code/environments/production/modules
└─┬ puppetlabs-ntp (v6.0.0)
└── puppetlabs-stdlib (v4.15.0)

En Foreman, vaya a Configurar> Clases y haga clic en Importar desde nombre de host (arriba a la derecha) para leer las clases de Puppet disponibles del titiritero y llenar la base de datos de Foreman. La clase "ntp" aparecerá en la lista de clases de Puppet si se instaló correctamente como se muestra a continuación.

Aquí debe marcar el icono y hacer clic en el botón 'actualizar'. El módulo ntp ahora está importado a Foreman y está listo para usarse con un host.

Uso del módulo de marionetas

Haga clic en la clase "ntp" en la lista, cambie a Parámetros de clase inteligente pestaña y seleccione el parámetro de servidores en el lado izquierdo. Marque la casilla de verificación Anular para que Foreman administre los “servidores” parámetro de la clase y cambie el valor predeterminado si lo desea, antes de enviar la página.

Ahora vuelva a cambiar a la pestaña Hosts y haga clic en Edit en el host de Foreman. En la pestaña Clases de Puppet, expanda el módulo ntp y haga clic en el ícono + para agregar la clase ntp al host, luego guarde el host.

Para ver las configuraciones de Puppet, al hacer clic en el botón YAML cuando regrese a la página del host, se mostrarán la clase ntp y el parámetro de los servidores, tal como se pasaron a Puppet a través de la interfaz ENC (clasificador de nodo externo). Vuelva a ejecutar 'puppet agent --test' en el host Foreman para ver el servicio NTP reconfigurado automáticamente por Puppet y el módulo NTP.

Una vez que haga clic en YAML, obtendrá el siguiente resultado en su página web.

---
classes:
ntp:
authprov: ''
broadcastclient: ''
config: ''
config_dir: ''
config_epp: ''
config_file_mode: ''
config_template: ''
tos_minsane: ''
udlc: ''
udlc_stratum: ''
parameters:
puppetmaster: ksh-u16.domain.com
domainname: domain.com
root_pw:
puppet_ca: ksh-u16.domain.com
foreman_env: production
owner_name: Admin User
owner_email: [email protected]
foreman_subnets: []
foreman_config_groups: []
environment: production

Agregar más hosts administrados por Puppet

Otros anfitriones con agentes de Puppet instalados pueden usar este maestro de títeres configurando server =ksh-u16.domain.com en títeres.conf. Firme sus certificados en Foreman yendo a Infraestructura> Proxies inteligentes> Certificados o usando los siguientes comandos en el titiritero.

# puppet cert list
# puppet cert sign

Las clases de marionetas se pueden agregar a grupos de host en Foreman en lugar de hosts individuales, lo que permite una configuración estándar de muchos hosts simultáneamente. Los grupos de host se utilizan normalmente para representar roles de servidor.

Conclusión

En este artículo, aprendimos sobre la instalación de Foreman y sobre el uso y la administración de nodos de marionetas en Ubuntu 16. Foreman puede ser una fuente única de información de configuración y ayudarlo a crear y aprovisionar sistemas más rápido para que cuando un nuevo miembro del equipo se una a su equipo, simplemente presione un botón y aprovisione su nueva máquina automáticamente. Con Foreman, puede configurar nuevos entornos de prueba con cada ejecución de implementación, lo que lo ayuda a probar diferentes características de las funciones con mucha facilidad y realiza un seguimiento de la evolución del entorno junto con la del código. De esta manera, tiene que esforzarse al mínimo para configurar su nuevo entorno de prueba o producción. Espero que encuentre este artículo de mucha ayuda, gracias por leer.


Ubuntu
  1. Cómo instalar Odoo en Ubuntu

  2. Cómo instalar Maven en Ubuntu

  3. Cómo instalar Wine en Ubuntu

  4. Cómo instalar Ruby en Ubuntu 20.04

  5. Cómo instalar Puppet 6.x en Ubuntu 18.04 / Ubuntu 16.04 y Debian 9

Cómo instalar Puppet en Ubuntu 20.04

Cómo instalar Puppet en Ubuntu 20.04 LTS

Cómo instalar Foreman en Ubuntu 20.04 LTS

Cómo instalar Go en Ubuntu 20.04

Cómo instalar Go en Ubuntu 22.04

Cómo instalar Foreman en Ubuntu 20.04