ESXi booting

ESXi booting

ESXi booting 150 150 Leonardo

Come funziona l’ESXi booting su VMware

Chi si trova a lavorare con VMware vSphere si trova a volte a scegliere l’Auto Deploy delle infrastrutture. Questi sono i passaggi di quello che succede:

1. Al primo avvio del server, l’host avvia una sequenza di avvio PXE. Il DHCP del server fornisce un indirizzo IP per far dialogare l’host al server TFTP.
2. Quando l’host stabilisce la connessione con il server TFTP, scarica il file iPXE (boot loader eseguibile), denominato undionly.kpxe.vmw-hardwired per BIOS legacy o snponly64.efi.vmw-hardwired per BIOS UEFI e un file di configurazione.
3. Durante l’esecuzione dell’iPXE, l’host invia una richiesta di avvio HTTP al Server di distribuzione automatica Auto Deploy di vSphere (queste informazioni sono archiviate nella configurazione del file iPXE) ed ottiene informazioni sull’hardware e sulla rete.
4. Il server vSphere Auto Deploy trasmette i componenti richiesti come profilo immagine agli host in base alle regole della distribuzione.
5. L’host viene avviato utilizzando il profilo immagine assegnato dalla regola di distribuzione. Se un profilo immagine dell’host è stato assegnato, viene applicato all’host.
6. L’host viene aggiunto allo stesso vCenter con cui si trova l’Auto Deploy registrato. Se una regola non specifica la posizione dell’inventario, l’host è aggiunto al primo data center visualizzato nell’interfaccia utente del client Web vSphere.

Di seguito, invece, la traduzione delle guide ufficiali VMware

PXE Avvio del programma di installazione ESXi utilizzando un server Web

 Ultimo aggiornamento 31/05/2019 – per la versione 7.0

È possibile utilizzare un server Web per avviare PXE il programma di installazione ESXi . Poiché la maggior parte degli ambienti include host ESXi che supportano l’avvio UEFI e host che supportano solo BIOS legacy, questo argomento discute i prerequisiti e i passaggi per entrambi i tipi di host.

  • Per le macchine BIOS legacy, la procedura supporta l’avvio di più versioni differenti del programma di installazione ESXi utilizzando lo stesso boot loader iniziale pxelinux.0 o gpxelinux.0 per tutte le macchine di destinazione, ma file di configurazione PXELINUX potenzialmente diversi a seconda dell’indirizzo MAC della macchina di destinazione.
  • Per le macchine UEFI, la procedura supporta l’avvio di più versioni differenti del programma di installazione ESXi utilizzando lo stesso boot loader iniziale mboot.efi per tutte le macchine di destinazione, ma file boot.cfg potenzialmente diversi a seconda dell’indirizzo MAC della macchina di destinazione.

Prerequisiti

Verifica che il tuo ambiente abbia i seguenti componenti:

  • Immagine ISO del programma di installazione ESXi , scaricata dal sito Web VMware.
  • Host di destinazione con una configurazione hardware supportata per la tua versione di ESXi . Consulta la Guida alla compatibilità di VMware .
  • Scheda di rete con supporto PXE sull’host ESXi di destinazione .
  • Server DHCP configurato per l’avvio PXE. Vedere Esempi di configurazioni DHCP .
  • Server TFTP.
  • Criteri di sicurezza di rete per consentire il traffico TFTP (porta UDP 69).
  • Per il BIOS legacy, è possibile utilizzare solo la rete IPv4. Per l’avvio UEFI PXE, è possibile utilizzare la rete IPv4 o IPv6.
  • (Opzionale) Script di installazione (file kickstart).
  • Utilizza una VLAN nativa nella maggior parte dei casi. Se si desidera specificare l’ID VLAN da utilizzare con l’avvio PXE, verificare che la scheda NIC supporti la specifica dell’ID VLAN.

Verificare che l’ambiente soddisfi anche i seguenti prerequisiti richiesti per l’avvio PXE utilizzando un server Web:

