Per mantenere una connessione costante tra un host e il relativo storage, ESXi supporta il multipathing. Con il multipathing, è possibile utilizzare più di un percorso fisico che trasferisce i dati tra l'host e un dispositivo di storage esterno.

Se si verifica un errore di qualsiasi elemento della rete SAN, ad esempio una scheda, un commutatore o un cavo, ESXi può passare a un altro percorso fisico utilizzabile. Questo processo di cambio del percorso per evitare componenti in errore è noto come failover del percorso.

Oltre al failover del percorso, il multipathing fornisce bilanciamento del carico. Il bilanciamento del carico è il processo di distribuzione dei carichi di I/O su più percorsi fisici. Il bilanciamento del carico riduce o rimuove potenziali colli di bottiglia.

Nota: L'I/O della macchina virtuale potrebbe subire un ritardo fino a 60 secondi durante il failover del percorso. Con questi ritardi, la SAN può stabilizzare la sua configurazione dopo le modifiche alla topologia. In generale, i ritardi di I/O potrebbero essere più lunghi su array attivi-passivi e più brevi sugli array attivi-attivi.

Failover con Fibre Channel

Per supportare il multipathing, nell'host sono in genere disponibili due o più HBA. Questa configurazione integra la configurazione di multipathing SAN. In genere, il multipathing SAN fornisce uno o più commutatori nel SAN fabric e uno o più processori di storage nel dispositivo array di storage stesso.

Nella figura seguente, più percorsi fisici connettono ciascun server con il dispositivo di storage. Ad esempio, se HBA1 o il collegamento tra HBA1 e il connettore FC non riesce, HBA2 prende il controllo e fornisce la connessione. Il processo di un HBA che si verifica per un altro viene chiamato failover HBA.

Figura 1. Multipathing e failover con Fibre Channel
Gli elementi grafici illustrano come un host può utilizzare più HBA per fornire il multipathing.

Allo stesso modo, se SP1 non riesce o i collegamenti tra SP1 e i commutatori si interrompono, SP2 assume il controllo. SP2 fornisce la connessione tra lo switch e il dispositivo di archiviazione. Questo processo è denominato failover SP. VMware ESXi supporta sia failover HBA che SP.

Failover basato sull'host con iSCSI

Quando si configura un host ESXi per il multipathing e il failover, è possibile utilizzare più HBA iSCSI o combinare più NIC con la scheda iSCSI software.

Per informazioni sui diversi tipi di schede iSCSI, vedere Iniziatori iSCSI.

Quando si utilizza il multipathing, si applicano considerazioni specifiche.
  • ESXi non supporta il multipathing quando si combina una scheda hardware indipendente con schede iSCSI software o iSCSI dipendenti nello stesso host.
  • Il multipathing è supportato tra schede software e dipendenti all'interno dello stesso host.
  • In host differenti, è possibile combinare schede dipendenti e indipendenti.
La figura seguente illustra le configurazioni di multipathing possibili con diversi tipi di iniziatori iSCSI.
Figura 2. Failover del percorso basato sull'host
Il grafico mostra le configurazioni di multipathing possibili con diversi tipi di iniziatori iSCSI.
iSCSI hardware e failover
Con iSCSI hardware, l'host in genere dispone di due o più schede iSCSI hardware. L'host utilizza le schede per raggiungere il sistema di storage tramite uno o più commutatori. In alternativa, l'installazione potrebbe includere una scheda e due processori di archiviazione, in modo che la scheda possa utilizzare percorsi diversi per raggiungere il sistema di storage.

Nell'illustrazione, Host1 include due schede iSCSI hardware, HBA1 e HBA2, che forniscono due percorsi fisici al sistema di storage. I plug-in percorsi multipli nell'host, che si tratti dei NMP VMkernel o di qualsiasi MPP di terze parti, possono accedere ai percorsi per impostazione predefinita. I plug-in possono monitorare l'integrità di ciascun percorso fisico. Se, ad esempio, HBA1 o il collegamento tra HBA1 e la rete non riesce, i plug-in di multipathing possono passare il percorso a HBA2.

iSCSI software e failover
Con iSCSI software, come mostrato nell'Host 2 dell'illustrazione, è possibile utilizzare più NIC che forniscono funzionalità di failover e bilanciamento del carico per le connessioni iSCSI.

I plug-in di multipathing non hanno accesso diretto alle schede NIC fisiche nell'host. Di conseguenza, per questa configurazione, è innanzitutto necessario connettere ciascuna scheda NIC fisica a una porta VMkernel separata. È quindi possibile associare tutte le porte VMkernel all'iniziatore iSCSI software utilizzando una tecnica di binding della porta. Ogni porta VMkernel connessa a una scheda NIC separata diventa un percorso diverso che può essere utilizzato dallo stack di storage iSCSI e dai relativi plug-in di multipathing con supporto dello storage.

