The Foreman – Como instalar e configurar o Foreman – Parte 1/3

The Foreman – Lifecycle, Provisioning, Configuration, Orchestration and Monitoring.

Parte 1 de 3.

The Foreman é uma ferramenta para gerenciamento do ciclo de vida de servidores físicos e virtuais, ele te permite instalar VMs em Clouds como AmazonWS, Google Compute Engine, OpenStack, VMWare e também a instalação de servidores físicos e VMs via PXE (Bootstrap), tudo integrado com a gestão de configuração como Puppet, Ansible, Salt e Chef.

Também tem suporte ao container Docker.

Eu acho um problema quando uma empresa tem vários tipos de Cloud, por exemplo VMware e AmazonWS, sem uma ferramenta de gerência como The Foreman, existirão duas interfaces para gestão, gerencia descentralizada de VMs, é difícil ter uma visão global do ambiente, e o The Foreman centraliza tudo isto, todos os servidores em uma única ferramenta e isto é agilidade.

Com ferramentas como esta, você tem um forte aliado para colocar em prática a cultura DevOps, pois você vai integrar os times em uma única ferramenta, todo mundo vai falar a mesma língua, o time de desenvolvimento vai poder fazer seus deploys e integrações tranquilamente de forma autônoma, o time de Administração estará vendo e controlando tudo que acontece no ambiente, todo mundo vai poder ver e administrar o ambiente, e os ganhos todos sabem, times mais próximos, problemas resolvidos mais rápidos e entregas com mais rapidez e qualidade.

E sem falar que com times mais próximos aumenta a grana para poder rachar o churrasco no fim de semana.

Dê uma lida na introdução sobre o The Foreman:
http://theforeman.org/introduction.html

Entre no site do projeto:
http://theforeman.org/

Github
https://github.com/theforeman/foreman

Parte 1 – Instalação e configuração do The Foreman

1. Pré requisitos
Sistema Operacional Centos 7 X64 – instalação mínima.

Para facilitar desative o Selinux e Firewall mas considere utilizar ambas opções no seu ambiente.

#sed -i "s/enforcing/disabled/g" /etc/selinux/config
#setenforce 0

#systemctl stop firewalld
#systemctl disable firewalld

2. Hostname fqdn
Configure o fqdn do servidor conforme exemplo:

#vi /etc/hosts
10.0.0.170	theforeman01.devopslab.com.br	 theforeman01

#hostname -f
theforeman01.devopslab.com.br

3. Instalação dos repositórios

#rpm -hiv http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
#rpm -hiv http://yum.theforeman.org/releases/1.10/el7/x86_64/foreman-release.rpm
#yum install epel-release

4.Instalação do foreman-installer

#yum install foreman-installer

5.Execução do instalador
Execute o “foreman-installer”. O instalador por padrão vai executar de forma não interativa, mas você pode adicionar o “–i” para uma instalação interativa.

#foreman-installer

Após terminar a execução do foreman-installer você terá um resultado como este:

[root@theforeman01 ~]# foreman-installer 
Installing  Done  [100%] [............................]
  Success!
  * Foreman is running at https://theforeman01.devopslab.com.br
      Initial credentials are admin / LfcuPwtw7jCLAn8wK
  * Foreman Proxy is running at https://theforeman01.devopslab.com.br:8443
  * Puppetmaster is running at port 8140
  The full log is at /var/log/foreman-installer/foreman-installer.log

Agora você já pode logar na interface do The Foreman com as credenciais fornecidas. Entre no The Foreman e altere sua senha.
foremanlogin1

6. Puppet
Execute o puppet agent para a finalização da instalação. O puppet vai aplicar algumas configurações.

#puppet agent -t

Após o término da execução do puppet faça o login no The Foreman e vá para a aba “Hosts”, vai aparecer o próprio servidor do The Foreman, com o status, versão do S.O e etc.
theforemanhome1

theforemanhost1-b
6.1. Gerenciamento do Puppet – instalação do módulo Ntp
É muito importante manter o horário do servidor Foreman e clientes sincronizados portanto instale um módulo ntp no puppet e configure com os servidores ntp da sua localidade.

#puppet module install -i /etc/puppet/environments/production/modules saz/ntp

Após a instalação do módulo ntp faça o login no The Foreman e vá para: Home-The-Foreman –> Configure –> Classes e importe a classe ntp.
theforeman-ntp1-b

Configure o classe Ntp com os servidores de sua preferência.
Home-The-Foreman –> Configure –> Classes –> Ntp –> Smart Class Parameter –> Server List

Para facilitar segue a lista de servidores Ntp Brasileiros: http://www.pool.ntp.org/zone/br
Após a alteração clique no final em “Submit”. Faça o mesmo para a classe “ntp::ntpdate”.

6.2. Inclusão da classe Ntp com o Servidor The Foreman
Após configurado as classes ntp e ntp::update inclua as mesmas ao host The Foreman.

Vá para Home-The-Foreman –> Hosts –> selecione o servidor do Foreman –> clique em Edit

Em Edit –> Puppet Classes –> +NTP (adicione a classe NTP ao host the Foreman) –> Submit
theforeman-ntp3
Por fim rode do comando “puppet agent –t” no Servidor do Foreman para concluir a instalação e configuração do Ntp.

Lembre-se, o processo de instalar um módulo no Puppet, modificar os parâmetros da classe e associar aos hosts é algo que vai acontecer sempre.

Parte 1 – Instalação e configuração finalizada.

Parte 2 – The Foreman – Instalação de hosts via PXE – Bootstrap
Parte 3 – The Foreman – instalação de hosts em Cloud – Amazon Web Services

Abraços

Leonardo Macedo Cerqueira

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *