Le interruzioni e gli errori di sistema sono dolorosi per i DBA, ma lo sono ancora di più per i clienti. Gli utenti di oggi si aspettano una disponibilità quasi del 100% e qualsiasi cosa in meno è motivo di irritazione se sei fortunato e perdita di un cliente se non lo sei.
Uno degli obiettivi principali del DBA è garantire che le istanze e i database di SQL Server rimangano online e funzionino dopo un errore o un'interruzione. Un metodo per aumentare la disponibilità è configurare i cluster di failover di Windows Server con SQL Server.
Un cluster di failover è un gruppo di server che collaborano per mantenere la disponibilità delle applicazioni e dei servizi in caso di interruzione o guasto. Fondamentalmente, il cluster di failover prende tutti i dati ospitati in un'istanza di SQL Server e li installa in un repository di archiviazione condiviso, in genere su una SAN, a cui è possibile accedere da server diversi.
Per aiutarti a iniziare il percorso verso l'alta disponibilità, abbiamo compilato le prime nove cose da fare e da non fare per configurare il cluster di failover di SQL Server in modo da ridurre al minimo i tempi di inattività del database.
1. Non saltare la convalida del cluster.
Prima di installare un cluster, è indispensabile eseguire la convalida per verificare la configurazione. Se si tratta di un nuovo cluster, ti consigliamo di eseguire tutti i test.
Dopo aver configurato il cluster e aver installato e configurato completamente le istanze di SQL Server nel cluster, esegui la convalida ogni volta che apporti modifiche. È importante assicurarsi che i risultati della convalida siano corretti prima di eseguire il push del cluster di failover di SQL Server in modo da non dover pianificare i tempi di inattività per risolvere i problemi mancati.
2. Configura bene il quorum.
Se vuoi mantenere il tuo SQL Server in linea, assicurati di aver configurato correttamente il quorum nel cluster di failover. Questa documentazione Microsoft fornisce istruzioni dettagliate su come raggiungere questo obiettivo, ma la lista dei momenti salienti include queste procedure consigliate:
- Rivaluta il quorum ogni volta che cambia la configurazione del tuo cluster
- Assegna un testimone per ottenere un numero dispari di voti
- Rimuovi i voti quando appropriato
- Utilizza la funzione "Quorum dinamico" per regolare dinamicamente i voti dei nodi
È importante notare che il modo più efficace per configurare il quorum varia a seconda della versione di Windows, del numero di nodi e dell'affidabilità delle comunicazioni di rete tra i nodi,
3. Non selezionare la versione sbagliata di Windows o SQL Server.
Questo tipo di suona come un gioco da ragazzi, ma vale sempre la pena ripeterlo. Assicurati di selezionare la versione più recente di Windows Server e assicurati di utilizzare la versione Enterprise o Datacenter. Inoltre, mantieni una versione di SQL Server per semplificare le cose. L'adesione a queste due pratiche renderà il tuo cluster più facile da gestire e mantenere online.
4. Acquista l'hardware corretto.
Il corretto dimensionamento dell'hardware per un cluster SQL Server può essere difficile. Ad esempio, non vuoi sprecare soldi con troppa memoria, ma averne troppo poca potrebbe influire sulle prestazioni.
Mentre sviluppi il tuo piano per la creazione del tuo cluster SQL Server, assicurati di verificare che le tue esigenze hardware siano soddisfatte per la giusta quantità di memoria, che il tuo percorso di rete sia ridondante e che tu abbia valutato accuratamente le tue esigenze SSD.
5. Non inserire troppi nodi in un cluster.
Potresti essere tentato di mettere tutti i tuoi nodi in un cluster, ma è meglio restare con uno o due nodi per cluster. Ricorda che ogni volta che applichi una patch o un aggiornamento a un cluster, dovrai verificare che ogni istanza funzioni ancora su ciascun nodo. Minore è il numero di nodi in un cluster, minore è il tempo di inattività per ciascuna istanza in caso di failover su ciascun nodo.
6. Pianifica i tuoi nodi e le tue istanze.
I cluster di failover non sono universali, quindi dovrai valutare le tue esigenze e pianificare di conseguenza. Un ottimo punto di partenza è rispondere a queste domande e personalizzare il tuo cluster in modo appropriato:
- Di quanti nodi del cluster abbiamo bisogno?
- Quante istanze di SQL Server verranno installate?
- Quanti cluster di failover di Windows soddisfano le nostre esigenze e il nostro budget?
- Che tipo di spazio di archiviazione utilizzeremo?
- Che aspetto ha il nostro ambiente di staging?
7. Non dare per scontato che le tue applicazioni eseguiranno il failover senza problemi.
Non fidarti mai del fatto che l'istanza di SQL Server sia in esecuzione come prima che si verificasse un failover. Alcune applicazioni potrebbero non tornare automaticamente online in seguito e, a seconda dell'applicazione, potrebbe volerci un po' di tempo prima che tu se ne accorga.
Rendi una pratica standard l'inclusione di test delle applicazioni con ogni migrazione a un cluster di failover.
8. Rivaluta le impostazioni di configurazione di SQL Server.
Quando inizi la fase di pianificazione della creazione di cluster di failover di SQL Server, è un buon momento per dare un'altra occhiata alle impostazioni di configurazione. Ad esempio, verifica di utilizzare le impostazioni migliori per cose come l'allocazione della memoria su cluster multiistanza.
9. Non rallentare la tua convenzione di denominazione.
Prenditi del tempo ora per nominare con attenzione i componenti del tuo cluster e risparmiarti un enorme mal di testa quando proverai a connetterti al server in un secondo momento. Ecco alcune idee per aiutare a stabilire una convenzione di denominazione efficace:
- Assicurati che il nome identifichi il tipo di componente che stai etichettando. È un cluster, un server fisico, un'istanza di SQL Server o un Distributed Transaction Coordinator?
- Installa BGINFO per visualizzare il nome del server sul desktop per ogni server nel cluster. Questo rende la ricerca dei database corretti un gioco da ragazzi.
- Sii coerente quando aggiungi altri nodi o installi un'altra istanza di SQL Server nel cluster. Se ti attieni alla tua convenzione di denominazione, non solo ti semplificherà le cose ora, ma renderà anche più facile trovare i server per coloro che ne avranno bisogno in seguito.