Windows Server Failover Clustering con SQL Server

Si applica a: SQL Server (tutte le versioni supportate)

Un cluster di failover WSFC (Windows Server Failover Clustering) è un gruppo di server indipendenti usati congiuntamente per aumentare la disponibilità di applicazioni e servizi. SQL Server sfrutta i servizi e le funzionalità WSFC per supportare gruppi di disponibilità Always On e istanze del cluster di failover SQL Server.

Termini e definizioni

Il cluster di failover di Windows Server (WSFC) È un gruppo di server indipendenti che interagiscono per aumentare la disponibilità di applicazioni e servizi.

Nodo
Un server che fa parte di un cluster WSFC.

Risorsa cluster
Entità fisica o logica che può essere di proprietà di un nodo e che è possibile portare online e offline, spostare tra nodi e gestire come oggetto cluster. Una risorsa cluster può essere solo di proprietà di un nodo singolo in qualsiasi punto nel tempo.

Ruolo
Raccolta di risorse cluster gestita come singolo oggetto cluster per offrire funzionalità specifiche. Per SQL Server, un ruolo sarà un gruppo di disponibilità Always On (AG) o un'istanza di cluster di failover Always On (FCI). Un ruolo contiene tutte le risorse cluster necessarie per un gruppo di disponibilità o un'istanza di cluster di failover. Failover e failback vengono sempre eseguiti in un contesto di ruoli. Per un'istanza FCI, il ruolo conterrà una risorsa indirizzo IP, una risorsa nome di rete e le risorse di SQL Server. Un ruolo AG conterrà la risorsa gruppo di disponibilità e, se un è configurato un listener, un nome rete e una risorsa IP.

Risorsa nome di rete
Nome di server logico gestito come risorsa cluster. Una risorsa nome di rete deve essere utilizzata con una risorsa indirizzo IP. Queste voci possono richiedere oggetti in Active Directory Domain Services e/o DNS.

Dipendenza dalla risorsa
Risorsa da cui dipende un'altra risorsa. Se la risorsa A dipende dalla risorsa B, B è una dipendenza di A. La risorsa A non sarà in grado di avviarsi senza la risorsa B.

Proprietario preferito
Nodo in cui si preferisce eseguire un gruppo di risorse. Ogni gruppo di risorse è associato a un elenco di proprietari preferiti ordinato in base alla preferenza. Durante il failover automatico, il gruppo di risorse viene spostato al nodo preferito successivo nell'elenco di proprietari preferiti.

Possibile proprietario
Nodo secondario in cui è possibile eseguire una risorsa. Ogni gruppo di risorse è associato a un elenco di possibili proprietari. È possibile eseguire il failover dei ruoli solo ai nodi elencati come possibili proprietari.

Modalità quorum
Configurazione del quorum in un cluster di failover che determina il numero di errori di nodo supportati dal cluster.

Forzare il quorum
Processo di avvio del cluster anche nel caso in cui sia in comunicazione solo una minoranza degli elementi richiesti per il quorum.

Panoramica di Windows Server Failover Clustering

Il clustering di failover di Windows Server offre funzionalità di infrastruttura che supportano scenari di disponibilità elevata e ripristino di emergenza di applicazioni server ospitate, ad esempio Microsoft SQL Server e Microsoft Exchange. Se si verifica un errore in un nodo o servizio cluster, i servizi ospitati su tale nodo possono essere trasferiti automaticamente o manualmente a un altro nodo disponibile in un processo noto come failover.

I nodi del cluster WSFC funzionano insieme per garantire collettivamente questi tipi di funzionalità:

  • Notifiche e metadati distribuiti. I metadati del servizio WSFC e delle applicazioni ospitate vengono gestiti in ogni nodo del cluster. I metadati includono la configurazione e lo stato di WSFC oltre alle impostazioni delle applicazioni ospitate. Le modifiche apportate ai metadati o allo stato di un nodo vengono automaticamente propagate agli altri nodi del cluster WSFC.

  • Gestione delle risorse. I singoli nodi del cluster WSFC possono rendere disponibili risorse fisiche, ad esempio l'archiviazione a collegamento diretto, le interfacce di rete e l'accesso all'archiviazione su dischi condivisi. Le applicazioni ospitate effettuano la registrazione come risorse cluster e possono configurare dipendenze di avvio e integrità su altre risorse.

  • Monitoraggio dello stato. Il rilevamento dello stato del nodo primario e tra nodi viene effettuato tramite una combinazione di comunicazioni di rete di tipo heartbeat e di monitoraggio delle risorse. Lo stato complessivo del cluster WSFC è determinato dai voti di un quorum di nodi nel cluster.

  • Coordinamento del failover. Ogni risorsa è configurata per essere ospitata su un nodo primario e può essere trasferita automaticamente o manualmente a uno o più nodi secondari. I criteri di failover basati sull'integrità controllano il trasferimento automatico della proprietà della risorsa tra i nodi. Quando si verifica il failover, viene inviata una notifica ai nodi e alle applicazioni ospitate affinché siano in grado di reagire nel modo appropriato.

