Il tuo indirizzo IP è 162.158.78.211     

Cluster HA con VMware vSphere

Scritto da Alessio Carta il . Inserito in vSphere 4.x . Visite: 7754

Con VMware vSphere, l'alta disponibilità (HA, High Availability) viene fornita partendo dalla creazione di un cluster di macchine virtuali. Un cluster è semplicemente un gruppo di hosts ESX. Quando si aggiunge un host ESX ad un cluster, le risorse di quell'host diventano risorse del cluster. Le risorse di un cluster sono in sostanza le risorse complessive di tutti i nodi ESX che partecipano al cluster.

L'esistenza di un cluster permette di abilitare le funzioni HA e DRS.

Il servizio VMware HA (High Availability) consente di riavviare in pochi minuti, in modo automatico ed economico, macchine virtuali ed applicazioni bloccate da guasti hardware o da problemi del sistema operativo. In caso di blocco di un host ESX, viene eseguito un riavvio automatico delle macchine virtuali su un altro host. In caso di blocchi sul sistema operativo di una VM, viene riavviata la macchina virtuale sullo stesso host fisico, fornendo quindi alta disponibilità per le applicazioni in esecuzione sulle macchine virtuali.

VMware HA controlla costantemente tutti gli host ESX inseriti all'interno di un pool di risorse (resource pool) e rileva eventuali blocchi sia sugli hosts che sulle macchine virtuali ospitate.

Per il monitoraggio degli hosts viene utilizzato un agente software su ogni nodo ESX che mantiene un heartbeat (battito cardiaco, ossia un continuo scambio di informazioni sull'esistenza in rete) con gli altri nodi dello stesso pool, in modo che la perdita di un solo heartbeat comporti l'avvio automatico, su altri hosts ESX, di tutte le macchine virtuali ferme.

Per quanto riguarda il monitoraggio delle macchine virtuali, e quindi dei sistemi operativi, VMware HA rimane in ascolto delle informazioni di
heartbeat fornite dal pacchetto VMware Tools installato su ogni macchina virtuale . Il sistema interviene quando non viene ricevuto un heartbeat dopo un intervallo di tempo specificato dall'utente.

VMware HA necessita di uno storage condiviso, come sistemi FibreChannel e SAN iSCSI, con file system VMFS. Il file system cluster VMFS di VMware consente infatti a più server ESX di accedere in contemporanea alla stessa macchina virtuale.

VMware HA è una soluzione valida per ambienti che possono sopportare brevi interruzioni di servizio e potenziale perdita di transazioni (nel caso dei database) nel momento del blocco; il downtime è minimizzato ma non annullato. Per annullare completamente il downtime e la potenziale perdita di dati bisogna utilizzare il servizio di Fault Tolerance.

 

Creazione di un cluster

La guida che segue fa riferimento al laboratorio vSphere creato nell'articolo Laboratorio vSphere su VMware Workstation.

1. Con la visualizzazione in modalità "Hosts & Clusters", facciamo clic con il tasto destro sul Datacenter e selezioniamo "New Cluster".

cluster 1

 

2.  Completiamo la procedura guidata di creazione Cluster, ma senza abilitare VMware HA o DRS in questa fase.

 

3. In questo laboratorio di test, EVC non è necessario.

 

4. Lasciamo che il file di swap venga salvato nella stessa directory della relativa macchina virtuale.

 

5. Cliccando su Finish verrà creato un cluster vuoto.

 

6. L'ultimo passaggio consiste nell'inserire all'interno del cluster i due nodi ESX. Per fare questo, trascinare semplicemente gli hosts all'interno del cluster appena creato. Il risultato sarà come quello mostrato in figura.

 

Creazione di una macchina virtuale all'interno del cluster

1. Impostiamo la visualizzazione del vSphere Client in modalità "Datastores", facciamo clic con il tasto destro sul datastore iSCSI_lun0 e selezioniamo "Browse Datastore".

 

2. Carichiamo l'immagine ISO di Ubuntu Server.

 

3. Torniamo nella modalità di visualizzazione "Hosts & Clusters", facciamo clic con il tasto destro sul Cluster e selezioniamo "New Virtual Machine".

 

4. Andiamo avanti con le impostazioni tipiche.

 

5. Diamo un nome alla macchina virtuale e selezioniamo l'unico Datacenter presente.

 

6. Selezioniamo il nodo ESX A, ossia l'192.168.108.10, e proseguiamo.

 

7. Posizioniamo la macchina virtuale sul primo datastore iSCSI disponibile, iSCSI_lun0.

 

8. Selezioniamo la tipologia di sistema operativo, ossia Linux Ubuntu 32 bit.

 

9. Per Ubuntu Server in ambiente di prova, 4 Gb saranno più che sufficienti.

 

10. Ecco il riepilogo della nostra macchina virtuale. Selezioniamo "Edit the virtual machine settings..." e andiamo avanti.

 

11. Sulla periferica CD/DVD, selezioniamo l'immagine ISO di Ubuntu Server caricata in precedenza.

 

12. Avviamo la macchina virtuale, portiamo avanti l'installazione e impostiamo l'indirizzo IP 192.168.108.3 all'interfaccia di rete di Ubuntu Server.

 

Configurazione di VMware HA

1. Facciamo clic con il tasto destro sul cluster, quindi selezioniamo "Edit Settings" per modificarne le proprietà.

 

2. Abilitiamo VMware HA e VMware DRS

 

3. Nelle impostazioni di VMware HA troviamo la voce "Enable Host Monitoring" abilitata in maniera predefinita. Questa funzione consente al servizio VMware HA di monitorare gli "heartbeats" ( battiti cardiaci, ossia un continuo scambio di informazioni sull'esistenza in rete) inviati dagli hosts ESX/ESXi presenti nel cluster. Se un host fallisce, le macchine virtuali in esecuzione su di esso vengono fatte ripartire su un altro host.

 

4. La scheda "Virtual Machine Options" ci permette di controllare l'ordine con cui le macchine virtuali vengono fatte ripartire. Di default la priorità è impostata su "Medium" per tutte le macchine virtuali, ma possiamo modificare quest'impostazione per ogni macchina nel riquadro "Virtual Machine Settings".

 

5. Il servizio "VM Monitoring" riavvia singole macchine virtuali se gli heartbeats dei VMware Tools installati su di esse non vengono ricevuti entro un tempo definito. Si tratta di un servizio che fornisce l'alta affidabilità non più a livello di host ESX, ma a livello applicativo relativamente ad ogni singola macchina.

 

 

Test di VMware HA

Simuliamo ora un blocco sull'host ESX nodo A su cui è in esecuzione la macchina virtuale con Ubuntu Server. VMware HA, rilevata l'indisponibilità dell'host, sposterà la macchina virtuale sull'host ESX nodo B. Ripetiamo ancora una volta che un cluster VMware HA necessita di uno storage condiviso, nel nostro caso la LUN iSCSI-lun0, vista contemporaneamente da tutti gli hosts ESX del cluster. Il file system cluster VMFS di VMware consente infatti a più server ESX di accedere in contemporanea alla stessa macchina virtuale. Pertanto i file della macchina virtuale continuano ad essere ospitati sullo stesso datastore. VMware HA semplicemente manda in esecuzione le macchine virtuali su un altro host mantenendo lo stesso storage condiviso.

1. Dal server Windows 2008 con vCenter Server verifichiamo la raggiungibilità della macchina virtuale in esecuzione sull'host ESX nodo A.

 

2. Simuliamo un'interruzione improvvisa del nodo A.

 

3. Lo spegnimento dell'host comporta l'indisponibilità della macchina virtuale per un tempo inferiore al minuto. Sul vCenter possiamo osservare un allarme che indica l'irraggiungibilità del nodo A, per questo motivo la macchina virtuale con Ubuntu Server è stata spostata e riavviata sul nodo B. VMware HA è una soluzione valida quando si possono tollerare brevi interruzioni di servizio, con downtime minimizzato ma non annullato. Per annullare completamente il downtime (e potenziale perdita di dati) ci si avvale di VMware Fault Tolerance.

 

Commenti  

# Alessio 2011-08-31 16:24
Citazione Manolo:
So che come domanda potrebbe risultare stupida... ma una volta creato tutto questo... voglio da un client esterno eseguire una macchina virtuale installata all'interno che strumenti posso usare per farlo?
Grazie! Complimenti per gli articoli sono fatti benissimo!

Puoi gestire le macchine virtuali in desktop remoto, oppure con il client vSphere (tasto destro sulla macchina virtuale che ti interessa -> Open Console. Ciao e grazie per i complimenti :D
Rispondi
# Manolo 2011-08-31 11:54
So che come domanda potrebbe risultare stupida... ma una volta creato tutto questo... voglio da un client esterno eseguire una macchina virtuale installata all'interno che strumenti posso usare per farlo?
Grazie! Complimenti per gli articoli sono fatti benissimo!
Rispondi
# Andrea 2011-08-30 16:21
complimenti vivissimi per il sito!!! ;-)
Rispondi
# Alessio 2011-07-21 09:05
Citazione Marco:
Complimenti per l'articolo, molto dettagliato. Ma per realizzare un cluster che versione di Vmware occorre?
Grazie


Ciao, grazie per i complimenti. Per un cluster HA ti servono delle licenze Enterprise per i server ESX/ESXi (devi conteggiare una licenza per ogni CPU) e una licenza per il vCenter Server.

I prezzi li trovi qui: vmware.com/.../pricing.html

Altrimenti puoi prendere il pacchetto completo VMware vSphere 4.1 Essentials Plus Kit for 3 hosts (Max 2 processors per host and 6 cores per processor), che da listino visibile su VMware viene a costare circa 5000 dollari. In questo caso non puoi andare oltre i 3 hosts gestibili.
Rispondi
+1 # Marco 2011-07-20 22:16
Complimenti per l'articolo, molto dettagliato. Ma per realizzare un cluster che versione di Vmware occorre?
Grazie
Rispondi

Aggiungi commento


Codice di sicurezza
Aggiorna

Utilizzando questo sito accetti l'uso di cookie per analisi, contenuti personalizzati e pubblicità mirata (tramite Google AdSense). Clicca qui per maggiori informazioni