Condividi tramite


Istanze del cluster di failover Always On (SQL Server)

Si applica a:SQL Server

Le istanze del cluster di failover AlwaysOn di SQL Server usano cluster di failover Windows Server (Windows Server Failover Clustering, WSFC) per offrire disponibilità elevata locale. Un'istanza del cluster di failover (failover cluster instance, FCI) è ridondante a livello di istanza del server. Un'istanza del cluster di failover è una singola istanza di SQL Server installata nei nodi del cluster Windows Server e, possibilmente, in più subnet. In rete, un'istanza del cluster di failover appare come un'istanza di SQL Server in esecuzione in un singolo computer, le cui funzionalità forniscono il failover da un nodo WSFC a un altro, quando il nodo corrente non è più disponibile.

Un'istanza del cluster di failover può sfruttare i gruppi di disponibilità Always On per offrire il ripristino di emergenza remoto a livello di database. Per altre informazioni, vedere Clustering di failover e gruppi di disponibilità AlwaysOn (SQL Server).

Le istanze del cluster di failover di SQL Server supportano Spazi di archiviazione diretta per le risorse di archiviazione cluster, introdotte in Windows Server 2016 Datacenter Edition. Per altre informazioni, vedere Spazi di archiviazione diretta in Windows Server 2016.

Le istanze del cluster di failover supportano anche volumi condivisi cluster (CSV). Per altre informazioni, vedere Informazioni sui volumi condivisi del cluster in un cluster di failover.

Nota

SQL Server 2025 (17.x) Preview introduce il supporto per applicare connessioni rigorose all'istanza del cluster di failover.

Vantaggi delle istanze del cluster di failover

In caso di errore hardware o software del server, le applicazioni o i client che si connettono al server riscontrano tempi di inattività. I nodi ridondanti garantiscono la disponibilità dell'istanza di SQL Server quando è in un cluster di failover anziché un'istanza autonoma. Solo un nodo per volta nell'istanza del cluster di failover possiede il gruppo di risorse WSFC. Se si verifica un errore (ad esempio un errore hardware, un errore del sistema operativo, un errore dell'applicazione o del servizio) o durante un aggiornamento pianificato, il cluster sposta la proprietà del gruppo di risorse in un altro nodo WSFC. Questo processo è trasparente per il client o l'applicazione che si connette a SQL Server. Il processo riduce al minimo il tempo di inattività dell'applicazione o dei client durante un errore. Ecco alcuni vantaggi principali offerti da istanze del cluster di failover di SQL Server:

  • Protezione a livello di istanza tramite ridondanza.

  • Failover automatica in caso di malfunzionamento (malfunzionamenti hardware, malfunzionamenti del sistema operativo o malfunzionamenti delle applicazioni e dei servizi).

    Importante

    In un gruppo di disponibilità, il failover automatico da un'istanza di failover ad altri nodi all'interno del gruppo di disponibilità non è supportato. Pertanto, le istanze del cluster di failover e i nodi autonomi non devono essere abbinate all'interno di un gruppo di disponibilità se il failover automatico è un componente importante della soluzione a disponibilità elevata. Tuttavia, è possibile creare questo accoppiamento per il ripristino di emergenza .

  • Supporto per un'ampia gamma di soluzioni di archiviazione, tra cui dischi cluster WSFC (iSCSI, Fiber Channel e così via) e condivisioni file SMB (Server Message Block).

  • Ripristino di emergenza tramite un'istanza del cluster di failover su più subnet o l'esecuzione di un database ospitato dall'istanza del cluster di failover all'interno di un gruppo di disponibilità. Con il supporto di più subnet in SQL Server 2012 (11.x), un'istanza del cluster di failover su più subnet non richiede una LAN virtuale. Questo supporto aumenta la gestibilità e la sicurezza di un'istanza del cluster di failover su più subnet.

  • Nessuna riconfigurazione di applicazioni e client durante i failover.

  • Criteri di failover flessibili per gli eventi del trigger granulari per failover automatici.

  • Failover affidabili tramite il rilevamento di integrità periodico e dettagliato utilizzando connessioni dedicate e persistenti.

  • Configurabilità e prevedibilità della durata del failover tramite checkpoint di background indiretti.

  • Uso delle risorse rallentato durante i failover.

Consigli

In un ambiente di produzione usare indirizzi IP statici in combinazione con l'indirizzo IP virtuale di un'istanza del cluster di failover.

