Ho notato spesso diverse richieste da parte di molti utenti su quale sia una corretta configurazione della rete quando si va ad utilizzare uno storage iSCSI, specialmente in configurazioni molto piccole.
Ho deciso quindi di scrivere in questo post come io solitamente configuro uno storage HP StorageWorks P2000 G3 e un cluster vSphere da 3 server. Se utilizzate uno storage differente, probabilmente dovrete adattare qualche configurazione, ma i concetti di base saranno i medesimi.
Hardware necessario
3 server VMware vSphere 5.x (tipicamente utilizzando una licenza Essentials Plus) . Solitamente utilizzo due schede di rete dedicate alla connettività iSCSI. Questo perchè molti server moderni sono già equipaggiati con 4 schede di rete 1Gb, quindi l’uso di due schede per la rete iSCSI lascia libere le altre due schede per le altre connessioni, ovvero management, vmotion e le varie reti per le virtual machines, e non richiede l’acquisto di ulteriori schede di rete.
2 switch ethernet 1G con almeno 7 porte libere ciascuno. Se si deve aggiungere la rete iSCSI a un’infrastruttura esistente e volete mantenere la separazione fisica della rete iSCSI, 14 porte ethernet sono sufficienti. Questa configurazione permette di isolare la rete iSCSI anche se i vostri switch già in possesso non permettono ad esempio di gestire le VLAN, dato che grazie a questi due nuovi switch realizzeremo una rete elettricamente separata, e non interconnessa a nessuna altra rete. Collegheremo 8 porte dello stoage e 2 porte di ciascun server. Il totale è 14, distribuiti su due switch per ridondanza. Se invece i due switch gestiranno al tempo stesso la rete iSCSI e la rete dati (separate tramite VLAN), allora le porte totali necessarie dovranno essere superiori, e contemplare anche le connessioni verso i clienti di rete o altri uplink.
1 storage HP P2000 iSCSI, dotato di due storage processor con 4 connessioni iSCSI ciascuno, come in figura:
Configurazione della rete
L’obiettivo di una rete storage iSCSI, come qualsiasi altro storage fabric, è quello di ridondare tutti i percorsi esistenti tra sorgente e destinazione (server ESXi e P2000 in questo caso), in modo che ogni rottura di qualsiasi elemento della catena non fermi la comunicazione tra i due. Questo è ottenibile realizzando due reti completamente separate, gestite ognuna da uno dei due switch.
Una rete iSCSI correttamente ridondata presenta numerosi indirizzi IP; questo perchè ogni path si forma tramite l’accoppiata di un IP sorgente e un IP destinazione. Per rendere semplice la configurazione degli indirizzi IP stessi, utilizzo solitamente questo schema:
Tutti gli IP della rete 1, identificata in entrambi gli schemi col colore verde, ha un IP base 10.0.10.xxx, dove appunto il 10 del terzo ottetto identifica la rete 1. Secondo lo stesso schema, la rete 2 ha indirizzo base 10.0.20.xxx. Anche i vari portgroup dei server ESXi seguono questa numerazione. In questo modo è più facile seguire lo schema di assegnazione degli indirizzi e fare in modo che ogni componente abbia un indirizzo corretto.
Configurazione di vSphere
All’interno di ogni server ESXi, bisogna per prima cosa attivare gli inizializzatori iSCSI software e impostare il binding di ognuno dei due vmkernel in modo che siano legati a una sola delle due schede di rete prescelte:
Configuriamo quindi nel Dynamic Discovery tutti i possibili target iSCSI dello storage:
Dopo aver effettuato un rescan dello storage, e configurato la Path Selection Policy in Round Robin, il risultato finale sarà simile a questo:
Ottimo articolo a cui mi permetto di aggiungere due cose, frutto dell’esperienza.
La prima: evitate quanto piu’ possibile di usare uno stesso switch per SAN e LAN. Non tanto per la separazione logica alla quale pensano le VLAN, quanto per evitare la condivisione di uno stesso switch engine tra LAN e SAN. Sebbene le reti siano separate, la logica che switcha i pacchetti e’ una sola e la condividete tra LAN e SAN. Ci sono switch HP di ottime prestazioni a prezzi molto contenuti, che non incidono minimamente sul budget di una spesa per una SAN iSCSI. In questo caso il rapporto costi/benefici e’ altissimo e non vale la pena partizionare uno switch. Tecnicamente le VLAN non hanno problemi, ma quando il carico sulla SAN si fa importante il collo di bottiglia si sente.
Il secondo e’ un consiglio hardware da “rack monkey” per riconoscere velocemente i cavi (le etichette non si leggono e i cavi colorati sono una chimera). Uno dei trucchi e’ usare destra/sinistra: le due porte ethernet di sinistra di una SAN vanno nelle porte ethernet a sinistra dello switch e nelle porte ethernet a sinistra degli host (se sono in verticale fatevi una conversione alto/bassosinistra/destra).
Stessa regola per gli alimentatori ridondanti: quelli a sinistra vanno tutti nel PDU a sinistra e quelli di destra nel PDU di destra.
Per chi si arrampica sui rack ogni giorno e’ una cosa ovvia, ma per i neofiti potrebbe non essere cosi’ immediato.
Ciao,
Come mai negli host configuri 1 vSwitch e 2 VMkernel port (1 per ogni tratto iSCSI)?
Non si potrebbe fare 1 vSwitch 1 VMkernel port per ogni tratto iSCSI?
Ciao Andrea,
il risultato finale è il medesimo, ma intanto c’è uno switch in meno da creare e configurare, e nel caso in futuro si debba avere necessità sulla stessa rete di eseguire qualcosa che richiede l’uso contemporaneo delle due schede, non si deve distruggere uno dei due switch e soprattutto uno dei due vmkernel, con conseguente perdita della ridondanza.
Grazie del chiarimento
Ciao Luca,
ti seguo sempre con piacere, ottimo design.
Ho una domanda, qualora abbia a disposizione 2×10 gb nics su un host esxi e definisco un vswitch dove ho creato diversi port group (mgmt,vmotion,iscsi,vm prod, vm dev, vm backup) abilitato la featureNOIC(licenza permetendo :-)) e settato le varie share (custom) la percentuale è calcolata sul totale 20 gb o su una sola nic?
ad esempio vm prod (nic0 e nic 1 active) share 10% ho 2 gb sempre disponibili in caso di contesa?
vmotion (nic 0 active e nic 1 standby) share 10% ho un GB disp?
grazie in anticipo
Ciao Alessio,
con due schede da 10 Gbit il totale disponibile è 20 Gbit, e con NIOC il 10% equivarrà quindi a 2 Gbit. NIOC prende in considerazione il totale delle connessioni disponibili del vSwitch, e le ripartisce ai vari portgroup secondo le regole che hai impostato.
Lo scopo primario infatti è bilanciare le stesse schede di rete tra tutti i portgroup che le utilizzano.
salve se utilizzassi come san il 1040 (causa budget) su cui sono presenti solo due porte per controller posso creare il collegamento per la ridodondanza tra i due switch al posto che tra i due controller? cosa comporterebbe?
scusate la domanda banale se lo è…
Ciao,
con solo due porte, il disegno di base è il medesimo, ovviamente manderai solo un cablaggio verso uno dei due switch.
Ciao e grazie per il vostro aiuto, premetto che non sono esperto e che non conosco bene tutti i termini tecnici ma ho necessità di risolvere un problema.
Ho Server HP con Esxi 5.5, ha 4 schede di rete di cui 2 dedicate alle VM ed alla ESXi management (mgmt) e le altre 2 dedicate esclusivamente al NAS Q-nap TS-459 ProII che ha 2 porte gigabit, utilizzato come storege iSCSI. Le due reti sono collegate con 2 switch fisici differenti.
Il mio scopo è utilizzare pienamente l’intera banda di 2Gbps dello storage. Questo perchè quando avvio molte VM in contemporanea noto un rallentamento drastico delle VM.
Ho notato che delle due porte lan del server solo una è attiva, il link status dell’altra porta lampeggia ogni tanto quindi suppongo non viene utilizzato. Viene utilizzata la seconda solo se scollego la prima, quindi il failover funziona. Nella mia ignoranza mi sembra di aver capito che nello strorage iSCSI per utilizzare la banda di entrambi
le scede di rete del nas, bisogna che siano più host (macchine fisiche) a scambiare dati con il nas, in alternativa è necessario uno switch che supporti lo standard “Link Aggregation ControlProtocol (LACP)802.3ad.
Se ho ben capito mi basta sostituire il mio switch attuale dedicato allo storage con uno che supporti tale funzione.
E’ corretto oppure faccio un acquisto inutile?
Grazie anticipatamente!!!
Perdonami, ma vedendo il modello di NAS ho forti dubbi che il limite sia la rete, quanto piuttosto lo storage stesso…
non credevo di avere a che fare con un NAS scadente 🙁
nelle specifiche dice che supporta esxi). Comunque lo switch usato che si trova tra server e NAS è un TP-link TL-SG1008. Grazie
Ciao Luca,
Seguo molto il blog, è pieno di spunti interessanti, sto per realizzare una configurazione analoga, con due switch HP, analizzando l’immagine della configurazione di rete mi chiedo dove colleghi il plug che porta la connessione? Perchè se lo connetto allo switch1 e il segnale cade anche lo switch 2 sarà down … sto dicendo una stupidaggine?
Grazie!
Scusa ma cosa intendi per plug? Penso che lo schema dei vari cablaggi sia chiaro, e non ci vedo punti di single failure.
Ciao Luca, perdonami … forse non sono stato chiaro … ma la rete internet dove la colleghi? Così è perfetto, ma questo cablaggio non ha accesso a internet … o forse non lo vedo… Grazie per i tuoi contributi …
La rete internet non fa parte del progetto, parlavo della sola infrastruttura VMware…
Ok Luca Grazie ..
Ciao Luca, intanto grazie per questo spendido BLOG, volevo chiederti in merito alla tua esperienza se avevi avuto modo di configurare e gestire soluzioni ibride di SAN ISCSI con interfaccie 10 GB dove alcuni host accedono sempre con interfacce 10 Gb mentre alcuni host con accesso ISCSI ad 1G, vorrei capire se la cosa è fattibile.
Ti ringrazio anticipataemnte
Ciao,
no non ho mai provato, e in generale mi sento di sconsigliarla. Avrai alcuni host che andranno molto veloci e altri lenti, creando quindi fluttazioni nelle prestazioni. Meglio conveertire l’intero cluster a 10G in una volta sola.
Ciao Luca, interessante articolo, complimenti!
Non mi è comunque chiaro come i due NAS storage HP P2000 iSCSI sincronizzino tra di loro le varie VM ospitate.
Se sul primo NAS HP è in esecuzione una o più VM e questo si spegne improvvisamente, l’altro NAS HP dovrebbe poter replicare lo stato della VM esattamente come era al momento dell’arresto improvviso del suo gemello.
Potresti chiarirmi il metodo di sincronizzazione tra i due NAS?
Grazie.
Ciao,
non ci sono due NAS (tecnicamente non ce n’è nemmeno uno, essendo una SAN senza share…), ma uno storage array unico, con due controller.
Ciao a tutti, configurazione perfetta per me, ma non vedo il vMotion : nel caso classico dei 2 server (con 4 NIC : 1 Management, 2 iSCSI, 1 vMotion) e i 2 switch, come nella foto, come posso cablare il vMotion ?
Mi basta effettuare un uplink tra i due switch o devo acquistare per forza un NIC in più ?
(a onor del vero potrei anche collegare direttamente i 2 server ma nell’ipotesi di aggiungere un terzo server mi piacerebbe avere un consiglio)
Ciao,
lo scopo dell’articolo era spiegare come configurare la rete storage, vmotion non è stato descritto. In reti di queste dimensioni puoi usare la stessa rete di management, oppure se i server come spesso capita oggi hanno 4 schede 1GB, le altre due nic formeranno un different vswitch dove puoi mettere management, vmotion e virtual machine.
si certo, non volevo dire che era una mancanza nel tuo articolo…
Quindi un semplice cavo di uplink tra i due switch fisici me lo sconsigli ?
(sono gli stessi switch dove faccio convergere i cavi iSCSI dei server e della SAN)
In una precedente esperienza avevo solo 1 switch per tutto quindi non mi ero posto il problema.
Se i due nuovi switch, come detto,sono dedicati solo ad iscsi, non serve un trunk tra di loro. Se invece si usano switch comuni e vlan varie, allora si metti due switch altrimenti di nuovo il singolo switch è un punto critico.
Per quante porte aggregare nel trunk, dipende dal traffico previsto ma almeno 2-4 le prevederei.