Salta la barra di navigazione [1] - Vai alla barra di navigazione [3] - Scrivimi una mail [4]

Installazione di VMware ESXi / vSphere

Sommario - Novità - Tutorial - Taccuino - Progetti - Risorse - Non solo elettronica

L'interfaccia fisica di ESXi

VMware vSphere Hypervisor (aka ESXi) è un hypervisor bare-metal gratuito, ma non libero, che consente di virtualizzare i server per "consolidare" le applicazioni di una data center tradizionale. In pratica permette di concentrare un numero anche molto elevato di macchine usando solo pochi dispositivi hardware.

Quanto qui descritto è frutto di qualche esperienza personale, non particolarmente approfondita, ma provata per un lungo periodo temporale in ambiente di produzione, nel caso specifico una scuola superiore ad indirizzo informatico. Devo dire che non è esattamente il mio mestiere e oggi sto pensando a soluzioni più innovative e magari aderenti alla mia visione "open" del mondo IT.

Questo materiale l'ho scritto per passare dalla versione 4 all'attuale (2016) versione 6 di vSphere. Spero chi il lettore abbia qualche esperienza, anche minima, nella configurazione di server (linux in particolare) e nell'uso di software di virtualizzazione.

Installazione

Il boot da CD non ha nulla di particolare se non il fatto che vi serve una macchina adatta (ma anche non adatta), non dual-boot e di livello server:

L'esperienza che descrivo inizia oltre cinque anni fa con server Fujitsu Siemens PRIMERGY RX300 (Xeon 4 core, 6/8 GB di RAM, 3 dischi SAS da 150 GB) e arriva ad HP DL560 (Xeon 2x16 core, 128 GB di RAM, 5 dischi da 300 GB).

