Como Instalar Foreman no CentOS 8 / RHEL 8

Introdução
O Foreman é uma ferramenta de código aberto que vai-nos permitir o fornecimento automâtico e configuração de sistemas Linux. Pode ser integrado com diversas ferramentas de automação como o Ansible, Chef, Salt e Puppet, que estão diponíveis em forma de como plugins e gestionar o ciclo de vida de uma infraestrutura. Neste post vou explicar como instalar o Foreman em um sistema CentOS 8 / RHEL 8.
Arquitetura do Foreman
Um servidor configurado com o Foreman sempre vai conter uma instância central a qual é responsável de forneceer uma interface web, configurações dos nodos, arquivos de configuração iniciais dos hosts, etc. Porém, se o servidor instalado suporta instalações desacompanhadas então as outras operações precisam ser feitas para automatizar o processo por completo. O Smart Proxy gestiona os serviços remotos e é geralmente instalado com todos os componentes do Foreman para gestionar TFTP, DHCP, DNS, Puppet, Puppet CA, Ansible, Salt, e Chef.
Smart-Proxy
O Smart-Proxy está localizado dentro ou perto de uma máquina que realiza uma função e ajuda ao Foreman a orquestar o proceso de configurar um host novo. Colocar o proxy dentro ou perto do serviço atúal ajuda também a reduizr a latência em uma infraestrutura distribuída de grande tamanho.
Características do Foreman
As principais características do Foreman, sáo as seguintes:
- Descubre, aprovisiona e atualiza uma infraestrutura física completa.
- Cria e gestiona instâncias em um ambiente de virtualização quanto em uma nuvém privada como pública.
- Instala sistemas operativos através de, meios locais ou desde templates ou imagens.
- Controla e fornece relat+orios desde o software de configuração.
- Agrupa e gestiona os hosts em série, independientemente da localização.
- Pode-se ver o histórico de mudanças para efeitos de auditoria e troubleshooting.
- Interfaz gráfica de usuario, JSON REST API e CLI para Linux.
- Podem-se extender as funcionalidades se for necessário, através de uma robusta arquitectura de plugins.
Após instalar o Foreman de instalar Foreman, a principal tarefa a executar é a de instalar os plugins que vão formar parte da infraestrutura. Se for usado RHEV como Infraestrutura de virtualização, é necessário especificar os plugins que serão habilitados para aprovisionar e apagar recursos. O mesmo modelo deve ser aplicado para todos o demais softwares de gestão de Infraestrutura como KVM, Xen, CloudStack, OpenStack e outros.
Instalando o Foreman
Configurando o nome do host
É necessário configurar um nome de host para o servidor onde vai ser instalado. Vou utilizar o domínio itsimplenow.com, pelo que deves mudar-lô de acordo a tua Infraestrutura atúal.
|
|
Com o seu editor de textos de confianza, vamos modificar o arquivo /etc/hosts para colocar o endereço IP e o nome FQDN do servidor:
|
|
Vamos comprovar se está a tomar o endereço IP e não deja a de localhost (127.0.0.1):
|
|
|
|
Se o ping da como resultado 127.0.0.1, modifica ou apaga a entrada no arquivo /etc/hosts no casso de estar presente.
O nome nombre de host configurado pode ser confimado com o comando:
|
|
Instalar e Configurar NTP para Sincronizar a Data e a Hora
O Chronyd é a alternativa de sincronização de tempo para sistemas CentOS / RHEL, vamos instalar-la com o seguiente comando:
|
|
Uma vez feita a instalação, vamos configurar a nossa zona horária:
|
|
Iniciamos chronyd e habilitamos para que seja executada ao iniciar o sistema:
|
|
Sincronizamos a data e a hora:
|
|
|
|
E agora vamos comprovar a configuração:
|
|
|
|
Criando os repositórios do Foreman e Puppet
Puppet
|
|
Foreman
|
|
Instalando o Foreman
Uma vez que ambos repositórios sejan instalados, vamos instalar o executable de instalação do Foreman:
|
|
Quando a instalação for feita, vamos configurar os componentes do Foreman. O instalador são do Puppet que instala e configura tudo por nós:
- Servidor Apache HTTP com SSL (usando um certificado Puppet auto-assinado)
- Execução do Foreman com mod_passenger.
- Configura o Smart Proxy para Puppet, TFTP e SSL.
- Execução do Puppet master com mod_passenger
- Configuração do agente Puppet.
- Servidor TFTP (xinetd em sistemas Red Hat)
O instalador do Foreman executa-se em um modo não interativo por padrão, mas a configuração pode ser personalizada fornecendo agumas das seguintes opções:
|
|
Para que o instalador se execute em modo interativo:
|
|
No caso de instalar-lô com o modo não interativo:
|
|
|
|
Vamos ver a credencial de acesso admin (Initial credentials are admin / 7o6gqYujGYZsofj4) e a url (https://foreman.itsimplenow.com)
Configurando o Firewall
Vamos abrir as portas requeridas:
|
|
|
|
Vamos recargar o firewall:
|
|
E pronto, já teremos instalado.
Espero que tinham gostado deste tutorial, até a próxima!