Realizzare un Cluster con Windows 2008 Server Enterprice R2

Vediamo come fare

Per realizzare un cluster occorrono tre macchine di cui una configurata come PDC (Primary Domain Controller) e le altre due come Server appartenenti allo stesso dominio. Da tenere in considerazione che solo le versioni Enterprise e DataCenter possono avvalersi del servizio di Failover Cluster.
Per prima cosa occorre provvedere all’installazione della infrastruttura necessaria composta da tre macchine virtuali Windows Server 2008 Enterprise Edition con le seguenti configurazioni riportate nella seguente tabella.

Tabella per cluster windows

Tabella 1 - Dati di configurazione del Cluster

Una volta installate le tre macchine, provvediamo a impostare i nomi delle macchine così come riportati nella Tabella 1. Ora dobbiamo impostare le schede di rete dei server: accedete come Administrator locale e cliccate su Start, Settings e Network Connection. Rinominate le connessioni presenti in Public Network e Private Network come riportato nella figura 2. Ripetere questa operazione per le macchine node1 e node2.

 

impostare la rete

Figura 2 - Configurazione schede di rete


Accediamo alle due interfacce Public Network e Private Network e disabilitiamo i flag dei servizi che non andremo ad utilizzare così come riportato nella figura 3.

Servuzi che non servono

Figura 3 - Disabilitazione servizi inutilizzati

Andiamo a configurare le due interfacce di rete così come riportato nella Tabella 1, una volta completate le configurazioni, eseguendo un ipconfig, ci troveremo in una situazione come quella della figura 4 e 5.

nodo1

Figura 4 - Nodo 1

 

nodo2

Figura 5 - Nodo 2

A questo punto eseguire la procedura per inserire le due macchine Nodo1 e Nodo2 membri del dominio precedentemente creato nel server PDC.

Le modalità di storage permesse in Windows Server 2008 sono modalità che supportano la Persistance Reservation e sono:

  • Fiber Channel
  • ISCSI
  • SAS (Serial Attached SCSI)

 

Il Disco di Quorum, è un disco condiviso, nel quale vengono memorizzate tutte le informazioni di configurazione del Failover Cluster, tali informazioni sono disponibili a tutte le macchine appartenenti al cluster. Rispetto alla precedente versione, in Windows Server 2008 Enterprise, vedremo che il disco di Quorum potrà anche non essere utilizzato.

Windows Server 2008 possiamo decidere la modalità di Quorum da applicare al nostro cluster, in questo articolo verrà analizzata la modalità di Node and File Share Majority particolarmente adatta ad applicazioni distribuite geograficamente in cui diversi nodi distribuiti in reti differenti collaborano tra loro.
In Windows Server 2003, le risorse del cluster, si avvalevano sempre di un disco di Quorum condiviso nel quale tutti i nodi appartenenti al cluster andavano a propagare le loro configurazioni. Ovviamente l’utilizzo di un disco dove immagazzinare le informazioni di Quorum ha dei vantaggi e degli svantaggi. Il più palesemente ovvio è quello che se su tale disco avviene un guasto, tutto il cluster si ferma e non risulta più utilizzabile fino ad un suo corretto ripristino.
Per ovviare a questo tipo di problema, in Windows Server 2008 sono state introdotte delle novità sul modello implementativo di quorum, estendendone il funzionamento applicabile in scenari dove è possibile limitare l’uso dei dischi condivisi.
Di seguito vengono riassunte le modalità di Quorum utilizzabili in Windows Server 2008:


Disk Only - figura 6: In questo caso si utilizza esclusivamente il disco di Quorum, e quindi di fatto non è altro che il modello presente in Windows Server 2003 nel quale basta che un solo nodo possa accedere al disco di Quorum per far si che il cluster risulti attivo.

solo disco

Figura 6 - Disk Only

 

Node and Disk Majority - figura 7: Viene assegnato un voto ad ogni nodo del cluster compreso il disco di quorum. Se la somma dei voti dei presenti (compreso il disco di Quorum) risulta essere maggiore del totale dei votanti / 2 il cluster rimane attivo. In questo caso posso perdere il disco di Quorum oppure un nodo affinché il cluster risulti attivo.

Node and Disk Majority

Figura 7 - Node and Disk Majority

 

Majority Based Quorum - figura 8: Viene assegnato un voto ad ogni nodo del cluster. Se la somma dei voti dei presenti risulta essere maggiore del totale dei votanti / 2 il cluster rimane attivo. In questo caso perdendo il disco di quorum il cluster risulterà essere ancora attivo.

 Majority Based Quorum

Figura 8 - Majority Based Quorum

 

Node and File Share Majority - figura 9: In questo caso come nel precedente non esistono dischi di Quorum ed ogni nodo detiene un voto. L’innovazione in questo caso è permettere ad una cartella condivisa su un altro server di immagazzinare la configurazione del cluster, tale Shared Folder conterà un voto. Questo modalità è la più adatta da utilizzare per cluster distribuiti geograficamente.

Node Majority

Figura 9 - Node Majority

 

