Instale Múltiplas Distribuições Linux Usando a Inicialização em Rede PXE no RHEL/CentOS 8

PXE Server – Preboot eXecution Environment é uma arquitetura cliente-servidor padronizada que instrui um sistema cliente a inicializar, executar ou instalar múltiplos sistemas operacionais Linux usando uma interface de rede com capacidade PXE em sua infra-estrutura de rede.

Requisitos

    • Instalação do CentOS 8 Minimal Server
    • Instalação do RHEL 8 Minimal Server
    • Configurar endereço IP estático no RHEL/CentOS 8

Neste artigo, você aprenderá como instalar e configurar um PXE Network Boot Server no CentOS/RHEL 8 com repositórios de instalação local espelhados fornecidos pelo CentOS 8 e RHEL 8 ISO Images.

Para esta configuração de Boot de Rede PXE, iremos instalar os seguintes pacotes no sistema:

  • DNSMASQ – um encaminhador DNS leve que fornece um serviço DNS e DHCP com suporte para PXE e um servidor TFTP.
  • Syslinux – um gestor de arranque Linux que fornece gestores de arranque para arranque de rede.
  • TFTP Server – um simples Protocolo de Transferência de Ficheiros de passos de bloqueio que cria imagens de arranque disponíveis para serem descarregadas através de uma rede.
  • Servidor VSFTPD – um protocolo seguro de transferência de arquivos que irá hospedar a imagem de DVD espelhado montada localmente – que irá atuar como um repositório oficial de instalação de espelhos RHEL/CentOS 8 de onde o instalador irá retirar seus pacotes necessários.

Passo 1: Instalar e Configurar Servidor DNSMASQ

1. É importante lembrar que uma de suas interfaces de rede deve ser configurada com um endereço IP estático da mesma faixa de IP da rede que fornece serviços PXE.

Após ter configurado um endereço IP estático, atualize seus pacotes de software do sistema e instale o daemon DNSMASQ.

# dnf install dnsmasq
Instale o DNSMASQ em CentOS

2. Uma vez instalado o DNSMASQ, você encontrará seu arquivo de configuração padrão em /etc/dnsmasq.conf diretório, que é auto-explicativo mas mais difícil de configurar, devido às suas explicações altamente comentadas.

Primeiro, certifique-se de fazer uma cópia de segurança deste ficheiro no caso de precisar dele para rever mais tarde e depois, crie um novo ficheiro de configuração usando o seu editor favorito como mostrado.

# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup# nano /etc/dnsmasq.conf

3. Agora, copie e cole as seguintes configurações no ficheiro /etc/dnsmasq.conf e altere os parâmetros de configuração de acordo com as suas definições de rede.

dnsmasq.conf – Configuration File
Configure DNSMASQ em CentOS

As instruções de configuração que você precisa alterar são seguidas:

  • interface – Uma interface de rede do servidor deve escutar e fornecer serviços.
  • bind-interfaces – Descomment para ligar a interface a uma determinada placa de rede.
  • domínio – Substitua-o pelo seu nome de domínio.
  • gama dhcp – Substitua-o pela gama de IP da sua rede.
  • dhcp-boot – Substitua-o pelo seu endereço IP da interface de rede.
  • dhcp-option=3,192.168.1.1 – Substitua-o pelo seu gateway de rede.
  • dhcp-option=6,92.168.1.1 – Substitua-o pelo seu Servidor DNS IP.
  • server=8.8.4.4 – Adicione seus endereços IPs de encaminhadores DNS.
  • dhcp-option=28,10.0.0.255 – Opcionalmente substitua-o pelo endereço IP de broadcast da sua rede.
  • dhcp-option=42,0.0.0.0 -Add your network time servers (0.0.0.0.0 Endereço é para auto-referência).
  • pxe-prompt – Mantenha-o como padrão.
  • pxe=service – Use x86PC para arquiteturas 32-bit/64-bit e adicione um prompt de descrição de menu sob aspas de string.
  • enable-tftp – Habilita o servidor TFTP embutido.
  • tftp-root – Adiciona localização dos arquivos de inicialização de rede /var/lib/tftpboot.

Para outras opções avançadas relativas a ficheiros de configuração, leia o manual dnsmasq.

Step 2: Instalar o SYSLINUX Bootloaders

4. Depois de feita a configuração principal do DNSMASQ, instale o pacote de bootloader Syslinx PXE usando o seguinte comando.

# dnf install syslinux
Instalar Syslinux no CentOS

5. Os bootloaders Syslinx PXE são instalados em /usr/share/syslinux, você pode confirmá-lo executando o comando ls como mostrado.

# ls /usr/share/syslinux
Check Syslinux Boot Loaders

Step 3: Instale o TFTP-Server e copie-o com os bootloaders SYSLINUX

