VMware ESXi

VMware ESXi Server
sistema operativo
SviluppatoreVMware Inc.
Release corrente6.0 (build 2494585)[1] (12 marzo 2015)
LicenzaProprietario (VMware Inc.)
Sito webwww.vmware.com/products/esxi/
Modifica dati su Wikidata · Manuale

VMware ESXi (precedentemente ESX) è un prodotto per la virtualizzazione di livello enterprise offerto da VMware Inc., sussidiaria di Dell Technologies e ancor prima una divisione di EMC Corporation. ESX è un componente di un'offerta VMware più grande, VMware Infrastructure, che aggiunge servizi di amministrazione e di affidabilità al prodotto base.

Il server base richiede almeno una componente di storage stabile - come può essere un array di Hard Disk - per archiviare il kernel della virtualizzazione e i file di supporto. Una variante di questa impostazione, chiamata ESX Server 3i, viene distribuita gratuitamente senza Service Console integrata e spostando il kernel del server in un dispositivo hardware dedicato (nei prossimi server anche memoria flash).

Entrambe le varianti supportano i servizi offerti da Virtual Infrastructure. In quest'ultima, l'unica via per usare gli agenti (di management & monitoring) che prima venivano installati nella Service Console, è usando i CIM Providers forniti da Vmware. La gestione da riga di comando invece può essere eseguita con il Remote CLI (nel caso della versione gratuita è limitato in accesso "sola lettura").

La lista di differenze fra le due versioni è consultabile sul sito VMware ESX and ESXi Comparison

Descrizione tecnica

Termini e definizioni

VMware, Inc. definisce l'hypervisor usato da VMware ESX Server come "vmkernel".

Architettura

Il server ESX include un microkernel che si interfaccia direttamente con la macchina. Nelle versioni ESX 3 e precedenti all'avvio viene lanciato un kernel Linux (una versione modificata di Red Hat Enterprise Linux) che analizza l'hardware della macchina e alcuni componenti di gestione, per poi cedere il controllo al componente vmkernel sviluppato di VMware. Questo è un microkernel con tre interfacce verso l'esterno:

  1. hardware
  2. sistema guest
  3. servizio console (servizio di gestione delle macchine virtuale che gira sul kernel che ha fatto partire vmkernel)

Interfaccia con l'hardware

Il microkernel vmkernel si occupa direttamente sia della CPU sia della memoria. Si può presumere che utilizzi la tecnologia Scan-Before-Execution (SBE) di VMware per gestire le istruzioni della CPU privilegiate.

L'accesso al rimanente hardware (come i dispositivi di rete o le memorie di massa) avviene utilizzando dei moduli. Alcuni dei moduli derivano dal codice sorgente di Linux. Per accedere a questi moduli, un modulo aggiuntivo chiamato vmklinux implementa l'interfaccia usata dai moduli Linux.[2][3]

Il vmkernel usa i seguenti driver:[3]

  1. net/e100
  2. net/e1000
  3. net/bcm5700
  4. net/bnx2
  5. net/tg3
  6. net/forcedeth
  7. net/pcnet32
  8. block/cciss
  9. scsi/adp94xx
  10. scsi/aic7xxx
  11. scsi/aic79xx
  12. scsi/ips
  13. scsi/lpfcdd-v732
  14. scsi/megaraid2
  15. scsi/mptscsi_2xx
  16. scsi/qla2200-v7.07
  17. scsi/megaraid_sas
  18. scsi/qla4010
  19. scsi/qla4022
  20. scsi/vmkiscsi
  21. scsi/aacraid_esx30
  22. scsi/lpfcdd-v7xx
  23. scsi/qla2200-v7xx

Questi driver sono sostanzialmente quelli descritti nella "Hardware Compatibility List" di VMware.[4] Tutti questi moduli rientrano nella licenza GPL e sono stati adattati dai programmatori per essere eseguiti tramite vmkernel. VMware li ha adattati al sistema di caricamento dei moduli di vmkernel, oltre ad altre modifiche minori.[3]

Note

  1. ^ VMware ESX 5.1
  2. ^ Estratto dal file README: "Questo modulo contiene il livello di emulazione Linux usato dal vmkernel."
  3. ^ a b c "ESX Server Open Source"
  4. ^ "ESX Hardware Compatibility List"

Voci correlate

Collegamenti esterni

  • Pagina Web di VMware ESX Server - VMware, Inc.
  • ESX Server Updates FAQ - VMware, Inc.
  • ESX server troubleshooting, su happysysadm.com.
  • Microsoft - Virtualizzazione - Microsoft Inc.
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica