Instale varias distribuciones de Linux mediante el arranque de red PXE en RHEL/CentOS 8

Instale varias distribuciones de Linux mediante el arranque de red PXE en RHEL/CentOS 8

Servidor PXE. el entorno de ejecución de prearranque. es una arquitectura cliente-servidor estandarizada que indica a un sistema cliente que arranque, ejecute o instale varios sistemas operativos Linux utilizando un PXE-interfaz de red capaz en su infraestructura de red.

Requisitos

    • Instalación de CentOS 8 Minimal Server
    • Instalación del servidor mínimo RHEL 8
    • Configurar la dirección IP estática en RHEL/CentOS 8

En este artículo, aprenderá a instalar y configurar un servidor de arranque de red PXE. en CentOS/RHEL 8. con repositorios de instalación local duplicados proporcionados por CentOS 8. y RHEL 8. Imágenes ISO.

Para esta configuración de Arranque de red PXE. instalaremos los siguientes paquetes en el sistema:

  • DNSMASQ. un reenviador de DNS ligero que proporciona un DNS. y DHCP. con soporte para PXE. y un servidor TFTP.
  • Syslinux. un arranque de Linux cargador que proporciona cargadores de arranque para el arranque en red.
  • Servidor TFTP. un simple protocolo de transferencia de archivos bloqueado que crea imágenes de arranque disponibles para descargar a través de una red.
  • Servidor VSFTPD. un protocolo seguro de transferencia de archivos que alojará la imagen de DVD reflejada montada localmente, que actuará como un repositorio oficial de instalación reflejada de RHEL/CentOS 8 desde donde el instalador sacará los paquetes necesarios.

Paso 1: Instale y configure el servidor DNSMASQ

1.. Es importante recordarle que debe configurar una de sus interfaces de red con una dirección IP estática del mismo rango de IP de red que proporciona servicios PXE.

Una vez que haya configurado una dirección IP estática, actualice los paquetes de software de su sistema e instale el DN Demonio SMASQ.

# dnf install dnsmasq  Instalar DNSMASQ en CentOS  Instalar DNSMASQ en CentOS Ins tall DNSMASQ en CentOS freestar.config.enabled_slots.push

2.. Una vez instalado DNSMASQ. encontrará su archivo de configuración predeterminado en el directorio/etc/dnsmasq.conf, que se explica por sí mismo pero es más difícil de configurar, debido a sus explicaciones muy comentadas.

Primero, asegúrese de realizar una copia de seguridad de este archivo en caso de que lo necesite para revisarlo más tarde y luego, cree un nuevo archivo de configuración usando su editor favorito como se muestra.

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

3.. Ahora, copie y pegue las siguientes configuraciones en el archivo/etc/dnsmasq.conf y cambie los parámetros de configuración de acuerdo con la configuración de su red.

dnsmasq.conf-Archivo de configuración interface = enp0s3. lo # bind-interfaces domain = tecmint. # DHCP range-leases dhcp-range = enp0s3 192.168.1.2. # Gateway dhcp-option = 3,192.168.1.1 # DNS dhcp-option = 6,92.168.1.1, 8.8.8.8 server = 8.8.4.4 # Broadcast Address dhcp-option = 28,10.0.0.255 # NTP Server dhcp-option = 42,0.0.0.0 pxe-prompt = “Presione F8 para menu. “, 60 pxe-service = x86PC,” Instalar CentOS 8 desde el servidor de red 192.168.1.2 “, pxelinux. enable-tftp tftp-root =/var/lib/tftpboot  Configurar DNSMASQ en CentOS  Configurar DNSMASQ en CentOS Configurar DNSMASQ en CentOS

Se siguen las instrucciones de configuración que necesita cambiar:

  • interfaz. las interfaces de red del servidor deben escuchar y proporcionar servicios.
  • bind-interfaces. elimine el comentario para vincular la interfaz a una tarjeta de red determinada.
  • dominio. reemplácelo con su nombre de dominio .
  • dhcp-range. cámbielo con el rango de IP de su red.
  • dhcp-boot. reemplácelo con su red dirección IP de la interfaz.
  • dhcp-option = 3,192.168.1.1. Reemplácela con su puerta de enlace de red.
  • dhcp-option = 6,92.168 .1.1. Reemplácelo con la IP de su servidor DNS.
  • server = 8.8.4.4. Agregue las direcciones IP de los reenviadores de DNS.
  • dhcp-option = 28,10.0.0.255. Reemplácelo con su dirección IP de transmisión de red opcionalmente.
  • dhcp-option = 42,0.0.0.0. Agregue sus servidores de tiempo de red (la dirección 0.0.0.0 es para referencia propia).
  • pxe-prompt. manténgalo como predeterminado.
  • pxe = service. use x86PC para arquitecturas de 32 bits/64 bits y agregue un mensaje de descripción del menú debajo de las comillas.
  • enable-tftp. habilita la-en el servidor TFTP.
  • tftp-root. Agregar archivo de inicio de red s location /var/lib/tftpboot.

Para conocer otras opciones avanzadas relacionadas con los archivos de configuración, no dude en leer el manual de dnsmasq.

Paso 2: Instale los cargadores de arranque SYSLINUX

4.. Una vez realizada la configuración principal de DNSMASQ, instale el paquete del cargador de arranque Syslinx PXE. utilizando el siguiente comando.

# dnf install syslinux  Instalar Syslinux en CentOS  Instalar Syslinux en CentOS Instalar Syslinux en CentOS

