Você pode usar o iPXE para inicializar o instalador do ESXi a partir de um servidor HTTP. O tópico a seguir discute os pré-requisitos e as etapas para ESXi hosts que oferecem suporte à inicialização UEFI e hosts que oferecem suporte apenas a BIOS herdado.

  • Para máquinas BIOS legadas, o procedimento oferece suporte à inicialização de várias versões diferentes do instalador ESXi usando o mesmo carregador de inicialização inicial pxelinux.0 para todas as máquinas de destino, mas arquivos de configuração PXELINUX potencialmente diferentes, dependendo do Endereço MAC.
  • Para máquinas UEFI, o procedimento oferece suporte à inicialização de várias versões diferentes do instalador ESXi usando o mesmo carregador de inicialização inicial mboot.efi para todas as máquinas de destino, mas possivelmente um boot.cfg diferente dependendo do endereço MAC da máquina de destino.

Pré-requisitos

Verifique se o seu ambiente tem os seguintes componentes:

  • Imagem ISO do instalador do ESXi, baixada do site do VMware Web.
  • Host de destino com uma configuração de hardware compatível com sua versão do ESXi. Consulte o VMwareGuia de Compatibilidade.
  • Adaptador de rede com suporte a PXE no host ESXi de destino.
  • Servidor DHCP que você pode configurar para inicialização PXE. Consulte Exemplo de configurações DHCP.
  • Servidor TFTP.
  • Políticas de segurança de rede para permitir o tráfego TFTP (porta UDP 69).
  • Para BIOS herdado, você pode usar somente a rede IPv4. Para a inicialização UEFI PXE, você pode usar a rede IPv4 ou IPv6.
  • (Opcional) Script de instalação (arquivo de kickstart).
  • Use uma VLAN nativa na maioria dos casos. Se você quiser especificar a ID de VLAN a ser usada com a inicialização PXE, verifique se sua NIC oferece suporte à especificação de ID de VLAN.
Verifique se o seu ambiente também atende aos seguintes pré-requisitos necessários para a inicialização PXE usando um servidor HTTP:

Procedimento

  1. Obtenha e configure o iPXE.
    1. Obtenha o código-fonte do iPXE.
    2. Na página de download do iPXE, siga as instruções de compilação, mas execute um dos seguintes comandos.
      • Para hosts ESXi que executam somente firmware de BIOS herdado, execute make bin/undionly.kpxe.
      • Para hosts ESXi que executam firmware UEFI, execute make bin-x86_64-efi/snponly.efi.
    3. Copie o arquivo undionly.kpxe ou snponly.efi para o diretório /tftpboot em seu servidor TFTP.
  2. Se o host ESXi executar somente firmware BIOS herdado, obtenha e configure o PXELINUX.
    1. Obtenha o SYSLINUX versão 3.86, descompacte-o e copie o arquivo pxelinux.0 para o diretório /tftpboot em seu servidor TFTP.
    2. Crie um arquivo de configuração PXELINUX usando o seguinte modelo de código.
      ESXi-8.x.x-XXXXXX é o nome do subdiretório TFTP que contém os ESXi arquivos do instalador.
      DEFAULT install
      NOHALT 1
      LABEL install
        KERNEL ESXi-8.x.x-XXXXXX/mboot.c32
        APPEND -c ESXi-8.x.x-XXXXXX/boot.cfg
        IPAPPEND 2
      
    3. Salve o arquivo PXELINUX no diretório /tftpboot/pxelinux.cfg em seu servidor TFTP.
      O nome do arquivo determina se todos os hosts inicializam esse instalador por padrão.
      Opção Descrição
      Mesmo instalador Nomeie o arquivo como default se quiser que todos os hosts inicializem este ESXi instalador por padrão.
      Diferentes instaladores Nomeie o arquivo com o endereço MAC da máquina host de destino (01-mac_address_of_target_ESXi_host), se apenas um host específico precisar inicializar esse arquivo. Por exemplo, 01-23-45-67-89-0a-bc.
  3. Se o host ESXi executar o firmware UEFI, copie o arquivo efi/boot/bootx64.efi da imagem ISO do instalador do ESXi para a pasta /tftpboot no servidor TFTP. e renomeie o arquivo para mboot.efi.
    Observação: As versões mais recentes de mboot.efi geralmente podem inicializar versões mais antigas de ESXi, mas versões mais antigas de mboot.efi podem não conseguir inicializar versões mais recentes de ESXi. Se você planeja configurar hosts diferentes para inicializar versões diferentes do instalador do ESXi, use o mboot.efi da versão mais recente.
  4. Configure o servidor DHCP.
  5. Crie um diretório em seu servidor HTTP com o mesmo nome que a versão de ESXi que ele manterá. Por exemplo, /var/www/html/ESXi-8.x.x-XXXXXX.
  6. Copie o conteúdo da imagem do instalador ESXi para o diretório recém-criado.
  7. Modificar o arquivo boot.cfg
    1. Adicione a seguinte linha:
      prefix=http://XXX.XXX.XXX.XXX/ESXi-8.x.x-XXXXXX
      em que http://XXX.XXX.XXX.XXX/ESXi-8.x.x-XXXXXX é o local dos arquivos do instalador no servidor HTTP.
    2. Se os nomes de arquivo nas linhas kernel= e modules= começarem com um caractere de barra (/), exclua esse caractere.
    3. Se a linha kernelopt= contiver a sequência cdromBoot, remova apenas a sequência.
  8. (Opcional) Para uma instalação com script, no arquivo boot.cfg, adicione a opção kernelopt à linha após o comando do kernel para especificar o local do script de instalação.
    Use o código a seguir como modelo, em que XXX.XXX.XXX.XXX é o endereço IP do servidor no qual o script de instalação reside e esxi_ksFiles é o diretório que contém o { ks.cfg.
    kernelopt=ks=http://XXX.XXX.XXX.XXX/esxi_ksFiles/ks.cfg
  9. Se o host ESXi executar o firmware UEFI, especifique se deseja que todos os hosts UEFI inicializem o mesmo instalador.
    Opção Descrição
    Mesmo instalador Copie ou vincule o arquivo boot.cfg a /tftpboot/boot.cfg
    Diferentes instaladores
    1. Crie um subdiretório de /tftpboot com o nome do endereço MAC da máquina host de destino (01-mac_address_of_target_ESXi_host), por exemplo, 01-23-45- 67-89-0a-bc.
    2. Coloque uma cópia (ou um link para) do arquivo boot.cfg do host nesse diretório, por exemplo, /tftpboot/01-23-45-67-89-0a-bc/boot .cfg.