Per altre informazioni, vedere Panoramica di Clustering di failover - Windows Server

Tecnologie AlwaysOn e WSFC di SQL Server

SQL Server Always On è una soluzione di ripristino di emergenza e disponibilità elevata che sfrutta WSFC. Le funzionalità Always On offrono soluzioni integrate e flessibili che aumentano la disponibilità delle applicazioni, garantiscono un migliore rendimento degli investimenti in componenti hardware e semplifica la distribuzione e la gestione della disponibilità elevata.

Sia Always On gruppi di disponibilità che Always On istanze del cluster di failover usano WSFC come tecnologia di piattaforma, registrando i componenti come risorse del cluster WSFC. Le risorse correlate vengono combinate in un ruolo, che può essere reso dipendente dalle altre risorse del cluster WSFC. WSFC può quindi rilevare e segnalare la necessità di riavviare l'istanza SQL Server o eseguirne automaticamente il failover in un nodo server diverso nel WSFC.

Importante

Per sfruttare al meglio le tecnologie SQL Server Always On, è necessario applicare diversi prerequisiti correlati a WSFC.

Per altre informazioni, vedere: Prerequisiti, restrizioni e raccomandazioni per i gruppi di disponibilità Always On (SQL Server)

Disponibilità elevata a livello di istanza con istanze del cluster di failover AlwaysOn

Un'istanza del cluster di failover Always On è un'istanza SQL Server installata tra i nodi in un'istanza WSFC. Questo tipo di istanza dipende dalle risorse per l'archiviazione e dal nome di rete virtuale. L'archiviazione può usare Fibre Channel, iSCSI, FCoE o SAS per l'archiviazione su disco condiviso o l'archiviazione collegata in locale con Spazi di archiviazione diretta (S2D). La risorsa del nome di rete virtuale dipende da uno o più indirizzi IP virtuali, ciascuno in una subnet diversa. Anche il servizio SQL Server e il servizio SQL Server Agent vengono registrati come risorse ed entrambi dipendono dalle risorse del nome di rete virtuale e di archiviazione.

In caso di failover, la proprietà delle risorse di un'istanza viene trasferita dal servizio WSFC a un nodo di failover definito. L'SQL Server istanza viene quindi avviata nuovamente nel nodo di failover e i database vengono ripristinati come di consueto. In un qualsiasi momento specifico, solo un nodo singolo nel cluster può ospitare l'istanza del cluster di failover e le risorse sottostanti.

Nota

un'istanza del cluster di failover AlwaysOn richiede l'archiviazione su disco condiviso simmetrica, ad esempio una rete di archiviazione (SAN, Storage Area Network) o una condivisione file SMB. I volumi dell'archiviazione su disco condiviso devono essere disponibili a tutti i nodi di failover potenziali nel cluster WSFC.

Per altre informazioni, vedere: istanze del cluster di failover Always On (SQL Server)

Disponibilità elevata a livello di database con gruppi di disponibilità di Always On

Un gruppo di disponibilità Always On è costituito da uno o più database utente il cui failover viene eseguito contemporaneamente. Un gruppo di disponibilità è costituito da una replica di disponibilità primaria e da una a quattro repliche secondarie gestite tramite lo spostamento dati basato su log di SQL Server per la protezione dei dati senza la necessità di archiviazione condivisa. Ogni replica è ospitata da un'istanza di SQL Server in un nodo diverso del WSFC. Il gruppo di disponibilità e un nome di rete virtuale corrispondente sono registrati come risorse nel cluster WSFC.