6. Agora, instale o TFTP-Server e copie todos os bootloaders Syslinux de /usr/share/syslinux/ a /var/lib/tftpboot como mostrado.

# dnf install tftp-server# cp -r /usr/share/syslinux/* /var/lib/tftpboot
Instalar o TFTP-Server no CentOS

Passo 4: Arquivo de Configuração do Servidor PXE

7. Por padrão, o servidor PXE lê sua configuração a partir de um conjunto de arquivos específicos encontrados em pxelinux.cfg, que devem ser encontrados no diretório descrito na configuração tftp-root do arquivo de configuração DNSMASQ acima.

First, crie um diretório pxelinux.cfg e crie um arquivo default emitindo os seguintes comandos.

# mkdir /var/lib/tftpboot/pxelinux.cfg# touch /var/lib/tftpboot/pxelinux.cfg/default

8. Agora abra e e edite o PXE default arquivo de configuração com as opções corretas de instalação da distribuição Linux. Lembre-se também que os caminhos definidos neste arquivo devem ser relativos ao diretório /var/lib/tftpboot.

# nano /var/lib/tftpboot/pxelinux.cfg/default

O seguinte é um exemplo de arquivo de configuração que você pode usar, mas certifique-se de alterar as imagens de instalação, protocolos e IPs para refletir seus repositórios de fonte de instalação de rede e localizações de acordo.

PXE Arquivo de Configuração Padrão
PXE Arquivo de Configuração Padrão

Na configuração acima, você pode notar que as imagens de inicialização do CentOS 8 (kernel e initrd) residem em um diretório centos7 relativo a /var/lib/tftpboot (i.e /var/lib/tftpboot/centos7) e os repositórios do instalador podem ser acessados usando o protocolo FTP em 192.168.1.2/pub (endereço IP do servidor PXE).

Também, o menu label 2 descreve os repositórios de espelho oficiais das fontes de instalação do CentOS 8 (a conexão com a Internet é obrigatória no sistema cliente) e menu label 3 descreve que a instalação do cliente deve ser feita através de um VNC remoto (aqui substitua a senha do VNC por uma senha forte).

Importante: Como você vê na configuração acima, nós usamos a imagem CentOS 8 para fins de demonstração, mas você também pode usar as imagens RHEL 8.

Passo 5: Adicionar imagens de inicialização do CentOS 8 ao servidor PXE

9. Para adicionar imagens do CentOS 8 ao Servidor PXE, você precisa baixar o CentOS 8 DVD ISO Image localmente usando o comando wget e montá-lo.

10. Uma vez que você baixou o CentOS 8, você precisa criar um diretório centos7 e copiar kernel inicializável e imagens initrd.

A razão por trás desta abordagem é que mais tarde você pode ter diretórios separados para cada nova distribuição Linux sob /var/lib/tftpboot sem bagunçar toda a estrutura de diretórios.

Passo 6: Criar Fonte de Instalação Local do CentOS 8 Mirror

11. Há uma variedade de protocolos (HTTP, HTTPS, ou NFS) que estão disponíveis para configurar os espelhos-fonte de instalação local do CentOS 8, mas eu escolhi o protocolo FTP porque é fácil de configurar usando o servidor vsftpd.

Let’s install Vsftpd server e copie todo o conteúdo do DVD do CentOS 8 para o diretório FTP /var/ftp/pub como mostrado.

# dnf install vsftpd# cp -r /mnt/* /var/ftp/pub/ # chmod -R 755 /var/ftp/pub

12. Agora que toda a configuração do servidor PXE está completa, você pode iniciar, ativar e verificar o status dos servidores DNSMASQ e VSFTPD.

# systemctl start dnsmasq# systemctl status dnsmasq# systemctl start vsftpd# systemctl status vsftpd# systemctl enable dnsmasq# systemctl enable vsftpd

13. A seguir, você precisa abrir portas no seu firewall para que os sistemas clientes possam chegar e inicializar a partir do servidor PXE.

14. Para verificar a localização da rede de origem da instalação FTP, abra o seu navegador e digite o endereço IP do servidor PXE com o protocolo FTP seguido por /pub localização da rede.

ftp://192.168.1.2/pub
Verify FTP Directory

Passo 7: Configure os clientes para inicializar a partir da rede

15. Agora configure os sistemas clientes para inicializar e instalar o CentOS 8 em seus sistemas configurando o Network Boot como dispositivo de inicialização principal a partir do Menu BIOS.

Após o boot do sistema, você receberá um prompt PXE, onde você precisa pressionar a tecla F8 para entrar na apresentação e então pressionar a tecla Enter para prosseguir para o menu PXE.

>

PXE Boot Server Menu
>
Instalar CentOS 8 do PXE Server

É tudo para configurar um servidor PXE mínimo no CentOS/RHEL 8.

Deixe uma resposta

O seu endereço de email não será publicado.