iPXE se puede utilizar para arrancar el instalador de ESXi desde un servidor HTTP. El siguiente tema analiza los requisitos previos y los pasos para hosts ESXi que admiten el arranque UEFI y los hosts que solo admiten la BIOS heredada.
- En los equipos con BIOS heredado, el procedimiento admite el arranque de varias versiones del instalador de ESXi con el mismo cargador de arranque inicial pxelinux.0 para todos los equipos de destino, pero con archivos de configuración PXELINUX potencialmente diferentes según la dirección MAC de los equipos de destino.
- En los equipos con UEFI, el procedimiento admite el arranque de varias versiones diferentes del instalador de ESXi con el mismo cargador de arranque inicial mboot.efi para todos los equipos de destino, pero con archivos boot.cfg potencialmente diferentes según la dirección MAC de los equipos de destino.
Requisitos previos
Compruebe que el entorno tenga los siguientes componentes:
- Imagen ISO del instalador de ESXi descargada del sitio web de VMware.
- Host de destino con una configuración de hardware que sea compatible con la versión de ESXi. Consulte la Guía de compatibilidad de VMware.
- Un adaptador de red compatible con PXE en el host ESXi de destino.
- Servidor DHCP que puede configurar para el arranque PXE. Consulte Configuraciones de DHCP de muestra.
- Servidor TFTP.
- Directivas de seguridad de red para permitir el tráfico TFTP (Puerto UDP 69).
- Para BIOS heredado, solo se pueden usar redes IPv4. Para el arranque PXE con UEFI, se pueden usar redes IPv4 o IPv6.
- (Opcional) Un script de instalación (archivo de inicio).
- En la mayoría de los casos debe usar una VLAN nativa. Si desea especificar el identificador de la VLAN que se va a utilizar con el arranque PXE, compruebe que su NIC admita la especificación de identificador de la VLAN.
Asegúrese de que el entorno también cumpla los siguientes requisitos previos para el arranque PXE mediante un servidor HTTP:
- Compruebe que los hosts ESXi de destino puedan acceder al servidor HTTP.
- Si el host ESXi ejecuta únicamente el firmware de BIOS heredado, obtenga la versión 3.86 del paquete SYSLINUX. Para obtener más información, consulte Información sobre el arranque de red.
Procedimiento
- Obtenga y configure iPXE.
- Obtenga el código fuente de iPXE.
- En la página de descarga de iPXE, siga las instrucciones de compilación, pero ejecute uno de los siguientes comandos.
- En el caso de los hosts ESXi que solo ejecutan el firmware de BIOS heredado, ejecute make bin/undionly.kpxe.
- Para los hosts ESXi que ejecuten el firmware UEFI, ejecute make bin-x86_64-efi/snponly.efi.
- Copie el archivo undionly.kpxe o snponly.efi al directorio /tftpboot del servidor TFTP.
- Si el host ESXi ejecuta únicamente el firmware de BIOS heredado, obtenga y configure PXELINUX.
- Obtenga la versión 3.86 de SYSLINUX, descomprima el paquete y copie el archivo pxelinux.0 en el directorio /tftpboot de su servidor TFTP.
- Cree un archivo de configuración PXELINUX con el siguiente modelo de código.
ESXi-7.x.x-XXXXXX es el nombre del subdirectorio TFTP donde se encuentran los archivos del instalador de
ESXi.
DEFAULT install
NOHALT 1
LABEL install
KERNEL ESXi-7.x.x-XXXXXX/mboot.c32
APPEND -c ESXi-7.x.x-XXXXXX/boot.cfg
IPAPPEND 2
- Guarde el archivo PXELINUX en el directorio /tftpboot/pxelinux.cfg del servidor TFTP.
El nombre de archivo determina si todos los hosts arrancarán este instalador de forma predeterminada.
Opción |
Descripción |
Mismo instalador |
Use el nombre default para el archivo si desea que todos los hosts arranquen este instalador de ESXi de forma predeterminada. |
Diferentes instaladores |
Asigne un nombre al archivo con la dirección MAC del equipo host de destino (01-dirección_mac_de_host_ESXi_destino), si solo un host específico debe arrancar este archivo. Por ejemplo, 01-23-45-67-89-0a-bc. |
- Si el host ESXi ejecuta el firmware UEFI, copie el archivo efi/boot/bootx64.efi desde la imagen ISO del instalador de ESXi en la carpeta /tftpboot del servidor TFTP y cambie el nombre del archivo a mboot.efi.
Nota: Generalmente, las versiones más recientes de
mboot.efi pueden arrancar versiones anteriores de
ESXi, pero es posible que las versiones anteriores de
mboot.efi no puedan arrancar versiones más recientes de
ESXi. Si desea configurar diversos hosts de manera que arranquen diferentes versiones del instalador de
ESXi, utilice el archivo
mboot.efi de la versión más reciente.
- Configure el servidor DHCP.
- Cree un directorio en el servidor HTTP que tenga el mismo nombre que la versión de ESXi que contendrá. Por ejemplo, /var/www/html/ESXi-7.x.x-XXXXXX.
- Copie el contenido de la imagen del instalador de ESXi en el directorio que acaba de crear.
- Modifique el archivo boot.cfg.
- Agregue la siguiente línea:
prefix=http://XXX.XXX.XXX.XXX/ESXi-7.x.x-XXXXXX
En la línea superior,
http://XXX.XXX.XXX.XXX/ESXi-7.x.x-XXXXXX
es la ubicación de los archivos del instalador en el servidor HTTP.
- Si los nombres de archivo en las líneas
kernel=
y modules=
comienzan con un carácter de barra diagonal (/), elimine ese carácter.
- Si la línea de kernelopt= contiene la cadena cdromBoot, quite únicamente la cadena.
- (opcional) En el caso de una instalación generada por script, en el archivo boot.cfg, agregue la opción
kernelopt
en la línea siguiente al comando del kernel, para especificar la ubicación del script de instalación.
Utilice el siguiente código como modelo, donde
XXX.XXX.XXX.XXX es la dirección IP del servidor en el que reside el script de instalación y
esxi_ksFiles es el directorio que contiene el archivo
ks.cfg.
kernelopt=ks=http://XXX.XXX.XXX.XXX/esxi_ksFiles/ks.cfg
- Si el host ESXi ejecuta el firmware UEFI, especifique si desea que todos los hosts UEFI arranquen el mismo instalador.
Opción |
Descripción |
Mismo instalador |
Copie el archivo boot.cfg en /tftpboot/boot.cfg o vincúlelo a esta ruta. |
Diferentes instaladores |
- Cree un subdirectorio de /tftpboot con la dirección MAC del equipo host de destino (01-dirección_MAC_del_host_ESXi_de_destino) como nombre (por ejemplo, 01-23-45-67-89-0a-bc).
- Coloque una copia (o un vínculo) del archivo boot.cfg del host en ese directorio (por ejemplo, /tftpboot/01-23-45-67-89-0a-bc/boot.cfg).
|