5.. Los cargadores de arranque Syslinx PXE. se instalan en/usr/share/syslinux, puede confirmarlo ejecutando el comando ls como se muestra.

# ls/usr/share/syslinux Comprobar cargadores de arranque de Syslinux  Comprobar los cargadores de arranque de Syslinux Comprobar Cargadores de arranque Syslinux

Paso 3: Instale el servidor TFTP y cópielo con los cargadores de arranque SYSLINUX

6.. Ahora, instale TFTP-Server. y copie todos los cargadores de arranque de Syslinux desde/usr/share/syslinux/a/var/lib/tftpboot como se muestra.

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

Paso 4: Configurar el archivo de configuración del servidor PXE

7.. Por defecto, el Servidor PXE. lee su configuración de un conjunto de archivos específicos que se encuentran en pxelinux.cfg, que deben encontrarse en el directorio descrito en la configuración tftp-root. del archivo de configuración DNSMASQ anterior.

Primero, cree un directorio pxelinux.cfg y cree un archivo predeterminado emitiendo los siguientes comandos.

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

8.. Ahora abra y edite el archivo de configuración predeterminado de PXE con las opciones de instalación de distribución de Linux correctas. Además, asegúrese de recordar que las rutas establecidas en este archivo deben ser relativas al directorio/var/lib/tftpboot.

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

Lo siguiente es un archivo de configuración de ejemplo que puede usar, pero asegúrese de cambiar las imágenes de instalación, los protocolos y las IP para reflejar los repositorios de origen de instalación de red y las ubicaciones en consecuencia.

Menú predeterminado del archivo de configuración predeterminada de PXE. C32 prompt 0 timeout 300 ONTIMEOUT título del menú local ########## Menú de inicio de PXE ########## etiqueta 1 etiqueta de menú ^ 1) Instalar CentOS 8 x64 con local Repo. kernel centos8. vmlinuz append initrd = centos7. initrd.img method = ftp:// 192.168 .1.2. pub devfs = nomount label 2 menu label ^ 2) Instalar CentOS 8 x64 con http://mirror.centos.org Repo. kernel centos8. vmlinuz append initrd = centos8. initrd.img method = http://mirror.centos.org/centos/8/BaseOS/x86_64/os/ devfs = nomount ip = dhcp label 3 menu label ^ 3) Instalar CentOS 8 x64 con Local Repo usando VNC. kernel centos8. vmlinuz append initrd = centos8. initrd.img method = ftp:// 192.168.1.2. pub devfs = nomount inst.vnc inst.vncpassword = etiqueta de contraseña 4 etiqueta de menú ^ 4) Arranque desde unidad local  Archivo de configuración predeterminada de PXE  Archivo de configuración predeterminada de PXE Configuración predeterminada de PXE uration File

En la configuración anterior, puede observar que las imágenes de arranque de CentOS 8. ( kernel. e initrd. residen en un directorio centos7. relativo a/var/lib/tftpboot (es decir,/var/lib/tftpboot/centos7) y se puede acceder a los repositorios del instalador mediante el protocolo FTP en 192.168.1.2/pub (dirección IP de PXE servidor).

Además, la etiqueta del menú 2 describe los repositorios espejo de las fuentes de instalación oficiales de CentOS 8 (la conexión a Internet es obligatoria en el sistema cliente) y la etiqueta del menú 3 describe que la instalación del cliente debe realizarse a través de un VNC. (aquí reemplace la contraseña de VNC con una contraseña segura).

Importante. como puede ver en la configuración anterior, hemos utilizado la imagen de CentOS 8. con fines de demostración, pero también puede utilizar imágenes de RHEL 8.

Paso 5: Agregar imágenes de arranque de CentOS 8 a PXE Servidor

9. Para agregar imágenes de CentOS 8. al servidor PXE, debe descargar la imagen ISO de DVD de CentOS 8 localmente usando el comando wget y montarla.

# wget http://centos.mirrors.estointernet .in/8.2.2004/isos/x86_64/CentOS-8.2.2004-x86_64-dvd1.iso # mount-o loop CentOS-8.2.2004-x86_64-dvd1.iso/mnt

10.. Una vez que haya descargado CentOS 8. debe crear un directorio centos7 y copiar el kernel de arranque y las imágenes initrd.

# mkdir/var/lib/tftpboot/centos8 # cp/mnt/images/pxeboot/vmlinuz/var/lib/tftpboot/centos8 # cp/mnt/images/pxeboot/initrd.img/var/lib/tftpboot/centos8

La razón detrás de este enfoque es que más adelante puede tener directorios para cada nueva distribución de Linux en/var/lib/tftpboot sin estropear toda la estructura del directorio.

Paso 6: Cree la fuente de instalación de réplica local de CentOS 8

11.. Existe una variedad de protocolos ( HTTP. HTTPS. o NFS. que están disponibles para configurar espejos de origen de instalación local de CentOS 8, pero he elegido el protocolo FTP. porque es fácil de configurar usando vsftpd. servidor.

Instalemos el servidor Vsftpd. y copiemos todo el contenido del DVD de CentOS 8. en el directorio FTP/var/ftp/pub como se muestra.

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

12.. Ahora que toda la configuración del servidor PXE se completa, puede iniciar, habilitar y verificar el estado de los servidores DNSMASQ. y VSFTPD.

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

13.. A continuación, debe abrir puertos en su firewall para que los sistemas cliente accedan y arranquen desde el servidor PXE.