The Foreman – Instalação de hosts via PXE – Bootstrap – Bare Metal – VMs – parte 2/3

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

Instalação de hosts via PXE – BootStrap. O intuito é provisionar um novo host já integrado com o Puppet.
Você pode instalar tanto VMs como hosts físicos “Bare Metal”.
Assumo que você já tenha a aplicação The Foreman instalada e configurada conforme a parte 1 http://devopslab.com.br/como-instalar-e-configurar-o-the-foreman/

1. Criação do Sistema Operacional

Vamos instalar o CentOS 7.
Em Home-The-Foreman -> Hosts -> Operating Systems -> New Operating System
Operating System preencha os dados do Sistema Operacional.
Name: CentOS7
Major version: 7
Description: CentOS 7
Family: RedHat
Architectures: X86_64
theforeman-OSCentos1

Partition Table
Você vai definir particionamento do Sistema Operacional.
Selecione: Kickstart Default
theforeman-ptables1

Installation Media
Selecione: CentOS Mirror
theforeman-centosmirror1
Você pode ter um mirror local via NFS ou Http, neste caso, por facilidade optamos por instalar utilizando o mirror CentOS público.
Se você optar por criar seu próprio repositório de imagens (recomendado) pode seguir este tutorial:
http://devopslab.com.br/como-criar-e-configurar-um-repositorio-local-centos/

2. Templates de instalação

Home-The-Foreman -> Hosts -> Provisioning Templates
Clique nos templates abaixo e associe ao Sistema Operacional CentOS7.
Template—————————–Tipo
Kickstart default PXELinux———–PXELinux
Kickstart RHEL default—————provision
Kickstart default finish————-Finish

theforeman-templates1
Clique em Submit.

3. Criação do Sistema Operacional – parte 2 final

Vá para Home-The-Foreman -> Hosts -> Operating Systems -> Centos 7.0 -> Templates
Associe os templates ao Sistema Operacional.
theforeman-template2
Clique em Submit.

4. Configuração do Servidor de Provisionamento – SmartProxys DHCP, DNS e FTP

Antes de fazer a instalação via rede, precisamos preparar o servidor do Foreman ativando os serviços de DHCP, DNS e TFTP.
O TFTP já foi instalado quando executamos o “Foreman-installer”.

Set up Provisioning
Vá para Home-The-Foreman -> Infrastructure -> Provisioning setup -> Set up Provisioning
Em “Pre-requisites” selecione sua rede.
theforeman-prov1

Network Config
Em “Network Config” preencha os dados da sua rede conforme exemplo do print e clique em Submit.
theforeman-prov2

Você terá um resultado como este:

foreman-installer \
  --enable-foreman-proxy \
  --foreman-proxy-tftp=true \
  --foreman-proxy-tftp-servername=10.0.0.170 \
  --foreman-proxy-dhcp=true \
  --foreman-proxy-dhcp-interface=enp0s3 \
  --foreman-proxy-dhcp-gateway=10.0.0.110 \
  --foreman-proxy-dhcp-range=" " \
  --foreman-proxy-dhcp-nameservers="10.0.0.170" \
  --foreman-proxy-dns=true \
  --foreman-proxy-dns-interface=enp0s3 \
  --foreman-proxy-dns-zone=devopslab.com.br \
  --foreman-proxy-dns-reverse=0.0.10.in-addr.arpa \
  --foreman-proxy-dns-forwarders=8.8.8.8 \
  --foreman-proxy-dns-forwarders=208.67.222.222 \
  --foreman-proxy-dns-forwarders=200.221.11.100 \
  --foreman-proxy-foreman-base-url=https://theforeman01.devopslab.com.br \
  --foreman-proxy-oauth-consumer-key=PYUixcJi5EQwFKqR9nHDTLe7AVjV \
  --foreman-proxy-oauth-consumer-secret=AobRoR8RqHi6kPTj7qwQKV9uQxwv

theforeman-priv4

Execute este trecho de código no servidor do Foreman

[root@theforeman01 ~]# foreman-installer \
>   --enable-foreman-proxy \
>   --foreman-proxy-tftp=true \
>   --foreman-proxy-tftp-servername=10.0.0.170 \
>   --foreman-proxy-dhcp=true \
>   --foreman-proxy-dhcp-interface=enp0s3 \
>   --foreman-proxy-dhcp-gateway=10.0.0.110 \
>   --foreman-proxy-dhcp-range=" " \
>   --foreman-proxy-dhcp-nameservers="10.0.0.170" \
>   --foreman-proxy-dns=true \
>   --foreman-proxy-dns-interface=enp0s3 \
>   --foreman-proxy-dns-zone=devopslab.com.br \
>   --foreman-proxy-dns-reverse=0.0.10.in-addr.arpa \
>   --foreman-proxy-dns-forwarders=8.8.8.8 \
>   --foreman-proxy-dns-forwarders=208.67.222.222 \
>   --foreman-proxy-dns-forwarders=200.221.11.100 \
>   --foreman-proxy-foreman-base-url=https://theforeman01.devopslab.com.br \
>   --foreman-proxy-oauth-consumer-key= PYUixcJi5EQwFKqR9nHDTLe7AVjV \
>   --foreman-proxy-oauth-consumer-secret= AobRoR8RqHi6kPTj7qwQKV9uQxwv
Installing  Done  [100%] [............................]
  Success!
  * Foreman is running at https://theforeman01.devopslab.com.br
      Initial credentials are admin / LcuFswt8wjGLAn7wK
  * 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
[root@theforeman01 ~]#

Installation Media
Na próxima aba “Installation Media” selecione CentOS Mirror.
theforeman-priv3
Agora basta finalizar a configuração.

5. Instalação de um servidor via PXE

Vamos para a parte de instalação propriamente dita, então clique em New Host e siga os passos abaixo.

Nós vamos utilizar o recurso Bare Metal. Bare Metal é um Compute Resource.
Compute Resourses são serviços que podem gerar um host pode exemplo AmazonWS, Docker, OpenStack, Google Compute Engine, Rackspace e etc.

Home-The-Foreman -> Hosts -> New Host

Host
Preencha os campos:
Name: nome-do-servidor
Host Group:
Deploy on: Bare Metal
Environment: production
Puppet CA: theforeman01.devopslab.com.br
Puppet Master: theforeman01.devopslab.com.br
theforeman-host1

Puppet classes
Selecione as classes do Puppet.
theforeman-ntpclass1

Interfaces
Preencha os dados de rede, você precisa ter o MAC Address do servidor alvo da instalação.
O campo “identifier” é referente a placa de rede (eth0, enp0s3 …).
theforeman-interfaces1

Operationg System
Preencha os campos:
Architecture
Operating system
Build mode: Enable this host for provisioning
Media
Partition table
Root password
theforeman-so2

Adittional information
Escolha do tipo de Hardware.
theforeman-addinfo1

Após configurado Host, Puppet Classes, Interfaces, Operating System, Parameters, e Additional Information clique em Submit.
theforeman-end1

Agora ligue a VM ou host físico, selecione o boot via rede (PXE) que a instalação vai começar.
theforeman-redeboot1
theforeman-redeboot2

Pronto, host provisionado e integrado ao Puppet.

Deixe uma resposta

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