Procedura

  1. Configurare il server DHCP per l’avvio HTTP.
  2. (Solo UEFI) Ottieni e configura iPXE:
    1. Ottieni il codice sorgente iPXE, come descritto su http://ipxe.org/download .
    2. Segui le istruzioni in quella pagina, ma usa il seguente comando make:crea bin-x86_64-efi / snponly.efi
    3. Copia il file risultante snponly.efi nella directory / tftpboot sul tuo server TFTP.
  3. (Solo UEFI) Copiare il file efi / boot / BOOTX64.EFI dal ESXi immagine d’installazione ISO per /tftpboot/mboot.efi sul server TFTP.Nota:Le versioni più recenti di mboot.efi possono generalmente avviare versioni precedenti di ESXi , ma le versioni precedenti di mboot.efi potrebbero non essere in grado di avviare versioni più recenti di ESXi . Se si prevede di configurare host diversi per avviare versioni diverse del programma di installazione ESXi , utilizzare mboot.efi dalla versione più recente.
  4. (Solo BIOS legacy) Ottieni e configura PXELINUX:
    1. Ottieni SYSLINUX versione 3.86, scompattalo e copia il file gpxelinux.0 nella directory / tftpboot di primo livello sul tuo server TFTP.
    2. Crea un file di configurazione PXELINUX utilizzando il seguente modello di codice.ESXi-6.xx-XXXXXX è il nome della sottodirectory TFTP che contiene i file del programma di installazione ESXi .Installazione PREDEFINITA NOHALT 1 LABEL install KERNEL ESXi-6.xx-XXXXXX / mboot.c32 APPENDI -c ESXi-6.xx-XXXXXX / boot.cfg IPAPPEND 2
    3. Salva il file PXELINUX nella directory /tftpboot/pxelinux.cfg sul tuo server TFTP con un nome file che determinerà se tutti gli host avviano questo programma di installazione per impostazione predefinita:OpzioneDescrizioneStesso programma di installazioneAssegna un nome al file predefinito se desideri che tutti gli host avviino questo programma di installazione ESXi per impostazione predefinita.Diversi installatoriAssegna un nome al file con l’indirizzo MAC della macchina host di destinazione (01- mac_address_of_target_ESXi_host ) se desideri che solo un host specifico si avvii con questo file, ad esempio, 01-23-45-67-89-0a-bc .
  5. Crea una directory sul tuo server HTTP denominata per la versione di ESXi che conterrà, ad esempio, /var/www/html/ESXi-6.xx-XXXXXX .
  6. Copia il contenuto dell’immagine del programma di installazione ESXi nella directory appena creata.
  7. Modifica il file boot.cfg
    1. Aggiungi la seguente riga:prefix = http: //XXX.XXX.XXX.XXX/ESXi-6.xx-XXXXXXdove http://XXX.XXX.XXX.XXX/ESXi-6.x.x-XXXXXXè la posizione dei file del programma di installazione sul server HTTP.
    2. Se i nomi dei file nelle righe kernel=modules=iniziano con un carattere barra (/), eliminare quel carattere.
  8. (Facoltativo) Per un’installazione con script, nel file boot.cfg , aggiungere l’ kerneloptopzione alla riga dopo il comando del kernel, per specificare la posizione dello script di installazione.Utilizzare il codice seguente come modello, dove XXX.XXX.XXX.XXX è l’indirizzo IP del server in cui risiede lo script di installazione ed esxi_ksFiles è la directory che contiene il file ks.cfg .kernelopt = ks = http: //XXX.XXX.XXX.XXX/esxi_ksFiles/ks.cfg
  9. (Solo UEFI) Specificare se si desidera che tutti gli host UEFI avviino lo stesso programma di installazione.OpzioneDescrizioneStesso programma di installazioneCopiare o collegare il boot.cfg file da /tftpboot/boot.cfgDiversi installatori
    1. Creare una sottodirectory di / tftpboot denominata dopo l’indirizzo MAC della macchina host di destinazione (01- mac_address_of_target_ESXi_host ), ad esempio, 01-23-45-67-89-0a-bc .
    2. Inserisci una copia del file boot.cfg dell’host (o un collegamento al) in quella directory, ad esempio /tftpboot/01-23-45-67-89-0a-bc/boot.cfg .

Avvio tramite TFTP

 Ultimo Aggiornamento 31/05/2019 – Versione 7.0

È possibile utilizzare un server TFTP per avviare con PXE il programma di installazione ESXi . Il processo differisce leggermente a seconda che si utilizzi UEFI o si esegua l’avvio da un BIOS legacy. Poiché la maggior parte degli ambienti include host ESXi che supportano l’avvio UEFI e host che supportano solo BIOS legacy, questo argomento discute i prerequisiti e i passaggi per entrambi i tipi di host.

  • Per le macchine BIOS legacy, la procedura supporta l’avvio di più versioni differenti del programma di installazione ESXi utilizzando lo stesso boot loader iniziale pxelinux.0 o gpxelinux.0 per tutte le macchine di destinazione, ma file di configurazione PXELINUX potenzialmente diversi a seconda dell’indirizzo MAC della macchina di destinazione.
  • Per le macchine UEFI, la procedura supporta l’avvio di più versioni differenti del programma di installazione ESXi utilizzando lo stesso boot loader iniziale mboot.efi per tutte le macchine di destinazione, ma file boot.cfg potenzialmente diversi a seconda dell’indirizzo MAC della macchina di destinazione.

Prerequisiti

