Foreman es una herramienta de aprovisionamiento y administración de configuración gratuita y de código abierto para servidores físicos y virtuales. Foreman realiza las tareas de configuración repetitivas y de otro tipo utilizando herramientas como títeres, chef y Ansible. Para el aprovisionamiento, Foreman utiliza DHCP, DNS, TFTP y el archivo kickstart. Aunque en este artículo vamos a utilizar la herramienta de títeres con Foreman.
Foreman proporciona un tablero desde donde el administrador del sistema puede realizar todas las tareas de configuración y auditoría, también podemos obtener informes como cuántos nodos administra el capataz y qué configuración se ha enviado a los nodos.
En esta publicación, demostraré cómo instalar y configurar la última versión de Foreman 1.24 con títeres en el sistema CentOS 7.
A continuación se muestran los detalles de mi servidor en el que instalaré y configuraré Foreman.
- SO (sistema operativo) =CentOS 7.x
- Dirección IP =192.168.1.5
- Nombre de host =capataz.ejemplo.com
- SeLinux =Habilitado
- Cortafuegos =Habilitado
Tengo mi propio servidor DNS local para el dominio ejemplo.com, en caso de que no tenga el servidor DNS, debe poner entradas en '/etc/hosts ‘archivo de nombre a resolución de ip.
Paso:1 Habilite el repositorio de puppetlabs e instale el instalador de capataz
Abra la terminal y ejecute los siguientes comandos uno tras otro.
[[email protected] ~]# yum -y install https://yum.puppetlabs.com/puppet5/puppet5-release-el-7.noarch.rpm [[email protected] ~]# yum install epel-release -y [[email protected] ~]# yum install https://yum.theforeman.org/releases/1.24/el7/x86_64/foreman-release-1.24.0-4.el7.noarch.rpm [[email protected] ~]# yum -y install foreman-installer
Paso:2 Inicie la instalación usando el instalador de capataz
Para iniciar la instalación de capataz, ejecute el comando "capataz-instalador" , será una instalación no interactiva. En caso de que desee la instalación interactiva, use '-i ' opción en el comando como "capataz-instalador -i"
[[email protected] ~]# foreman-installer
Una vez que se complete la instalación del capataz, obtendremos el siguiente resultado:
Podemos ver que se han creado las credenciales iniciales para el panel de control del capataz y, además, también está instalado el titiritero que se ejecuta en el puerto 8140.
Antes de acceder al tablero, se recomienda abrir los puertos necesarios en el firewall del sistema operativo. Ejecute los siguientes comandos uno tras otro.
[[email protected] ~]# firewall-cmd --permanent --add-port=53/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=67-69/udp success [[email protected] ~]# firewall-cmd --permanent --add-port=80/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=443/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=3000/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=3306/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=5910-5930/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=5432/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=8140/tcp success [[email protected] ~]# firewall-cmd --permanent --add-port=8443/tcp success [[email protected] ~]# firewall-cmd --reload success [[email protected] ~]#
Paso:3 Acceder al panel de control del capataz
Para acceder al panel de capataz, escriba "https://
Se puede acceder al panel In My Case desde la URL: https://foreman.example.com
Use las credenciales iniciales que se crean durante la instalación del capataz
Por defecto, el propio servidor de capataz está registrado en el panel de control de capataz. Para verificar la información del host,
haga clic en Opciones de hosts —> luego en todos los hosts.
Instalemos el módulo ntp en el servidor capataz e importémoslo desde el tablero. NTP es muy necesario para que la marioneta funcione sin problemas. Use el siguiente comando para descargar el módulo ntp.
[[email protected] ~]# puppet module install puppetlabs-ntp
Ahora importe el módulo NTP desde el tablero. Haga clic en Configurar —-> Clases
Haga clic en la opción Importar, importará el módulo NTP en el panel de capataz, el ejemplo se muestra a continuación:
Seleccione el Módulo y haga clic en Actualizar.
Haga clic en el nombre de la clase 'ntp' y seleccione 'Parámetro de clase inteligente'
Seleccione la opción de anulación en caso de que desee especificar sus propios servidores NTP. Cambie el valor del tipo de clave de "Cadena" a "Array" y especifique el nombre del servidor NTP en el cuadro de valor predeterminado y luego haga clic en Enviar. A continuación se muestra un ejemplo.
Ahora es el momento de agregar la clase ntp al host, para eso, vaya a las opciones de Hosts y seleccione el host (foreman.example.com), haga clic en Editar. Ir a las 'Clases de marionetas ' Tabula y haz clic en '+ 'opción para agregar la clase ntp en el host y luego hacer clic en enviar
Ahora ejecute el siguiente comando de títeres desde el servidor de capataz para configurar el servicio NTP automáticamente.
[[email protected] ~]# puppet agent --test
Ahora verifique los informes del panel para el host.
Vaya a Hosts—> Haga clic en hosts{foreman.example.com}—> Haga clic en Reports.
Como sabemos, marioneta utiliza certificados SSL para configurar la comunicación segura entre el servidor de marionetas y sus nodos. Una vez que Puppet Server firma los certificados de su nodo, solo puede ocurrir la comunicación.
Vamos a crear una entrada de firma automática para los nodos de marionetas que se encuentran en el dominio "example.com"
En el Panel de control de Forman, vaya a Infraestructura —> Seleccione Proxies inteligentes —> Seleccione Autofirmar en la pestaña Acción
Haga clic en Nuevo para crear una nueva entrada de 'autofirma'. Especifique el nombre de dominio y luego haga clic en Guardar.
En este punto, ahora podemos decir que nuestro servidor capataz está listo para administrar servidores.
Paso:4 Agregar nuevos hosts al tablero de Foreman.
Para agregar nuevos hosts o servidores en el tablero del capataz, debemos instalar el agente de títeres en los hosts y ejecutar el siguiente comando de títeres desde el host.
Supongamos que queremos agregar el servidor Ubuntu { ubuntu-server.example.com – 192.168.1.14 }
[email protected]:~$ sudo apt install puppet [email protected]:~$ puppet agent -td --server=foreman.example.com
Ahora verifique el host en el tablero.
Ahora agregue las clases de marionetas a este host de la misma manera que lo hicimos para el host "capataz.ejemplo.com" en los pasos anteriores.
Nota:comando para eliminar el módulo de marionetas.
[[email protected] ~]# puppet module uninstall --environment=production puppetlabs-ntp Notice: Preparing to uninstall 'puppetlabs-ntp' ... Removed 'puppetlabs-ntp' (v4.2.0) from /etc/puppet/environments/production/modules [[email protected] ~]#
Eso es concluir el artículo. Comparta sus comentarios y sugerencias