Scritto da Serverlab
Condividi su
La virtualizzazione dei sistemi operativi – Capitolo 2.3.2
ESX server alloca a ciascuna macchina virtuale la quantità di memoria specificata durante la fase della sua creazione. Tuttavia è possibile creare macchine virtuali la cui somma della memoria specificata per ciascuna macchina supera la quantità di memoria fisica disponibile. In questo caso si parla di overcommitment.
Nella situazione di overcommitment il vmkernel assegna ad ogni macchina virtuale in esecuzione una quantità di memoria intermedia tra la reservation1 ed il limit2 utilizzando un coefficiente di priorità chiamato share. Maggiore è la share, maggiore la priorità assegnata alla macchina virtuale.
La quantità di memoria che il vmkernel assegna alla macchina virtuale al di sopra della reservation varia in funzione del suo carico di lavoro.
Le tecniche utilizzate per l’allocazione dinamica della memoria tra le macchine virtuali sono due:
Memory Balloon Driver
Il balloon driver è un componente che viene caricato sulla macchina virtuale attraverso l’installazione dei VMware tools. Collabora con il server per recuperare le pagine di memoria che il sistema operativo guest considera di minore importanza.
Agisce come un programma che aumenta o diminuisce la sua richiesta di pagine di memoria, forzando il sistema guest ad utilizzare il suo algoritmo di gestione della memoria. Quando la memoria è insufficiente, il sistema operativo ne reclama e, se necessario, effettua swap3 su disco.
Fig. 2.9: Funzionamento del memory balloon driver
La tecnica del balloon driver garantisce prestazioni migliori rispetto alla seconda tecnica detta,
Swapping
La tecnica dello swapping è utilizzata quando non è presente il balloon driver. Ad esempio durante la fase di avvio della macchina virtuale prima del caricamento del driver o nel caso che non siano installati i VMware tools.
Consiste semplicemente nel creare un file di swap che, per impostazione predefinita è localizzato nel volume logico dove è presente il file di configurazione della macchina virtuale. Questa tecnica causa una perdita di prestazione ed è utilizzata come ultima risorsa.
Condivisione delle memoria tra macchine virtuali
Il vmkernel implementa anche una tecnica che permette la condivisione delle pagine di memoria tra le macchine virtuali per ridurre la quantità di memoria necessaria. Effettua una scansione delle pagine presenti in memoria e ne calcola l’hash. Nel caso di hash corrispondenti, blocca la pagina in sola lettura. Se una macchina virtuale tenta di modificare le pagine di memoria in sola lettura, il vmkernel ne crea immediatamente una copia con permessi di lettura e scrittura.
Questa tecnica permette di ridurre significativamente l’utilizzo di memoria dato che frequentemente le macchine virtuali eseguono lo stesso sistema operativo, ma crea un’inevitabile overhead di elaborazione.
Fig. 2.10: Condivisione della pagine di memoria
Torna all’Indice »
1 La reservation è la quantità di memoria che l’utente stabilisce debba essere riservata ad una specifica macchina virtuale. L’impostazione predefinita prevede l’assegnazione di una reservation pari a 0.
2 Il limit è la quantità di memoria che l’utente definisce essere il limite di utilizzo di una macchina virtuale.
3 Con il termine swap si intende, in informatica, l’estensione della capacità della memoria complessiva del computer oltre il limite imposto dalla quantità di RAM installata, attraverso l’utilizzo di uno spazio sul disco.
Ottimizza l’efficienza del tuo lavoro e risparmia sui costi di gestione IT
Scopri le alternative a VMware: Hyper-V, Proxmox e XCP-NG.
30/04/2024
Negli ambienti di lavoro distribuiti, le soluzioni VDI software consentono al reparto IT di fornire accesso ai desktop come se fossero servizi, erogandoli tramite Internet. In questa news ti spiego perché i desktop virtuali dovrebbero far parte di una strategia IT globale e quali sono i tre fattori principali da considerare. Ormai tutti ci aspettiamo […]
27/06/2023
Scopriamo insieme a Davide Galanti come risolvere 5 problemi comuni del virtual desktop.
07/04/2023
Il desktop virtuale non è necessario per le applicazioni web based e le applicazioni chiave stanno migrando sull’interfaccia Web. Quindi perché facciamo ancora Farm VDI? Ha ancora senso una Citrix Farm quando le applicazioni vanno sul web? Brian Madden, 2016 Questa frase l’ho ascoltata da Brian Madden al suo evento BRIFORUM di Londra del 2016, […]
22/08/2022