GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y configurar Foreman 1.16 en el servidor Debian 9 / Ubuntu 16.04

Foreman es una herramienta de configuración y aprovisionamiento gratuita y de código abierto que se puede instalar en los sistemas Red Hat, CentOS, Scientific Linux, Debian y Ubuntu. Con la herramienta Forman, podemos aprovisionar fácilmente máquinas virtuales y servidores bare metal y luego configurar los sistemas instalados utilizando las herramientas de configuración como Puppet y Ansible. Cada vez que instalamos el servidor Foreman, automáticamente instala Puppet master en él.

Con la ayuda de Foreman GUI, los administradores del sistema pueden aplicar módulos de títeres específicos a los servidores registrados para realizar las tareas repetitivas y también pueden automatizar fácilmente las tareas de operaciones diarias.

En este tutorial, recorreremos los pasos de instalación de Foreman 1.16 en Debian 9 y Ubuntu 16.04 Server.

Los siguientes son los requisitos mínimos del sistema para el servidor Foreman:

  • 4 GB de RAM (cuando Puppet Master está instalado en el mismo servidor capataz)
  • CPU de 2 núcleos
  • Recién instalado Debian 9/Ubuntu 16.04

Debajo están los detalles de configuración de mi laboratorio para Foreman Server

  • La dirección IP del servidor Foreman es "192.168.1.20"
  • Nombre de host del servidor Foreman "foreman.linuxtechi.com"
  • Puppet Master 5 se instalará en el servidor Foreman
  • SO:servidor Debian 9/Ubuntu 16.04 LTS

Iniciemos sesión en el sistema Debian 9/Ubuntu 16.04 LTS

Paso:1) Configurar el nombre de host y actualizar sus entradas en el archivo de hosts

Utilice el comando systemctl para configurar el nombre de host de su sistema.

$ sudo hostnamectl set-hostname "foreman.linuxtechi.com"
$ exec bash

Actualice las entradas de nombre de host de su sistema en el archivo /etc/hosts.

192.168.1.20  foreman.linuxtechi.com foreman

Paso:2) Habilite los repositorios requeridos para Foreman &Puppet

Para el sistema Debian 9:

Habilite los repositorios de Puppet 5 usando los siguientes comandos

[email protected]:~$ sudo apt-get -y install ca-certificates
[email protected]:~$ wget https://apt.puppetlabs.com/puppet5-release-stretch.deb
[email protected]:~$ sudo dpkg -i puppet5-release-stretch.deb

Habilite los repositorios de Foreman 1.16 usando los siguientes comandos

[email protected]:~$ echo "deb http://deb.theforeman.org/ stretch 1.16" | sudo tee /etc/apt/sources.list.d/foreman.list 
[email protected]:~$ echo "deb http://deb.theforeman.org/ plugins 1.16" | sudo tee -a /etc/apt/sources.list.d/foreman.list
li[email protected]:~$ wget -q https://deb.theforeman.org/pubkey.gpg -O- | sudo apt-key add -
OK
[email protected]:~$

Para sistema Ubuntu 16.04 LTS

Habilitar repositorios de Puppet 5

[email protected]:~$ sudo  apt-get -y install ca-certificates
[email protected]:~$ wget https://apt.puppetlabs.com/puppet5-release-xenial.deb
[email protected]:~$ sudo  dpkg -i puppet5-release-xenial.deb

Habilitar repositorios de Foreman 1.16

[email protected]:~$ echo "deb http://deb.theforeman.org/ xenial 1.16" | sudo tee /etc/apt/sources.list.d/foreman.list
[email protected]:~$ echo "deb http://deb.theforeman.org/ plugins 1.16" | sudo tee -a /etc/apt/sources.list.d/foreman.list
[email protected]:~$ wget -q https://deb.theforeman.org/pubkey.gpg -O- | sudo apt-key add -
OK
[email protected]:~$

Paso:3) Descarga 'capataz-instalador' usando el comando apt-get

Ejecute el siguiente comando para instalar el instalador de capataz,

[email protected]:~$ sudo apt-get update && sudo apt-get -y install foreman-installer