Node and File Share Majority - figura 10: In questo caso come nel precedente non esistono dischi di Quorum ed ogni nodo detiene un voto. L’innovazione in questo caso è permettere ad una cartella condivisa su un altro server di immagazzinare la configurazione del cluster, tale Shared Folder conterà un voto. Questo modalità è la più adatta da utilizzare per cluster distribuiti geograficamente.

 Node and File Share Majority

Figura 10 - Node and File Share Majority

 

Scelta la modalità di Quorum da utilizzare, andiamo ad installare il software necessario per procedere nella creazione del Cluster. Effettuare tali passaggi per entrambe le macchine node1 e node2. Accedere tramite il tasto destro su My Computer e selezionare Manage - figura 11

manager

Figura 11 - Gestione computer

Attendere il completamento del reperimento delle informazioni relative alla configurazione software e selezionare Add Features all’interno della Features Summary.
Nel wizard Add Features, figura 12, selezionare Failover Clustering, cliccate su Next ed attendere il completamento dell’installazione.

Aggiunta componente Clustering

Figura 12 - Aggiunta componente Clustering

Rieseguendo un ipconfig –all su entrambe le macchine vedremo che verrà allocata una nuova connessione chiamata Microsoft Failover Cluster Virtual Adapter con il Mac Address della scheda relativa alla Public Network.
Attenzione: Se state provando il cluster di Failover in ambiente virtualizzato, se verrà copiato il file VHD con l’installazione del Failover Cluster, la Validate Configuration restituirà un errore in quanto troverà lo stesso MAC Address per tutte e due le connessioni del Microsoft Failover Cluster Virtual Adapter. Per tanto occorrerà copiare il file vhd prima di aver installato il servizio di Failover Cluster e il processo di installazione dovrà essere ripetuto su ogni macchina.
Nel verificarsi di problemi relativi alla duplicazione di indirizzi IP in ambiente virtualizzato relativamente ad adapter nascosti come ad esempio Teredo tunneling pseudo-interface, è possibile accedere al Device Manager (Click destro su Computer e poi Proprieties) e selezionare nel menu View -> Show hidden devices, figura 13.

Device Manager

Figura 13 - Device Manager

Per disabilitare il device cliccare con il tasto destro sul device e selezionare Disable, confermare poi la scelta. Rieffettuando un ipconfig –all non tale interfaccia non sarà più presente nella lista delle connessioni del nostro sistema operativo.
Accedere al Pannello di controllo della macchina node1 ed aprire gli Administrative Tools, troveremo un collegamento al software precedentemente installato come mostra la figura 14.

Failover Cluster Management

Figura 14 - Failover Cluster Management

Eseguito lo SnapIn Failover Cluster Management ci troveremo di fronte al pannello di configurazione, come mostra la figura 15.

Console gestione cluster

Figura 15 - Console gestione cluster

La prima cosa che occorre effettuare, prima di andare a creare un Failover Cluster su Windows Server 2008, è verificare la congruenza tra le macchine con la Validate Configuration.
A differenza del precedente sistema Windows Server 2003 (che si avvaleva di HLC - Hardware Compatibilità List, ovvero una sorta di lista di hardware che veniva indicato da Microsoft come conforme per essere utilizzato per la configurazione in cluster). In Windows Server 2008 viene introdotto il concetto di Validazione del Cluster, ovvero uno step di installazione nel quale vengono rilevati eventuali incompatibilità tra le varie macchine che verranno utilizzate. Ma cosa fa nello specifico lo strumento di Validazione del Cluster?
- Tutti i nodi abbiano uguale versione di sistema operativo e che abbiano installati gli stessi Service Pack e gli stessi Hot Fix.
- Tutti i nodi abbiano la stessa architettura di CPU (64 o 32 bit)
- Tutti i nodi facciano parte di un dominio Active Directory.
- Tutti i nodi abbiano Driver firmati e che tutte le schede di rete siano configurate correttamente.
- Ogni scheda di rete abbia un diverso indirizzo IP e che tali schede di rete non abbiano una latenza troppo elevata.
- Lo Storage sia compatibile alla Persistence Reservation e che non abbia una latenza troppo elevata.
- Tutti i nodi del Cluster possano comunicare tra di loro.
- La simulazione di un Failover dia esito positivo.
Avviamo quindi la Validate Configuration cliccando sul link - figura 16 - presente nel centro del pannello principale.

Figura 17 - Avvio del validate configuration

Figura 16 - Avvio del validate configuration

Verrà richiesto di specificare i nomi che vogliamo rendere disponibili al servizio di Clustering. Selezionate tramite il tasto Browse le macchine node1 e node2, cliccate su Next e selezionate Run All Test.
Attenzione: In Virtual Server è possibile che venga rilevato un conflitto di IP Address perché non sono stati riallocati i Mac Address delle schede di rete. Se tale conflitto dovesse essere rilevato, effettuare lo Shutdown delle due macchine, accedere a Virtual Server e cambiare da Dinamico a Statico la tipologia di allocazione del mac address per entrambe le macchine node1 e node2. Se tale problema dovesse ripresentarsi ancora, eseguire lo Shutdown di entrambe le macchine e eliminare tutti i network Adapter e riallocarli nuovamente da Virtual Server.
In questo caso verrà riportato dalla Validate Configuration, un Warning relativo all’assenza di dischi di Quorum.

