Como Instalar Foreman en CentOS 8 / RHEL 8
PROMO DigitalOcean
Antes de comenzar, quería contarles que hay una promoción en DigitalOcean donde te dan un crédito de USD 100.00 durante 60 días para que puedas probar los servicios que este Proveedor Cloud ofrece. Lo único que tienes que hacer es suscribirte a DigitalOcean con el siguiente enlace: https://bit.ly/digitalocean-itsm
Introducción
Foreman es una herramienta de código abierto que permite el aprovisionamiento automatizado y la configuración de sistemas Linux. Puede integrarse con diversas herramientas de automatización como Ansible, Chef, Salt y Puppet, que están disponibles como plugins y proveer una gestión del ciclo de vida de una infraestructura completa. En este post les voy a explicar como instalar Foreman en un sistema CentOS 8 / RHEL 8.
Arquitectura de Foreman
Un servidor configurado con Foreman siempre contendrá una instancia central la cual es responsable de proveer una interfaz web, configuraciones de los nodos, archivos de configuración iniciales de los hosts, etc. Sin embargo, si el servidor instalado soporta instalaciones desatendidas entonces las otras operaciones necesitan ser realizadas para automatizar completamente el proceso. El Smart Proxy gestiona los servicios remotos y es generalmente instalado con todos los componentes de Foreman para administrar TFTP, DHCP, DNS, Puppet, Puppet CA, Ansible, Salt, y Chef.
Smart-Proxy
El Smart-Proxy está localizado dentro o cerca de una máquina que realiza una función y ayuda a Foreman a orquestar el proceso de configurar un nuevo host. Colocar el proxy dentro o cerca del actual servicio también ayuda a reducir la latencia en una infraestructura distribuida de gran tamaño.
Características de Foreman
Las principales características de Foreman, son las siguientes:
- Descubre, aprovisiona y actualiza una infraestructura física completa.
- Crea y administra instancias en un ambiente de virtualización tanto en nube privada como pública.
- Instala sistemas operativos a través de, medios locales o desde templates o imágenes.
- Controla y provee reportes desde el software de manejo de configuración.
- Agrupa los hosts y los administra en serie, independientemente de la ubicación donde se encuentren.
- Se puede ver el histórico de cambios para efectos de auditoría y troubleshooting.
- Interfaz gráfica de usuario, JSON REST API y CLI para Linux.
- Puede extenderse las funcionalidad si es necesario, a través de una arquitectura robusta de plugins.
Después de instalar Foreman, la tarea principal a ejecutar es la de instalar correctamente los plugins que formarán parte de la Infraestructura. Si se usa RHEV como Infraestructura de virtualización, se necesita especificar los plugins que serán habilitados para aprovisionar y eliminar recursos. El mismo modelo aplica para todos los demás softwares de gestión de Infraestructura como KVM, Xen, CloudStack, OpenStack y otros.
Instalando Foreman
Configurando el nombre del host
Es necesario configurar un nombre de host para el servidor donde va a ser instalado. Voy a utilizar el dominio itsimplenow.com, por lo que debes cambiarlo por el de tu Infraestructura actual.
|
|
Con su editor de textos de confianza, modificamos el archivo /etc/hosts para colocar la dirección IP y el nombre FQDN del servidor:
|
|
Comprobamos si está tomando la dirección IP y que no sea la de localhost (127.0.0.1):
|
|
Si ping da como resultado 127.0.0.1, modifica o elimina la entrada en el archivo /etc/hosts en caso de estar presente.
El nombre de host configurado puede ser confimado con el comando:
|
|
Instalar y Configurar NTP para Sincronizar la Fecha y Hora
Chronyd es la alternativa de sincronización de tiempo para sistemas CentOS / RHEL, la instalamos con el siguiente comando:
|
|
Una vez instalado, configuramos nuestra zona horaria:
|
|
Iniciamos chronyd y lo habilitamos para que se levante al iniciar el sistema:
|
|
Sincronizamos la fecha y hora:
|
|
Y ahora confirmamos:
|
|
Añadiendo los repositorios de Foreman y Puppet
Puppet
|
|
Foreman
|
|
Añadiendo el Instalador de Foreman
Una vez que ambos repositorios estén instalados, instalamos el instalador (valga la redundancia) de Foreman:
|
|
Cuando la instalación termine, configuraremos los componentes de Foreman. El instalador no es mas que modulos de Puppet que instala y configura todo por nosotros, lo siguiente:
- Servidor Apache HTTP con SSL (usando un certificado Puppet autofirmado)
- Ejecución de Foreman bajo mod_passenger.
- Configura el Smart Proxy para Puppet, TFTP y SSL.
- Ejecución del Puppet master bajo mod_passenger
- Configuración del agente Puppet.
- Servidor TFTP (bajo xinetd en sistemas Red Hat)
La instalación de foreman se ejecuta en un modo no interactivo por defecto, pero la configuración puede ser personalizada proveyendo algunas de las siguientes opciones:
|
|
Para que el instalador se ejecute en modo interactivo:
|
|
En caso de querer instalalo con el modo no interactivo:
|
|
Veremos la credencial de acceso admin (Initial credentials are admin / 7o6gqYujGYZsofj4) y la url (https://foreman.itsimplenow.com)
Configurando el Firewall
Abrimos los puertos requeridos:
|
|
|
|
Recargamos el firewall:
|
|
Y ya lo tendremos instalado.
Espero les haya gustado este tutorial, ¡hasta la próxima!
Apoya este Proyecto!!!
Si te pareció útil este artículo y el proyecto en general, considera brindarme un café :)
Buy me a coffee