Evitare di usare DHCP in un ambiente di produzione. In caso di inattività, se il lease IP DHCP scade, è necessario tempo aggiuntivo per registrare nuovamente il nuovo indirizzo IP DHCP associato al nome DNS.

Panoramica dell'istanza del cluster di failover

Un'istanza del cluster di failover viene eseguita in un gruppo di risorse WSFC con uno o più nodi WSFC. Quando l'istanza del cluster di failover viene avviata, uno dei nodi presume la proprietà del gruppo di risorse e attiva la modalità online dell'istanza di SQL Server. Le risorse di proprietà di questo nodo includono:

  • Nome rete
  • Indirizzo IP
  • Dischi condivisi
  • Servizio Motore di database di SQL Server
  • Servizio Agente di SQL Server
  • Servizio SQL Server Analysis Services, se installato
  • Una risorsa di condivisione file, se la funzionalità FILESTREAM è installata

In qualsiasi momento, solo il proprietario del gruppo di risorse, e nessun altro nodo nell'istanza del cluster di failover, esegue i rispettivi servizi di SQL Server nel gruppo di risorse. Quando si verifica un failover, che si tratti di un failover automatico o di un failover pianificato, si verifica la sequenza di eventi seguente:

  1. A meno che non si verifichi un errore hardware o di sistema, tutte le pagine dirty della cache del buffer vengono scritte su disco.

  2. Tutti i rispettivi servizi SQL Server nel gruppo di risorse vengono arrestati sul nodo attivo.

  3. La proprietà del gruppo di risorse viene trasferita a un altro nodo nell'istanza del cluster di failover.

  4. I servizi SQL Server vengono avviati dal nuovo proprietario del gruppo di risorse.

  5. Le richieste di connessione dell'applicazione client vengono indirizzate automaticamente al nuovo nodo attivo usando lo stesso nome di rete virtuale.

L'istanza del cluster di failover è online, purché il cluster WSFC sottostante sia in buone condizioni di integrità del quorum. La maggior parte dei nodi WSFC quorum è disponibile come destinazioni di failover automatico. Quando il cluster WSFC perde il quorum, sia a causa di hardware, software o errore di rete o configurazione del quorum non corretta, l'intero cluster WSFC, insieme all'istanza del cluster di failover, viene portato offline. Quindi, in questo scenario di failover non pianificato è richiesto l'intervento manuale per ristabilire il quorum nei nodi disponibili restanti in modo da riportare il cluster WSFC e l'istanza del cluster di failover online. Per altre informazioni, vedere Modalità quorum WSFC e configurazione del voto (SQL Server).

Tempo di failover stimabile

A seconda di quando l'istanza di SQL Server ha eseguito l'ultima operazione di checkpoint, è possibile che vi sia un numero sostanziale di pagine dirty nella cache del buffer. Di conseguenza, i failover durano per tutto il tempo che occorre per scrivere le pagine dirty restanti sul disco che può comportare un tempo di failover lungo e imprevedibile. A partire da SQL Server 2012 (11.x), l'istanza del cluster di failover può usare checkpoint indiretti per limitare il numero di pagine dirty mantenute nella cache del buffer. Anche se questo usa più risorse con carichi di lavoro regolari, rende il tempo di failover più prevedibile e più configurabile. Ciò è utile quando il contratto di servizio nell'organizzazione specifica l'obiettivo del tempo di ripristino (RTO) per la soluzione a disponibilità elevata. Per altre informazioni, vedere Checkpoint indiretti.

Criteri di failover flessibili e monitoraggio dell'integrità affidabile

Dopo l'avvio dell'istanza del cluster di failover, il servizio WSFC monitora sia l'integrità del cluster WSFC sottostante che l'integrità dell'istanza di SQL Server. A partire da SQL Server 2012 (11.x), il servizio WSFC usa una connessione dedicata per eseguire il polling dell'istanza di SQL Server attiva per la diagnostica dettagliata dei componenti tramite una stored procedure di sistema. Esistono tre implicazioni risultanti:

  • La connessione dedicata all'istanza di SQL Server consente di eseguire il polling costantemente in modo affidabile per la diagnostica dei componenti, anche quando il carico di lavoro dell'istanza del cluster di failover è elevato. Questa funzionalità consente di distinguere tra un sistema sottoposto a carico elevato e un sistema con condizioni di errore, impedendo così problemi come i falsi failover.

  • La diagnostica dettagliata dei componenti consente di configurare un criterio di failover più flessibile, in cui è possibile scegliere quali condizioni di errore attivano i failover.

  • La diagnostica dettagliata dei componenti abilita anche una migliore risoluzione dei problemi dei failover automatici in modo retroattivo. Le informazioni di diagnostica vengono archiviate in file di log che vengono collocati insieme ai log degli errori di SQL Server. È possibile caricarli nel Visualizzatore file di log per controllare gli stati del componente che portano all'occorrenza del failover per determinare cosa ha causato il failover.

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

Configurare la crittografia TLS 1.3

SQL Server 2025 (17.x) Preview introduce il supporto TDS 8.0 , che consente di applicare la crittografia TLS 1.3 per la comunicazione tra il cluster di failover di Windows Server e le istanze del cluster di failover.

Per iniziare, vedere Connettersi con la crittografia rigorosa.

Elementi di un'istanza del cluster di failover

Un'istanza del cluster di failover è costituita da un set di server fisici (nodi) che contengono una configurazione hardware simile e una configurazione software identica che include la versione del sistema operativo e il livello di patch e la versione di SQL Server, il livello di patch, i componenti e il nome dell'istanza. È necessaria una configurazione software identica per garantire che l'istanza del cluster di failover possa essere completamente funzionante quando esegue il failover tra i nodi.

Gruppo di risorse WSFC

Un'istanza del cluster di failover di SQL Server viene eseguita in un gruppo di risorse WSFC. Ogni nodo del gruppo di risorse gestisce una copia sincronizzata delle impostazioni di configurazione e delle chiavi del Registro di sistema con segno di spunta per garantire la funzionalità completa dell'istanza del cluster di failover dopo un failover. Solo uno dei nodi nel cluster è proprietario del gruppo di risorse alla volta (il nodo attivo). Il servizio WSFC gestisce il cluster del server, la configurazione del quorum, i criteri di failover e le operazioni di failover oltre al nome della rete virtuale e agli indirizzi IP virtuali per l'istanza del cluster di failover. Se si verifica un errore (errori hardware, errori del sistema operativo o errori dell'applicazione e del servizio) o un aggiornamento pianificato, la proprietà del gruppo di risorse viene spostata in un altro nodo dell'istanza del cluster di failover. Il numero di nodi supportati in un gruppo di risorse WSFC dipende dall'edizione di SQL Server. Inoltre, lo stesso cluster WSFC può eseguire più istanze del cluster di failover (più gruppi di risorse), a seconda della capacità hardware, ad esempio CPU, memoria e numero di dischi.

File binari di SQL Server

I file binari del prodotto vengono installati localmente in ogni nodo dell'istanza del cluster di failover in un processo simile alle installazioni autonome di SQL Server. Tuttavia, durante l'avvio, i servizi non vengono avviati automaticamente ma gestiti da WSFC.

Immagazzinamento

A differenza di un gruppo di disponibilità, un'istanza del cluster di failover deve usare l'archiviazione condivisa tra tutti i nodi dell'istanza del cluster di failover per l'archiviazione di database e log. L'archiviazione condivisa può essere sotto forma di dischi cluster WSFC, dischi in una san, spazi di archiviazione diretta o condivisioni file in un SMB. Pertanto, tutti i nodi nell'istanza del cluster di failover hanno la stessa visualizzazione dei dati dell'istanza ogni volta che si verifica un failover. Ciò significa, tuttavia, che l'archiviazione condivisa ha il potenziale di essere il singolo punto di errore e che l'istanza del cluster di failover dipende dalla soluzione di archiviazione sottostante per garantire la protezione dei dati.

Nome rete

Il nome della rete virtuale per l'istanza del cluster di failover fornisce un punto di connessione unificato per l'istanza del cluster di failover. Questo punto di connessione unificato consente alle applicazioni di connettersi al nome della rete virtuale senza dover conoscere il nodo attualmente attivo. Quando si verifica un failover, il nome della rete virtuale viene registrato nel nuovo nodo attivo dopo l'avvio. Questo processo è trasparente per il client o l'applicazione che si connette a SQL Server e riduce al minimo il tempo di inattività dell'applicazione o dei client durante un errore.

Lo screenshot seguente mostra il nome di rete per l'istanza del cluster di failover in Gestione cluster di failover:

Screenshot del nome di rete dell'istanza del cluster di failover in Gestione cluster di failover.

IP virtuali