Foreman-installer es la herramienta de instalación de Foreman.

Paso:4) Instale Foreman usando 'capataz-instalador'

Ejecute el comando del instalador del capataz para instalar el servidor del capataz, por defecto el instalador del capataz instalará y configurará los siguientes componentes:

  • Interfaz de usuario web de Foreman (Apache HTTP con SSL)
  • Proxy inteligente
  • Titiritero
  • Agente títere
  • Servidor TFTP
[email protected]:~$ sudo foreman-installer --foreman-admin-username admin --foreman-admin-password "[email protected]#"

Una vez que la instalación se complete con éxito, obtendremos un resultado como el siguiente:

En caso de que el firewall del sistema operativo esté habilitado y se esté ejecutando en su sistema, abra los siguientes puertos para el servidor capataz

[email protected]:~$ sudo ufw allow 53/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 67:69/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 80/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 443/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 3000/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 3306/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 5910:5930/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 5432/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 8140/tcp
Rule added
Rule added (v6)
[email protected]:~$ sudo ufw allow 8443/tcp
Rule added
Rule added (v6)
[email protected]:~$

Nota: En mi caso, al instalar Foreman, recibí este error “Error al ejecutar SQL; psql devolvió pid 32532 salida 1:'ERROR:nombre de configuración regional no válido:"en_US.utf8", resolví este error ejecutando el siguiente comando:

[email protected]:~$ sudo dpkg-reconfigure locales

Seleccione "en_US.UTF-8 UTF-8 ” y luego seleccione Aceptar y reinicie la máquina y luego vuelva a ejecutar el comando del instalador del capataz.

Paso:5) Acceder a la interfaz de usuario web de Foreman

Podemos acceder a la interfaz de usuario web de Foreman usando la siguiente URL:

https://{IP_del_servidor_capataz}

o

https://{Hostname_Foreman_Server}

Use el nombre de usuario como "admin" y la contraseña que especificamos en el comando capataz-instalador,

Ir a Anfitriones Pestaña –> Haga clic en “Todos los hosts

A partir de ahora, solo un host está registrado, es decir, nuestro servidor capataz. Cada vez que registremos nuevos servidores para el capataz, esos servidores se enumerarán aquí. Aparte de esto, el entorno de producción también se crea de forma predeterminada y todos los servidores se registrarán en el entorno predeterminado. Puede crear sus entornos que se adapten a su organización desde la interfaz de usuario de Foreman.

Descargar e importar el módulo de marionetas NTP en Foreman Server

Use el siguiente comando para descargar el módulo de marionetas ntp desde "forge.puppet.com"

[email protected]:~$ sudo su -
[email protected]:~# puppet module install puppetlabs-ntp -i /etc/puppetlabs/code/modules/

Obtendremos un resultado similar al siguiente:

Importe el módulo NTP instalado en el tablero del capataz

Desde el tablero, ve a Configurar Pestaña –> Seleccione Marioneta –> Clases , Haga clic en Importar

Seleccione los entornos a los que desea adjuntar este módulo, en mi caso lo voy a adjuntar a Producción y desarrollo.

Haga clic en Actualizar,

Obtendremos la siguiente ventana algo como a continuación:

Registremos un host CentOS 7 en el panel de control del capataz y luego le adjuntaremos el módulo ntp,

Registro de un servidor CentOS 7

Inicie sesión en el sistema y habilite el repositorio yum de puppetlabs y luego instale el paquete de marionetas

[[email protected] ~]# yum install https://yum.puppetlabs.com/puppet5/puppet5-release-el-7.noarch.rpm -y
[[email protected] ~]# yum install puppet -y

Nota: En caso de que no tenga el servidor DNS, agregue entradas en el archivo de hosts. En mi caso, he agregado las siguientes líneas en el archivo /etc/hosts

192.168.1.20  foreman.linuxtechi.com
192.168.1.2    mx2.linuxtechi.com

Ejecute el siguiente comando desde su servidor centos 7 para registrar esta máquina en el panel de control de Puppet Master &Foreman.

[[email protected] ~]# /opt/puppetlabs/bin/puppet agent -td --server=foreman.linuxtechi.com