Un listener del gruppo di disponibilità nel nodo della replica primaria risponde alle richieste client in ingresso per connettersi al nome della rete virtuale e in base agli attributi nella stringa di connessione, reindirizza ogni richiesta all'istanza di SQL Server appropriata.

In caso di failover, anziché trasferire la proprietà delle risorse fisiche condivise in un altro nodo, WSFC viene sfruttato per riconfigurare una replica secondaria in un'altra istanza di SQL Server per diventare la replica primaria del gruppo di disponibilità. La risorsa del nome di rete virtuale del gruppo di disponibilità viene quindi trasferita a tale istanza.

In qualsiasi momento, solo una singola istanza di SQL Server può ospitare la replica primaria dei database di un gruppo di disponibilità, tutte le repliche secondarie associate devono risiedere in un'istanza separata e ogni istanza deve risiedere in nodi fisici separati.

Nota

Always On i gruppi di disponibilità non richiedono la distribuzione di un'istanza del cluster di failover o l'uso dell'archiviazione condivisa simmetrica (SAN o SMB).

È possibile utilizzare un'istanza del cluster di failover con un gruppo di disponibilità per migliorare la disponibilità di una replica di disponibilità. Per evitare potenziali race condition nel cluster WSFC, tuttavia, non è consentito eseguire il failover automatico del gruppo di disponibilità a o da una replica di disponibilità ospitata in un'istanza del cluster di failover.

Per altre informazioni, vedere Panoramica di Gruppi di disponibilità AlwaysOn (SQL Server)

Monitoraggio dello stato e failover di WSFC

La disponibilità elevata per una soluzione AlwaysOn viene realizzata attraverso il monitoraggio dello stato proattivo delle risorse cluster WSFC fisiche e logiche, insieme al failover automatico e alla riconfigurazione dell'hardware ridondante. Un amministratore di sistema può anche avviare un failover manuale di un gruppo di disponibilità o SQL Server istanza da un nodo a un altro.

Criteri di failover per nodi, istanze del cluster di failover e gruppi di disponibilità

Un criterio di failover è configurato nel nodo WSFC, nell'istanza del cluster di failover SQL Server e nei livelli del gruppo di disponibilità. Questi criteri, in base alla gravità, alla durata e alla frequenza di stato delle risorse del cluster non integri e alla velocità di risposta dei nodi, possono attivare un riavvio del servizio o un failover automatico delle risorse del cluster da un nodo a un altro oppure attivare lo spostamento di una replica primaria del gruppo di disponibilità da una SQL Server istanza a un'altra.

Il failover di una replica del gruppo di disponibilità non influisce sull'istanza di SQL Server sottostante. Con il failover di un'istanza del cluster di failover le repliche del gruppo di disponibilità ospitate vengono spostate con l'istanza.

Per altre informazioni, vedere Criteri di failover per le istanze del cluster di failover

Rilevamento dell'integrità delle risorse WSFC

Ogni risorsa di un cluster WSFC è in grado di segnalare il proprio stato e la propria integrità, periodicamente o su richiesta. Un'ampia gamma di circostanze potrebbe indicare un errore della risorsa; ad esempio, interruzione dell'alimentazione, errori di disco o memoria, errori nella comunicazione di rete o servizi che non rispondono.

È possibile rendere dipendenti l'una dall'altra risorse cluster WSFC quali reti, archiviazione o servizi. L'integrità cumulativa di una risorsa è determinata dal rollup successivo dell'integrità e con l'integrità di ognuna delle dipendenze della risorsa.

Rilevamento dell'integrità tra nodi WSFC e voto del quorum

Ogni nodo di un cluster WSFC partecipa alla comunicazione heartbeat periodica per condividere il proprio stato di integrità con gli altri nodi. I nodi che non rispondono sono considerati in stato di errore.

Il quorum è un meccanismo che consente di verificare che il cluster WSFC sia attivo e in esecuzione e che siano online risorse sufficienti nel cluster WSFC. Se il cluster WSFC ha voti a sufficienza, è integro e in grado di garantire la tolleranza di errore a livello di nodo.

Una modalità quorum è configurata nel cluster WSFC per determinare la metodologia usata per il voto del quorum, nonché quando eseguire un failover automatico o portare il cluster offline.

Suggerimento