Nel caso di un'istanza del cluster di failover su più subnet, un indirizzo IP virtuale viene assegnato a ogni subnet nell'istanza del cluster di failover. Durante un failover, il nome della rete virtuale nel server DNS viene aggiornato in modo da puntare all'indirizzo IP virtuale per la rispettiva subnet. Le applicazioni e i client possono quindi connettersi all'istanza del cluster di failover usando lo stesso nome di rete virtuale dopo un failover su più subnet.

Concetti e attività di failover di SQL Server

Concetti e attività Articolo
Descrive il meccanismo di rilevamento dell'errore e i criteri di failover flessibili. Criteri di failover per le istanze del cluster di failover
Descrive i concetti dell'amministrazione e della manutenzione dell'istanza del cluster di failover. Amministrazione e manutenzione dell'istanza del cluster di failover
Descrive la configurazione e i concetti relativi a più subnet. Clustering su più subnet di SQL Server

Configurazione supportata dall'istanza del cluster di failover di SQL Server in WSFC

Le istanze del cluster di failover di SQL Server basate su WSFC sono supportate nei prodotti seguenti:

  • Windows Server 2012
  • Windows Server 2012 R2
  • Edizioni Standard e Datacenter di Windows Server 2016
  • Edizioni Standard e Datacenter di Windows Server 2019
  • Edizioni Standard e Datacenter di Windows Server 2022

Windows Server offre due tipi di servizi di clustering:

Solo le soluzioni del cluster server possono essere usate insieme a SQL Server per la disponibilità elevata se un nodo viene perso o se si verifica un problema con un'istanza di SQL Server. Il bilanciamento del carico di rete può essere usato in alcuni casi insieme alle installazioni di SQL Server di sola lettura autonome.

Ogni istanza del cluster di failover di SQL Server richiede:

  • Gruppo di cluster dedicato con lettere di unità disco assegnate in modo univoco.
  • Almeno un indirizzo IP univoco.
  • Nomi univoci di istanza e server virtuali all'interno del dominio.

Supporto della soluzione cluster non Microsoft

SQL Server viene sviluppato e testato con il clustering di Microsoft Server. Se si usa un prodotto clustering non Microsoft, il contatto principale del supporto tecnico per problemi di installazione, prestazioni o comportamento del cluster deve essere il provider di soluzioni. Microsoft offre supporto commerciale ragionevole per le installazioni di cluster non Microsoft, in modo analogo al supporto per le distribuzioni autonome di SQL Server.

Numero di nodi supportati

Per informazioni dettagliate sul numero massimo di nodi supportati per le istanze del cluster di failover Always On, vedere:

Sistema operativo supportato

Per informazioni sui sistemi operativi supportati per il clustering di failover di SQL Server, vedere Verificare il sistema operativo prima di installare il clustering di failover.

Unità montate

L'uso di unità montate non è supportato nei cluster che includono un'installazione di SQL Server. Per altre informazioni, vedere Supporto di SQL Server per i volumi montati.

Volumi condivisi cluster

SQL Server 2012 (11.x) e versioni precedenti non supportano l'uso di CSV per SQL Server in un cluster di failover.

Per informazioni sull'uso di CSV con SQL Server 2014 (12.x) o versioni successive, vedere le risorse seguenti:

Restrizioni del controller di dominio

Le istanze del cluster di failover di SQL Server non sono supportate nei nodi dell'istanza del cluster di failover configurati come controller di dominio.

Considerazioni sulla migrazione del dominio

Non è possibile eseguire la migrazione di SQL Server 2005 (9.x) e versioni successive a un nuovo dominio. È necessario disinstallare e reinstallare i componenti del cluster di failover. Per altre informazioni, vedere Spostare un cluster Windows Server da un dominio a un altro.

Prima di disinstallare SQL Server, seguire questa procedura:

  • Impostare SQL Server per usare la sicurezza in modalità mista o aggiungere nuovi account di dominio agli account di accesso di SQL Server.

  • Rinominare la DATA cartella che contiene i database di sistema in modo che possa essere scambiata nuovamente dopo la nuova installazione per ridurre i tempi di inattività.

  • Non rimuovere i file di supporto di SQL Server, SQL Server Native Client, Integration Services o Componenti workstation, a meno che non si ricompila l'intero nodo.

Avvertimento

Se si verificano errori durante il processo di disinstallazione, potrebbe essere necessario ricompilare il nodo per installare di nuovo SQL Server.