Verificare che il proprio ambiente soddisfi i seguenti prerequisiti.

  • Immagine ISO del programma di installazione ESXi , scaricata dal sito Web VMware.
  • Host di destinazione con una configurazione hardware supportata per la tua versione di ESXi . Consulta la Guida alla compatibilità di VMware .
  • Scheda di rete con supporto PXE sull’host ESXi di destinazione .
  • Server DHCP configurato per l’avvio PXE. Vedere Esempi di configurazioni DHCP .
  • Server TFTP.
  • Criteri di sicurezza di rete per consentire il traffico TFTP (porta UDP 69).
  • Per il BIOS legacy, è possibile utilizzare solo la rete IPv4. Per l’avvio UEFI PXE, è possibile utilizzare la rete IPv4 o IPv6.
  • (Opzionale) Script di installazione (file kickstart).
  • Utilizza una VLAN nativa nella maggior parte dei casi. Se si desidera specificare l’ID VLAN da utilizzare con l’avvio PXE, verificare che la scheda NIC supporti la specifica dell’ID VLAN.

Per i sistemi BIOS legacy, versione 3.86 del pacchetto SYSLINUX, disponibile da https://www.kernel.org/pub/linux/utils/boot/syslinux/ .

Procedura

  1. Configurare il server DHCP per l’avvio TFTP.
  2. (Solo BIOS legacy) Ottieni e configura PXELINUX:
    1. Ottieni SYSLINUX versione 3.86, scompattalo e copia il file pxelinux.0 nella directory / tftpboot di primo livello sul tuo server TFTP.
    2. Crea un file di configurazione PXELINUX utilizzando il seguente modello di codice.ESXi-6.xx-XXXXXX è il nome della sottodirectory TFTP che contiene i file del programma di installazione ESXi .Installazione PREDEFINITA NOHALT 1 LABEL install KERNEL ESXi-6.xx-XXXXXX / mboot.c32 APPENDI -c ESXi-6.xx-XXXXXX / boot.cfg IPAPPEND 2
    3. Salva il file PXELINUX nella directory /tftpboot/pxelinux.cfg sul tuo server TFTP con un nome file che determinerà se tutti gli host avviano questo programma di installazione per impostazione predefinita:OpzioneDescrizioneStesso programma di installazioneAssegna un nome al file predefinito se desideri che tutti gli host avviino questo programma di installazione ESXi per impostazione predefinita.Diversi installatoriAssegna un nome al file con l’indirizzo MAC della macchina host di destinazione (01- mac_address_of_target_ESXi_host ) se desideri che solo un host specifico si avvii con questo file, ad esempio, 01-23-45-67-89-0a-bc .
  3. (Solo UEFI) Copiare il file efi / boot / BOOTX64.EFI dal ESXi immagine d’installazione ISO per /tftpboot/mboot.efi sul server TFTP.Nota:Le versioni più recenti di mboot.efi possono generalmente avviare versioni precedenti di ESXi , ma le versioni precedenti di mboot.efi potrebbero non essere in grado di avviare versioni più recenti di ESXi . Se si prevede di configurare host diversi per avviare versioni diverse del programma di installazione ESXi , utilizzare mboot.efi dalla versione più recente.
  4. Crea una sottodirectory della directory / tftpboot di primo livello del tuo server TFTP e assegnagli un nome in base alla versione di ESXi che conterrà, ad esempio, /tftpboot/ESXi-6.xx-xxxxx .
  5. Copia il contenuto dell’immagine del programma di installazione ESXi nella directory appena creata.
  6. Modifica il file boot.cfg
    1. Aggiungi la seguente riga:prefix = ESXi-6.xx-xxxxxxDi seguito ESXi-6.x.x-xxxxxxè riportato il percorso dei file di installazione relativi alla directory principale del server TFTP.
    2. Se i nomi dei file nelle righe kernel=modules=iniziano con un carattere barra (/), eliminare quel carattere.
  7. (Facoltativo) Per un’installazione con script, nel file boot.cfg , aggiungere l’ kerneloptopzione alla riga dopo il comando del kernel, per specificare la posizione dello script di installazione.Utilizzare il codice seguente come modello, dove XXX.XXX.XXX.XXX è l’indirizzo IP del server in cui risiede lo script di installazione ed esxi_ksFiles è la directory che contiene il file ks.cfg .kernelopt = ks = http: //XXX.XXX.XXX.XXX/esxi_ksFiles/ks.cfg
  8. (Solo UEFI) Specificare se si desidera che tutti gli host UEFI avviino lo stesso programma di installazione.OpzioneDescrizioneStesso programma di installazioneCopiare o collegare il boot.cfg file da /tftpboot/boot.cfgDiversi installatori
    1. Creare una sottodirectory di / tftpboot denominata in base all’indirizzo MAC della macchina host di destinazione (01- mac_address_of_target_ESXi_host ), ad esempio, 01-23-45-67-89-0a-bc .
    2. Inserisci una copia del file boot.cfg dell’host (o un collegamento al) in quella directory, ad esempio /tftpboot/01-23-45-67-89-0a-bc/boot.cfg .

Argomento principale: PXE Avvio del programma di installazione ESXi