Obtendrá la salida del comando algo como a continuación:

……………………………………………………
Debug: Finishing transaction 22347940
Info: Creating a new SSL key for mx2.linuxtechi.com
Info: Caching certificate for ca
Info: csr_attributes file loading from /etc/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for mx2.linuxtechi.com
Info: Certificate Request fingerprint (SHA256): A4:D3:15:0D:8D:10:48:93:96:1D:E4:61:5F:F7:F6:B4:CB:C2:01:F4:4C:02:99:37:03:2C:9E:24:0E:30:CF:CC
Debug: Using cached certificate for ca
Info: Caching certificate for ca
Debug: Using cached certificate_request for mx2.linuxtechi.com
Debug: Using cached certificate for ca
Debug: Using cached certificate for ca
Exiting; no certificate found and waitforcert is disabled
[[email protected] ~]#

Significa que tenemos que firmar manualmente el certificado del servidor CentOS 7 de la máquina capataz. Para firmar el certificado desde el tablero del capataz, consulte los pasos a continuación

Desde la Infraestructura Pestaña -> Seleccione Proxies inteligentes y luego haga clic en Editar opción y seleccione "Certificados

Ahora firme el certificado de la máquina cuyo estado está pendiente, el ejemplo se muestra a continuación:

Haga clic en firmar

Consulte los pasos a continuación para configurar la firma automática

Desde la Infraestructura Pestaña -> Seleccione Proxies inteligentes y luego haga clic en Editar opción y seleccione "Autofirmar

Cree una entrada de firma automática y especifique el nombre de dominio para el que queremos que el capataz firme automáticamente los certificados

Haga clic en Guardar . La próxima vez que cualquier servidor del dominio "linuxtechi.com" se registre en el servidor de Foreman, se firmará automáticamente,

Ahora, de nuevo, vaya al servidor CentOS 7 y vuelva a ejecutar el comando del agente de marionetas, esta vez el comando debería ejecutarse con éxito,

[[email protected] ~]# /opt/puppetlabs/bin/puppet agent -td --server=foreman.linuxtechi.com

Verificar el host desde Dashboard, Desde Hosts Pestaña –> Seleccione “Todos los hosts “, allí tendremos nuestro host recién registrado (Servidor CentOS 7)

Adjuntemos el módulo NTP al servidor recién registrado (mx2.linuxtechi.com), seleccione el host y haga clic en Editar , luego vaya a "Clases de marionetas Pestaña ”

Haga clic en '+' inicie sesión frente a ntp para agregar el módulo y luego haga clic en 'Enviar

Vaya al servidor CentOS7 y vuelva a ejecutar el comando del agente de marionetas, esta vez configurará ntp en su servidor CentOS 7.

[[email protected] puppet]# /opt/puppetlabs/bin/puppet agent -td --server=foreman.linuxtechi.com

La salida del comando anterior será algo como lo siguiente:

Esto confirma que el servidor CentOS 7 se ha registrado y configurado correctamente a través del servidor capataz. También concluye el artículo, por favor comparta sus comentarios en la sección de comentarios a continuación.

Lea más sobre “Aprovisionamiento de máquina virtual y bare metal a través del servidor Foreman


Ubuntu
  1. Cómo instalar y configurar un servidor NFS en Ubuntu 20.04

  2. Cómo instalar y configurar VNC en Ubuntu 20.04

  3. Cómo instalar y configurar el servidor Algo VPN en Ubuntu 20.04

  4. Cómo instalar y configurar el servidor DHCP en Ubuntu 20.04

  5. Cómo instalar y configurar el servidor Redis en Ubuntu

Cómo instalar y configurar KVM en Debian 10 (Buster)

Cómo instalar y configurar DHCP en Ubuntu 18.04

Cómo instalar y configurar el servidor LAMP en Ubuntu

Cómo instalar y configurar el servidor OpenLDAP en Ubuntu 16.04

Cómo instalar y configurar VNC en Ubuntu Server 20.04

Instalar y configurar Virtualmin en el servidor Ubuntu 20.04 / Debian 10