Es posible utilizar un servidor web para arrancar el instalador de ESXi con PXE. Puesto que la mayoría de los entornos contienen tanto hosts ESXi compatibles con el arranque UEFI como hosts compatibles solo con el BIOS heredado, en este tema se analizan los requisitos previos y los pasos para ambos tipos de hosts.

Por qué y cuándo se efectúa esta tarea

  • 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 o gpxelinux.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

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.

  • Un servidor DHCP configurado 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 con los siguientes requisitos previos para el arranque PXE mediante un servidor web:

Procedimiento

  1. Configure el servidor DHCP para el arranque HTTP.
  2. (Solo UEFI) Obtenga y configure iPXE:
    1. Obtenga el código fuente de iPXE, tal como se describe en http://ipxe.org/download.
    2. Siga las instrucciones de esa página, pero utilice el siguiente comando make:

      make bin-x86_64-efi/snponly.efi

    3. Copie el archivo resultante snponly.efi en el directorio /tftpboot del servidor TFTP.
  3. (Solo UEFI) Copie el archivo efi/boot/bootx64.efi de la imagen ISO del instalador de ESXi en /tftpboot/mboot.efi en el servidor TFTP.
    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.

  4. (Solo BIOS heredado) Obtenga y configure PXELINUX:
    1. Obtenga la versión 3.86 de SYSLINUX, descomprima el paquete y copie el archivo gpxelinux.0 en el directorio de nivel superior /tftpboot de su servidor TFTP.
    2. Cree un archivo de configuración PXELINUX con el siguiente modelo de código.

      ESXi-6.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-6.x.x-XXXXXX/mboot.c32 					
        APPEND -c ESXi-6.x.x-XXXXXX/boot.cfg
        IPAPPEND 2
      
    3. Guarde el archivo PXELINUX en el directorio /tftpboot/pxelinux.cfg de su servidor TFTP con un nombre de archivo que determine 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

      Use la dirección MAC del equipo host de destino (01-mac_address_of_target_ESXi_host) como nombre para el archivo si desea que solo un host específico arranque con este archivo (por ejemplo, 01-23-45-67-89-0a-bc).

  5. Cree un directorio en su servidor HTTP con el nombre de la versión de ESXi que almacenará (por ejemplo, /var/www/html/ESXi-6.x.x-XXXXXX).
  6. Copie el contenido de la imagen del instalador de ESXi en el directorio que acaba de crear.
  7. Modifique el archivo boot.cfg.
    1. Agregue la siguiente línea:
      prefix=http://XXX.XXX.XXX.XXX/ESXi-6.x.x-XXXXXX

      En la línea superior, http://XXX.XXX.XXX.XXX/ESXi-6.x.x-XXXXXX es la ubicación de los archivos del instalador en el servidor HTTP.

    2. Si los nombres de archivo en las líneas kernel= y modules= comienzan con un carácter de barra diagonal (/), elimine ese carácter.
  8. (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
  9. (Solo 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

    1. Cree un subdirectorio de /tftpboot con la dirección MAC del equipo host de destino (01-mac_address_of_target_ESXi_host) como nombre (por ejemplo, 01-23-45-67-89-0a-bc).

    2. 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).