Per informazioni sulla configurazione di multipathing per iSCSI software, vedere Configurazione della rete per iSCSI e iSER con ESXi.

Failover basato su array con iSCSI

Alcuni sistemi di storage iSCSI gestiscono l'utilizzo del percorso delle rispettive porte in modo automatico e trasparente verso ESXi.

Quando si utilizza uno di questi sistemi di storage, l'host non vede più porte nello storage e non può scegliere la porta di storage a cui connettersi. Questi sistemi hanno un singolo indirizzo di porta virtuale che l'host utilizza per comunicare inizialmente. Durante questa comunicazione iniziale, il sistema di storage può reindirizzare l'host per comunicare con un'altra porta nel sistema di storage. Gli iniziatori iSCSI nell'host rispettano questa richiesta di riconnessione e si connettono a una porta diversa nel sistema. Il sistema di storage utilizza questa tecnica per distribuire il carico tra le porte disponibili.

Se l'host ESXi perde la connessione a una di queste porte, tenta automaticamente di riconnettersi alla porta virtuale del sistema di storage e deve essere reindirizzato a una porta attiva e utilizzabile. La riconnessione e il reindirizzamento avvengono rapidamente e in genere non interrompono l'esecuzione delle macchine virtuali. Questi sistemi di storage possono anche richiedere che gli iniziatori iSCSI si riconnettano al sistema per modificare la porta di storage a cui sono connessi. Ciò consente un uso più efficace delle porte multiple.

L'illustrazione del reindirizzamento porta mostra un esempio di reindirizzamento della porta. L'host tenta di connettersi alla porta virtuale 10.0.0.1. Il sistema di storage reindirizza questa richiesta a 10.0.0.2. L'host si connette con 10.0.0.2 e utilizza questa porta per la comunicazione I/O.

Nota: Il sistema di storage non reindirizza sempre le connessioni. La porta in 10.0.0.1 può essere utilizzata anche per il traffico.
Figura 3. Reindirizzamento della porta
Reindirizzamento della porta

Se la porta nel sistema di storage che funge da porta virtuale diventa non disponibile, il sistema di storage riassegna l'indirizzo della porta virtuale a un'altra porta del sistema. La riassegnazione della porta mostra un esempio di questo tipo di riassegnazione della porta. In questo caso, la porta virtuale 10.0.0.1 diventa non disponibile e il sistema di storage riassegna l'indirizzo IP della porta virtuale a una porta diversa. La seconda porta risponde a entrambi gli indirizzi.

Figura 4. Riassegnazione della porta
L'immagine mostra un esempio di riassegnazione della porta.

Con questa forma di failover basato su array, è possibile disporre di più percorsi allo storage solo se si utilizzano più porte nell'host ESXi. Questi percorsi sono attivo-attivo. Per informazioni aggiuntive, vedere Gestione della sessione iSCSI sull'host ESXi.

Failover del percorso e macchine virtuali

Quando un percorso non riesce, l'I/O dello storage potrebbe essere sospeso per 30-60 secondi finché l'host non stabilisce che il collegamento non è disponibile ed esegue il failover. Se si tenta di visualizzare l'host, i suoi dispositivi di storage o gli adattatori, l'operazione potrebbe bloccarsi. Le macchine virtuali con i relativi dischi installati nella SAN non rispondono. Dopo il failover, l'I/O riprende normalmente e l'esecuzione delle macchine virtuali continua.

Una macchina virtuale Windows potrebbe interrompere l'I/O e infine entrare in stato di errore quando i failover impiegano troppo tempo. Per evitare l'errore, impostare il valore di timeout del disco per la macchina virtuale Windows su almeno 60 secondi.

Per evitare interruzioni durante un failover del percorso, aumentare il valore di timeout del disco standard in un sistema operativo guest Windows.

Questa procedura illustra come modificare il valore di timeout utilizzando il registro di Windows.

Suggerimento: Prima di iniziare: eseguire il backup del registro Windows.
  1. Selezionare Start > Esegui.
  2. Digitare regedit.exe e fare clic su OK.
  3. Nella vista della gerarchia del pannello sinistro, fare doppio clic su HKEY_LOCAL_MACHINE > System > CurrentControlSet > Services > Disk.
  4. Fare doppio clic su TimeOutValue.
  5. Impostare i dati del valore su 0x3c (esadecimale) o 60 (decimale) e fare clic su OK.

    Dopo aver effettuato questa modifica, Windows attende almeno 60 secondi per il completamento delle operazioni su disco con ritardo prima di generare errori.

  6. Riavviare il sistema operativo guest per rendere effettive le modifiche.