Quando descrivo può essere sperimentato anche utilizzando una macchina virtuale in cui installare ESXi (nested virtualization, testato solo all'interno di VMware player) a condizione di:

L'installazione è piuttosto rapida e senza sorprese.

Al termine quello che viene mostrato sul monitor è l'immagine di apertura di questa pagina (ESXi virtualizzato con VMware Player sul mio portatile): le operazioni possibili di fronte alla macchina fisica sono pochissime, poco più che spegnere e guardare se per caso l'alimentazione manca... Occorre però appuntarsi l'indirizzo, almeno IPv4, che in ambiente di produzione dovrebbe essere statico. E, se siete "paranoici" in tema di sicurezza informatica, il fingerprint (F2).

Amministrazione grafica

Per l'amministrazione è obbligatorio utilizzare una macchina “normale”, reale o virtuale. Per fare ciò occorre accedere via web all'IP mostrato dopo il boot sul monitor fisico del virtualizzatore e scaricare quanto mostrato sui link. Il certificato https è auto-firmato, quindi occorre accettarlo esplicitamente.

Purtroppo per l'amministrazione grafica serve obbligatoriamente una macchina Windows 7 o superiore (io uso a volte un tablet Windows 10). Cliccare Download vSphere Client for Windows per scaricare il client direttamente dal sito VmWare.

Appena effettuato l'accesso, è opportuno inserire il codice della licenza, da richiedere gratuitamente sul sito VMware. In teoria la cosa può essere effettuata anche in un secondo momento, ma il rischio è quello di dover effettuare nuovamente l'installazione delle macchine virtuali che hanno utilizzato features non gratuite.

Per inserire la licenza cliccare sul link mostrato al primo accesso oppure sul nome dell'hostConfiguration Licensed featuresEdit

Server ssh

Attivare il server SSH è una cosa decisamente comoda e, per molte operazioni, veloce.

Dall'interfaccia del server fisico, premere F2 (è richiesta la password di root), quindi Troubleshooting Options e infine Enable SSH.

L'accesso come root è, stranamente, attivo. Quindi:
vv@vv-15rse:~$ ssh 192.168.111.47 -l root

Per l'accesso con certificati, cioè senza digitare ogni volta la password, la procedura è:

  1. Si crea sulla propria macchina una coppia di certificati pubblici e privati. La procedure dipende dal sistema operativo (per Debian e molte distribuzioni *nix è procedura standard durante l'installazione)
  2. Si copia il proprio certificato pubblico sul server ESXi; è richiesta la password di root di ESXi:
    vv@vv-15rse:~$ ssh-copy-id root@192.168.111.47
  3. Si accede a ESXi (è richiesta la password di root di ESXi)
    vv@vv-15rse:~$ ssh 192.168.111.47 -l root
  4. Si copia il certificato in /etc/ssh/keys-USER-NAME/authorized_keys. Questa procedura mi sembra un poco surreale... ma è indicata sul sito ufficiale di VMware
    [root@localhost:~] cp .ssh/authorized_keys /etc/ssh/keys-root/authorized_keys
  5.  Si riavvia il server ssh:
    [root@localhost:~] /etc/init.d/SSH restart
  6. Ci si sconnette e ci si riconnette (stavolta senza più digitare la password)
    [root@localhost:~] exit
    vv@vv-15rse:~$ ssh 192.168.111.47 -l root
    [root@localhost:~]

    (inutile dire quanto sia importante proteggere i propri certificati...)

Molti sono i comandi che possono essere usati. Un breve elenco:

Elenco delle macchine virtuali
[root@localhost:~] vim-cmd vmsvc/getallvms

Stato, accensione e spegnimento di una macchina virtuale:
[root@localhost:~] vim-cmd vmsvc/power.getstate 1
[root@localhost:~] vim-cmd vmsvc/power.off 1
[root@localhost:~] vim-cmd vmsvc/power.on 1

Attivazione e disattivazione del Maintenance Mode :
[root@localhost:~] esxcli system maintenanceMode set --enable false
[root@localhost:~] esxcli system maintenanceMode set --enable true

Creare una macchina virtuale

Preliminarmente occorre fare l'upload del file ISO dell'installazione del sistema operativo guest prescelto. Sconsiglio di usare un CD fisico perché è uno spreco masterizzare, perché nessuno dei miei computer ha più il lettore CD, perché i server sono rumorosi e quindi meglio lavorare lontani da essi...

Consiglio di creare un'apposita directory per tutte le ISO.

L'upload si può fare dall'interfaccia grafica: ConfigurationStorageDatastore1 (tasto destro) Browse DatastoreUpload

Decisamente più comodo e veloce fare da linea di comando:
vv@vv-15rse:~$ scp debian-8.2.0-amd64-netinst.iso root@192.168.111.47:/vmfs/volumes/datastore1/ISO
debian-8.2.0-amd64-netinst.iso 100% 247MB 61.8MB/s 00:04

Creiamo quindi la nuova macchina virtuale, da interfaccia grafica: Getting startedCreate a new virtual machine

La procedura di creazione è simile a quella da applicare con VMware Payer (e quindi, se state leggendo questa pagina sapete come fare...)

Le uniche avvertenza per chi ha già virtualizzato su workstation sono le seguenti, visto che stiamo costruendo un'infrastruttura virtuale:

Per vedere il display, usare il tab Console, magari cliccando sull'apposita icona che attiva una finestra indipendente. Ovviamente dopo l'installazione è meglio usare il guest con connessione remota nativa (ssh, RDP, vnc...)

Ricordarsi al termine di installare i “vm-tools” per la macchina guest appena installata, con procedura che dipende dal sistema operativo. Per Debian consiglio di attivare i backports e procedere con:
root@nested:~# aptitude install -t jessie-backports open-vm-tools

Infine, ma dipende dal ruolo della macchina virtuale guest, potrebbe essere opportuno prevedere la sua accensione automatica, per esempio dopo uno shutdown del virtualizzatore dopo un fermo programmato per manutenzione. Per fare ciò: ConfigurationVirtual Machines StartupProperties

Aggiornamenti

Come per tutti i dispositivi IT l'hypervisor richiede frequenti aggiornamenti di sicurezza. Nel caso di un virtualizzatore la cosa è particolarmente critica perché una falla potrebbe comportare la compromissione dell'intero datacenter. Con la versione 6 di ESXi non è più presente un tool di aggiornamento automatico gratuito e quindi occorre procedere manualmente.

  1. Come prima cosa occorre scaricare le patch. Sembra che le varie patch siano cumulative (quindi basta installare la più recente), ma nella documentazione sono presenti alcune ambiguità... Link: https://my.vmware.com/group/vmware/patch
  2. Conviene creare un'apposita directory sul datastore (facoltativo):
    [root@localhost:~] mkdir /vmfs/volumes/datastore1/patch
  3. Quindi la patch va copiata sul server. Può essere usata la modalità grafica oppure usare scp.
    vv@vv-15rse:$ scp ESXi600-201602001.zip root@192.168.111.47:/vmfs/volumes/datastore1/patch
    ESXi600-201602001.zip 100% 341MB 68.2MB/s 00:05
  4. Occorre spegnere tutte le macchine virtuali e mettere ESXi in Maintenance, attraverso l'interfaccia grafica: InventoryHostEnter Maintenance Mode. Oppure dal linea di comando:
    [root@localhost:~] esxcli system maintenanceMode set --enable true
  5. Applicare quindi la patch e riavviare, se richiesto:
    [root@localhost:~] esxcli software vib update -d /vmfs/volumes/datastore1/patch/ESXi600-201602001.zip
    Installation Result
    Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
    Reboot Required: true
    VIBs Installed: VMware_bootbank_ehci-ehci-hcd_1.0-3vmw.600.1.26.3380124, VMware_bootbank_esx-base_6.0.0-1.29.3568940, VMware_bootbank_misc-drivers_6.0.0-1.26.3380124, VMware_bootbank_net-e1000e_3.2.2.1-1vmw.600.1.26.3380124, VMware_bootbank_net-tg3_3.131d.v60.4-2vmw.600.1.26.3380124, VMware_bootbank_xhci-xhci_1.0-3vmw.600.1.26.3380124, VMware_locker_tools-light_6.0.0-1.26.3380124  [...]
    [root@localhost:~] reboot
  6. Al riavvio, accedere nuovamente, uscire dallo stato di Maintenance ed eventualmente avviare manualmente le macchine virtuali:
    [root@localhost:~] esxcli system maintenanceMode set --enable false
  7. La patch può infine essere cancellata dal datastore:
    [root@localhost:~] rm /vmfs/volumes/datastore1/patch/ESXi600-201507001.zip

Parole chiave: ESXi - VmWare - vSphere - Hypervisor - ssh

Ultima modifica di questa pagina: 6 luglio 2016


EN - Pagina principale - Sommario - Accessibilità - Note legali e privacy policy - Posta elettronica

XHTML 1.0 Strict - CSS 3