Questo Warning ci permette di proseguire comunque nella creazione del nostro cluster poiché è possibile utilizzare modalità di Quorum senza disco condiviso. Nel nostro caso possiamo scegliere tra una modalità di tipo Node and File Share Majority (come nel nostro caso) oppure un Node Majority che però non viene consigliato per una configurazione minore di tre nodi.
Una volta terminato il test, verrà avviata la schermata Summary dove sarà possibile tramite il tasto View Report analizzare tutti i passaggi di validazione effettuati dal Wizard e salvare il file generato in formato html.
Eseguito il processo di validazione, a questo punto sarà creare il Cluster. La prima cosa che ci verrà richiesta dal Wizard sarà di specificare i server che ne faranno parte, esattamente come fatto in precedenza per la Validazione del cluster. Tramite il tasto Browse digitiamo node e clicchiamo su ok. Selezioniamo le macchine node1 e node2 e clicchiamo nuovamente su OK.
Una volta ritornati nella maschera Select Servers, clicchiamo su Next, dove ci verrà richiesto di specificare il Cluster Name ovvero il nome DNS al quale risponderà l’indirizzo IP condiviso del cluster e digitiamo matrix, come indica la figura 17.
Notare che verranno visualizzate le reti sulle quali sono affacciate le interfacce di rete; definiamo nel box Address l’indirizzo IP 10.0.0.1 che verrà utilizzato per accedere al cluster matrix.

Figura 17 - Creazione cluster

Figura 17 - Creazione cluster

Clicchiamo su Next per visualizzare il resoconto di installazione, figura 18.

Figura 18 - Resoconto installazione

Figura 18 - Resoconto installazione

Cliccate nuovamente su Next per permettere al Wizard di completare la creazione del cluster.
Una volta terminato, accedendo alla macchina PDC in Active Directory Users and Computers troveremo il nome MATRIX correttamente impostato dal Wizard, come mostra la figura 19.

Figura 19 - Elenco computer presenti in AD

Figura 19 - Elenco computer presenti in AD

Come abbiamo analizzato in precedenza, essendo non in possesso di un disco di Quorum, le possibilità che abbiamo di configurare il nostro cluster in assenza di un disco di persistenza sono da scegliere tra le modalità Node and File Share Majority e Node Majority. Per accedere alla configurazione della modalità di quorum, clicchiamo con il tasto destro del mouse sul nome del cluster e selezioniamo More Actions e infine clicchiamo su Configure Cluster Quorum Settings come mostra la figura 20.

Figura 20 - Configurazione avanzata

Figura 20 - Configurazione avanzata

Notare che il sistema per il numero di nodi utilizzati ci sconsiglia la configurazione Node Majority, quindi clicchiamo sull’opzione Node and File Share Majority e clicchiamo su Next. A questo punto ci viene richiesta la directory condivisa alla quale farà riferimento il Cluster per inserire le informazioni inerenti la sua configurazione.
La cartella condivisa è stata creata nel mio caso sulla macchina PDC ed è stata chiamata SharedFolder. Digitiamo quindi file://10.0.0.100/SharedFolder e clicchiamo su Next per proseguire.

Figura 21 - Configurazione file share

Figura 21 - Configurazione file share

Verranno visualizzate delle informazioni di riepilogo, clicchiamo su Next per completare l’operazione.
La nuova modalità di Quorum è stata configurata correttamente. A questo punto dobbiamo preoccuparci di quale rete verrà esposta verso l’esterno e quale rete invece permetterà di far scambiare alle macchine del cluster il segnale di heartbeat.
Accediamo quindi alla Failover Cluster Management e clicchiamo sul più presente accanto al nome del cluster, nel mio caso matrix.dynamicweb.local. Clicchiamo sul nodo Networks dove noteremo la presenza di due reti chiamate Cluster Network 1 e Cluster Network 2. Clicchiamo con il tasto destro sulla Cluster Network 1 e rinominiamola in Private come mostra la figura 22.

Figura 22 - Rinominazione cluster network 1

Figura 22 - Rinominazione cluster network 1

Tramite questa rete il cluster scambierà il segnale di heartbeat e su questa rete non verranno accettate connessioni client. Facciamo la stessa cosa per la Cluster Network 2 rinominandola in Public, figura 23, a questo punto abilitiamo il flag Allow client to connect through this network. Su questa rete verranno accettate le connessioni client verso i servizi ospitati all’interno del Failover Cluster.

Figura 23 - Rinominazione cluster network 2

Figura 23 - Rinominazione cluster network 2

Quando si parla di Failover Cluster, si intende un insieme di macchine che non suddividono il carico elaborativi (come nel caso di un gruppo di macchine che ne dividono il carico), ma danno ridondanza applicativa. In caso di mancato servizio da parte di una delle macchine appartenenti al cluster, tale servizio verrà reso disponibile da un’altra macchina appartenente allo stesso gruppo.