È consigliabile avere sempre un numero dispari di voti quorum in un cluster WSFC. Ai fini del voto del quorum, non è necessario installare SQL Server in tutti i nodi del cluster. Un server aggiuntivo può fungere da membro del quorum o è possibile configurare il modello del quorum WSFC per utilizzare una condivisione file remota come elemento per la risoluzione dei conflitti.

Per altre informazioni, vedere: WSFC Quorum Modes and Voting Configuration (SQL Server)

Ripristino di emergenza eseguito forzando il quorum

A seconda delle procedure operative e della configurazione WSFC, è possibile eseguire failover sia automatici che manuali e mantenere comunque una soluzione di SQL Server Always On affidabile e a tolleranza di errore. Se tuttavia un quorum di nodi votanti idonei nel cluster WSFC non assicura la comunicazione reciproca o se la convalida dell'integrità del cluster WSFC ha esito negativo, è possibile che il cluster WSFC passi alla modalità offline.

Se il cluster WSFC passa alla modalità offline a causa di un'emergenza non pianificata o di un errore persistente a livello di hardware o di comunicazione, è necessario un intervento amministrativo manuale per forzare un quorum e riportare online i nodi del cluster ancora esistenti in una configurazione non a tolleranza d'errore.

Successivamente, sarà inoltre necessario effettuare una serie di passaggi per riconfigurare il cluster WSFC, recuperare le repliche di database interessate e ristabilire un nuovo quorum.

Per altre informazioni, vedere Ripristino di emergenza WSFC tramite quorum forzato (SQL Server)

Relazione tra componenti SQL Server Always On e WSFC

Esistono diversi livelli di relazioni tra le funzionalità e i componenti di SQL Server Always On e WSFC.

Always On gruppi di disponibilità sono ospitati in istanze di SQL Server.
Una richiesta client che specifica un nome di rete del listener del gruppo di disponibilità logico per connettersi a un database primario o secondario viene reindirizzata al nome di rete dell'istanza appropriata dell'istanza di SQL Server sottostante o SQL Server'istanza del cluster di failover.

Le istanze di SQL Server sono ospitate attivamente in un solo nodo.
Se presente, un'istanza di SQL Server autonoma risiede sempre in un singolo nodo con un nome di rete dell'istanza statica. Se presente, un'istanza del cluster di failover di SQL Server è attiva in uno dei due o più nodi di failover possibili con un singolo nome di rete dell'istanza virtuale.

I nodi sono membri di un cluster WSFC.
I metadati e lo stato della configurazione WSFC per tutti i nodi sono archiviati in ciascun nodo. In ciascun server possono essere disponibili volumi di archiviazione o archiviazione condivisa (SAN) asimmetrica per i database utente o di sistema. Ogni server dispone almeno di un'interfaccia di rete fisica su una o più subnet IP.

Il servizio WSFC consente di monitorare l'integrità e di gestire la configurazione per un gruppo di server.
I meccanismi WSFC propagano le modifiche ai metadati di configurazione WSFC e lo stato a tutti i nodi del cluster WSFC. Se si usa un disco di controllo, anche i metadati vengono salvati sul disco. Per impostazione predefinita, ogni nodo del cluster WSFC ottiene un voto del quorum e, se necessario, viene usato e configurato un controllo.

Always On chiavi del Registro di sistema dei gruppi di disponibilità sono sottochiavi del cluster WSFC.
Se si elimina e si ricrea un cluster WSFC, è necessario disabilitare e riabilitare la funzionalità Always On gruppi di disponibilità in ogni istanza del server abilitata per Always On gruppi di disponibilità nel cluster WSFC originale. Per altre informazioni, vedere Abilitare e disabilitare Always On gruppi di disponibilità (SQL Server).For more information, see Enable and Disable Always On Availability Groups (SQL Server).

Diagramma del contesto del componente SQL Server Always On

Attività correlate

Contenuto correlato

Vedere anche

Istanze del cluster di failover Always On (SQL Server)
Panoramica di Gruppi di disponibilità AlwaysOn (SQL Server)
Modalità quorum WSFC e configurazione del voto (SQL Server)
Failover Policy for Failover Cluster Instances
Ripristino di emergenza WSFC tramite quorum forzato (SQL Server)
SQL Server 2016 Supports Windows Server 2016 Storage Spaces Direct (Supporto di SQL Server 2016 per Spazi di archiviazione diretta di Windows Server 2016)