Nota
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriverti a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Distribuire i gruppi di disponibilità Always On Microsoft SQL Server per HA e DR su OCI
Introduzione
La distribuzione di Microsoft SQL Server è un caso d'uso comune in Oracle Cloud Infrastructure (OCI). Come spesso accade in una distribuzione OCI, i clienti cercano architetture altamente resilienti che soddisfino i requisiti di continuità aziendale. Pertanto, comprendere come distribuire SQL Server per l'alta disponibilità e il disaster recovery diventa un imperativo per questi clienti.
Esistono diverse soluzioni di business continuity di SQL Server. La soluzione illustrata in questa esercitazione viene ampiamente adottata dagli amministratori di SQL Server Gruppi di disponibilità Sempre attivo. Soluzioni come le istanze FCI ( Always On Failover Cluster Instances) di SQL Server possono essere distribuite anche su OCI, ma sono escluse da questa esercitazione.
Questo tutorial si ispira ai casi d'uso dei clienti e si differenzia centralizzando tre elementi chiave della distribuzione dei gruppi di disponibilità Always On di SQL Server su OCI in un unico documento.
-
L'architettura necessaria per la distribuzione dei gruppi di disponibilità Always On SQL Server. Per distribuire SQL Server su OCI, i clienti devono essere a conoscenza di alcune specifiche per assicurarsi che la distribuzione dei gruppi di disponibilità Always On di SQL Server abbia esito positivo.
-
I prerequisiti che devono essere presenti per la distribuzione dei gruppi di disponibilità Always On di SQL Server.
-
Le procedure dettagliate per la distribuzione di un gruppo di disponibilità Always On di SQL Server a due nodi. Questo costituisce la maggior parte del tutorial. È possibile utilizzare le stesse procedure per le distribuzioni che utilizzano più di due nodi. Questo tutorial documenta le procedure che utilizzano l'interfaccia grafica del sistema operativo Windows, che lo rende adeguato per gli utenti non avanzati. Se si è un utente avanzato, è possibile implementare la configurazione utilizzando Windows PowerShell.
Architettura
Questa esercitazione utilizza l'architettura seguente:
-
Singola area: la distribuzione comprende una singola area OCI. La distribuzione potrebbe essere estesa ad altre region OCI, ma tali configurazioni non rientrano nell'ambito di questa esercitazione.
-
Subnet private: ad eccezione di una virtual machine (VM) OCI Bastion, tutte le risorse vengono posizionate in subnet regionali private.
-
Nodi SQL Server su più subnet: ognuno dei due nodi della distribuzione di SQL Server viene posizionato in una subnet diversa in base ai suggerimenti Microsoft. Per ulteriori informazioni, vedere Prerequisiti per i gruppi di disponibilità in più subnet (SQL Server sulle VM di Azure). I gruppi di disponibilità Always On di SQL Server possono essere distribuiti in una singola subnet, ma questa non è un'architettura consigliata da Microsoft. Inoltre, richiederà l'uso di un load balancer e funzionalità non supportate da OCI (rendimento diretto del server).
-
Testimone del quorum del cluster di failover di Windows Server: i gruppi di disponibilità Always On vengono eseguiti su un cluster WSFC (Windows Server Failover Cluster). WSFC richiede l'uso di un testimone del quorum dei cluster, per il quale sono disponibili diverse opzioni di distribuzione. Questa esercitazione utilizza un testimone della condivisione dei file, in quanto è ottimale per una distribuzione OCI. Per raggiungere questo obiettivo, viene eseguito il provisioning di una VM testimone quorum in base al diagramma dell'architettura.
-
IP di SQL Server necessari: ciascuna VM di SQL Server richiede gli IP riportati di seguito nelle schede VNIC (Virtual Network Interface Card) primarie.
- IP primario: accesso al sistema operativo (creato automaticamente al momento del provisioning delle VM).
- IP secondario 1: IP cluster di failover di Windows Server. Da creare in questa esercitazione.
- IP secondario 2: listener dei gruppi di disponibilità Always On di SQL Server. Da creare in questa esercitazione.
-
Account necessari
- Amministratore dominio: l'amministratore del dominio esegue tutti i task di configurazione di questa esercitazione. Questo account deve inoltre essere configurato sia come amministratore locale di ogni VM SQL Server che come membro del ruolo server fisso sysadmin di SQL Server per ogni istanza di SQL Server.
- Account servizio: viene utilizzato per il servizio SQL Server per operare su entrambi i nodi SQL Server.
Obiettivi
Creare e configurare quanto segue:
-
Utenti e account necessari per i gruppi di disponibilità Always On di SQL Server.
-
Cluster di failover di Windows Server per gruppi di disponibilità Sempre attivo.
-
Gruppo di disponibilità Always On di SQL Server.
Prerequisiti
-
Rete
-
Accesso a una tenancy OCI e a un compartimento per il posizionamento di tutte le risorse.
-
Networking configurato in base al diagramma dell'architettura.
- 1 VCN.
- 1 subnet pubblica e 4 subnet private.
-
Regole della lista di sicurezza configurate per l'implementazione dei gruppi di disponibilità Always On di SQL Server: le porte
1433
e5022
sono aperte. -
Regole della lista di sicurezza configurate per l'implementazione di Active Directory in OCI, come descritto nel white paper OCI Creating Active Directory Domain Services in OCI.
-
Possiamo utilizzare i blocchi Classless Inter-Domain Routing (CIDR) illustrati in questa esercitazione oppure è possibile selezionare i blocchi CIDR seguendo i consigli del team di cloud networking.
-
-
Server
-
1 VM bastion in una subnet pubblica per assicurarsi di poter connettersi alle VM in esecuzione su subnet private.
-
1 VM controller di dominio in una subnet privata.
-
1 VM Quorum in una sottorete privata.
-
2 VM SQL Server, ognuna in una subnet privata diversa.
-
Esistono 2 modi per eseguire SQL Server in OCI: OCI Marketplace Image e Bringing Your Own Microsoft License (BYOL). È possibile utilizzare il metodo preferito. Questa esercitazione si limita a supporre che sia disponibile un'installazione di istanza predefinita di SQL Server (una singola installazione di SQL Server per VM).
-
Se si utilizza l'immagine di OCI Marketplace, il processo di provisioning installerà SQL Server con l'utente opc. Quando si uniscono tutti i nodi al dominio, sarà necessario assicurarsi che l'amministratore del dominio faccia parte degli amministratori locali in modo da poter connettersi a ciascuna istanza del database SQL Server in SQL Server Management Studio.
-
Installare SQL Server Management Studio nelle VM dei nodi di SQL Server.
-
-
Prerequisiti per il dominio Active Directory
-
Funzioni e ruoli del controller di dominio aggiunti alla VM del controller di dominio.
-
Dominio configurato dall'amministratore del sistema operativo. Il controller di dominio nella presente esercitazione ha il nome di dominio radice
mssql.acme
. È possibile configurare il dominio con un nome di dominio radice a scelta. -
Puoi consultare il white paper OCI su Creazione dei servizi di dominio Active Directory in OCI.
-
VM SQL Server e VM Quorum aggiunte al dominio.
-
Esclusioni per questo tutorial
-
Multiarea: è possibile distribuire più aree, ma non rientra nell'ambito di questa esercitazione. Per ulteriori informazioni, vedere Configurare un gruppo di disponibilità di più sottoreti nelle aree di Azure: SQL Server nelle VM di Azure.
-
Memorizzazione: per questa esercitazione, il volume di avvio di ogni VM viene utilizzato come repository di SQL Server per il database, i backup e i log (tutti mappati all'unità
C:\
). A seconda dei requisiti, potrebbe essere necessario utilizzare e configurare volumi separati per il database, i backup e i log. Dobbiamo essere consapevoli del fatto che WSFC utilizza un IP dallo spazio di indirizzi169.254.\*
per la comunicazione interna, che si sovrappone allo spazio di indirizzi OCI per l'esposizione dei dispositivi a blocchi iSCSI. Ciò richiederà la creazione di instradamenti IP statici per esporre i portali di destinazione iSCSI in ciascuna VM dei nodi di SQL Server. Questa configurazione non rientra nell'ambito di questa esercitazione. Per ulteriori informazioni, vedere Nozioni di base e nozioni di base sul servizio di cluster di failover. -
Condivisione file Witness ad alta disponibilità: questa esercitazione utilizza una singola VM per la condivisione dei file di testimoni quorum. Una condivisione di file di testimoni altamente disponibile non rientra nell'ambito di questo tutorial. Per ulteriori informazioni su come eseguire la distribuzione, vedere Distribuzione di un file server Windows ad alta disponibilità su OCI.
Task 1: configurare gli IP secondari
Per ogni VM nodo SQL Server, creare l'IP secondario necessario per il cluster di failover di Windows Server e per il listener dei gruppi di disponibilità Always On.
-
Nella console OCI andare alla VM del nodo 1 di SQL Server e selezionare le VNIC collegate nel menu Risorse.
-
Selezionare la VNIC primaria, quindi selezionare IPv4 Indirizzi nel menu Risorse.
-
Selezionare Aggiungi indirizzo IP privato secondario e immettere i dettagli per aggiungere un nuovo IP privato alla VNIC. Fare clic su Crea per visualizzare un nuovo IP secondario associato a questa VNIC. Questo è l'IP WSFC.
-
Ripetere i passi da 1 a 3 nella stessa VNIC per creare un altro IP secondario per il listener dei gruppi di disponibilità Always On.
-
Ripetere i passi da 1 a 4 per l'altra VM del nodo SQL Server.
Task 2: Creare un account di servizio SQL Server
SQL Server deve utilizzare un account di dominio dedicato. In questo compito, creeremo questo account. Più avanti nell'esercitazione, utilizziamo questo account per configurare il servizio SQL Server su ciascuno dei nodi.
-
Eseguire il login al controller di dominio utilizzando l'account amministratore di dominio e passare a Utenti e computer Active Directory.
-
Espandere il dominio configurato per questa esercitazione.
-
Fare clic con il pulsante destro del mouse su Utente e selezionare Nuovo utente per creare un nuovo utente.
-
Immettere i dettagli riportati di seguito e fare clic su Successivo.
-
Immettere la password per questo account di dominio e fare clic su Avanti.
-
Rivedere i dettagli e fare clic su Termina.
Task 3: Configurare una condivisione di file Witness
Come accennato, l'architettura di questo tutorial utilizza un testimone della condivisione di file per implementare il testimone del quorum. In questo task verrà creata una cartella condivisa. In un task successivo, questa cartella condivisa verrà utilizzata per configurare il cluster di failover di Windows Server.
-
Eseguire il login alla VM Quorum utilizzando l'account amministratore del dominio e creare una cartella di testimoni.
-
Fare clic con il pulsante destro del mouse sulla cartella creata e selezionare Proprietà. Nella scheda Condivisione, fare clic su Condividi e selezionare Tutti per condividere la cartella. Se si preferisce essere più rigorosi, selezionare l'account di servizio SQL Server creato nel task 2.
-
Verrà visualizzato che la cartella è stata condivisa. Fare clic su Fine.
Task 4: Configurare un cluster di failover di Windows Server
I gruppi di disponibilità Always On di SQL Server vengono eseguiti sulla tecnologia WSFC (Windows Server Failover Cluster). In questo compito:
-
Aggiungere i ruoli WSFC alle VM di SQL Server.
-
Creare e configurare un cluster utilizzando gli IP secondari creati nel task 1 e il testimone della condivisione del file quorum creato nel task 3. Questo cluster verrà utilizzato in un task successivo dalla funzionalità Sempre attivo dei gruppi di disponibilità.
Task 4.1: aggiungere ruoli WSFC alle VM di SQL Server
-
Eseguire il login alla VM del nodo 1 di SQL Server utilizzando l'amministratore del dominio, aprire Server Manager e nel Dashboard fare clic su Aggiungi ruoli e funzioni.
-
Fare clic su Successivo per passare al Tipo di installazione.
-
Selezionare Installazione basata sui ruoli o sulle funzioni e fare clic su Avanti.
-
In Seleziona server di destinazione selezionare il server dal pool di server e il nodo 1 di SQL Server, quindi fare clic su Avanti per continuare.
-
In Funzioni, selezionare Clustering di failover. Al termine, viene visualizzata una finestra, quindi fare clic su Aggiungi funzioni.
-
In Conferma selezione installazione, esaminare i dettagli e fare clic su Installa per confermare l'installazione.
-
Al termine dell'installazione, chiudere la procedura guidata.
-
Per confermare l'installazione, digitare Failover Cluster Manager nella barra di ricerca. È possibile aprirlo e vedere che non contiene ancora cluster.
-
Ripetere i passi da 1 a 8 nell'altra VM del nodo SQL Server.
Task 4.2: Creare un cluster
-
Eseguire il login alla VM del nodo 1 di SQL Server utilizzando l'account amministratore del dominio e aprire Failover Cluster Manager. Non sono presenti cluster in esecuzione.
-
Fare clic con il pulsante destro del mouse su Failover Cluster Manager e selezionare Crea cluster.... Verrà aperta una Creazione guidata cluster.
-
Dopo aver aperto la Creazione guidata cluster, fare clic su Avanti per continuare.
-
Fare clic su Sfoglia e selezionare le VM del nodo SQL Server 1 e del nodo SQL Server 2.
-
Confermare di aver selezionato i nodi appropriati, quindi fare clic su Avanti.
-
Selezionare Sì, quando si fa clic su Avanti, eseguire i test di configurazione, quindi tornare al processo di creazione del cluster e fare clic su Avanti.
-
Selezionare Esegui tutti i test e fare clic su Avanti.
-
Nella finestra Conferma, fare clic su Successivo.
Attendere il completamento di tutti i test.
-
Fare clic su Fine.
-
Immettere un Nome cluster e prendere in considerazione i vincoli NetBIOS.
-
Confermare il cluster prima di creare, quindi fare clic su Avanti.
-
Una volta creato correttamente il cluster, fare clic su Fine.
-
Aprire Failover Cluster Manager e sarà possibile visualizzare il cluster appena creato.
-
Si noti che lo stato del cluster è Offline nella sezione Risorse di base cluster. Espandere le risorse e trovare gli indirizzi IP del cluster non ancora configurati. Lo faremo tra pochi passi da qui.
Task 4.3: Configurare un cluster
-
Prima di impostare gli IP del cluster, verrà configurato il testimone del quorum. Fare clic con il pulsante destro del mouse sul nome del cluster, selezionare Altre azioni e Configura impostazioni quorum cluster.... Verrà aperta una configurazione guidata.
-
Nella finestra Configurazione guidata quorum cluster fare clic su Avanti per continuare.
-
Selezionare il testimone quorum e fare clic su Avanti.
-
Selezionare Configura un testimone della condivisione file e fare clic su Successivo.
-
Immettere il percorso di condivisione file configurato nel task 3 e fare clic su Avanti.
-
Rivedere le impostazioni di configurazione del quorum e fare clic su Successivo.
-
Il testimone del quorum verrà configurato. Una volta completata la configurazione, fare clic su Fine per chiudere la procedura guidata.
-
Gli IP creati nel task 1 verranno associati al cluster. Questo porterà il cluster e lo renderà operativo. In Failover Cluster Manager, espandere Risorse di base cluster e fare clic con il pulsante destro del mouse sull'indirizzo IP con stato Non riuscito, quindi fare clic su Proprietà.
-
Nella scheda Generale, specificare l'indirizzo IP statico configurato per questo nodo nel task 1 e fare clic su Applica.
-
Ripetere i passaggi 8 e 9 per l'altro IP. Il cluster verrà impostato correttamente. Quando la risorsa nome cluster viene messa in linea, aggiorna il server controller di dominio con un nuovo oggetto computer Active Directory. Ora siamo pronti per passare alla configurazione dei gruppi di disponibilità Always On.
Task 5: configurare gruppi di disponibilità sempre attivi per un database di esempio
In questo compito:
-
Concedere le autorizzazioni appropriate all'account oggetto computer virtuale creato nel dominio dal cluster. Ciò consentirà al cluster di creare le risorse necessarie per i gruppi di disponibilità Always On.
-
Abilita la funzionalità Sempre attivo nei gruppi di disponibilità nei nodi.
-
Configurare un gruppo di disponibilità Sempre attivo per un database di esempio.
-
Creare un listener per i gruppi di disponibilità Sempre attivo.
Task 5.1: Concedere le autorizzazioni all'oggetto computer del dominio cluster
-
Eseguire il login al controller di dominio utilizzando l'account amministratore di dominio e aprire Utenti e computer Active Directory.
-
Fare clic su Visualizza e selezionare Funzioni avanzate per visualizzare le funzioni avanzate.
-
Scegliere Computer e quindi Proprietà.
-
Andare alla scheda Security e fare clic su Add.
-
Nella procedura guidata Utenti, computer, account di servizio o gruppi fare clic su Tipi di oggetto....
-
Selezionare Computer e fare clic su OK.
-
Immettere il nome del cluster e fare clic su OK. L'oggetto computer cluster verrà ora visualizzato nella lista dei gruppi o dei nomi utente.
-
Selezionare l'oggetto computer cluster e fare clic su Avanzate per configurare le autorizzazioni.
-
Nella scheda Autorizzazioni, selezionare l'oggetto computer cluster e fare clic su Modifica.
-
Selezionare la voce di autorizzazione Crea oggetti computer e fare clic su OK.
-
Ora è possibile tornare alle Impostazioni di sicurezza avanzate per i computer e fare clic su Applica, quindi su OK. In questo modo, l'account computer del cluster dispone delle autorizzazioni necessarie per il funzionamento dei gruppi di disponibilità Sempre attivo.
Task 5.2: abilitare i gruppi di disponibilità Sempre attivo nei nodi
-
Eseguire il login alla VM del nodo 1 di SQL Server utilizzando l'account amministratore del dominio e aprire SQL Server Configuration Manager.
-
Fare clic su Servizi SQL Server, fare clic con il pulsante destro del mouse su SQL Server (MSSQL SERVER) e selezionare Proprietà.
-
Nella scheda Sempre su gruppi di disponibilità selezionare Abilita sempre su gruppi di disponibilità. Notare il nome del cluster già creato nel task 4.2, nel cluster di failover di Windows Server e fare clic su Applica. Viene visualizzato un messaggio di avvertenza per il riavvio del servizio. Fare clic su OK per applicare le modifiche. Il servizio verrà riavviato.
-
Se il servizio SQL Server non viene riavviato automaticamente, è possibile riavviarlo manualmente, fare clic con il pulsante destro del mouse sul servizio SQL Server e fare clic su Riavvia.
-
Fare clic con il pulsante destro del mouse sul servizio SQL Server, selezionare Proprietà e andare alla scheda Accedi. Selezionare Questo account e immettere i dettagli dell'account SQL Server creati nel task 2. Fare clic su Applica, quindi su OK.
-
Ripetere i passi da 1 a 5 per la VM del nodo 2 di SQL Server.
Task 5.3: creare ed eseguire il backup di un database di esempio per i gruppi di disponibilità Always On
-
Eseguire il login alla VM del nodo 1 di SQL Server utilizzando l'account amministratore del dominio, aprire SQL Server Management Studio e connettersi all'istanza di SQL Server in tale nodo.
-
Selezionare NUOVA query e creare un database di esempio utilizzando una query di creazione database come mostrato nell'immagine seguente.
-
Espandere Database in Object Explorer per trovare il database di esempio creato nel passo 2. Fare clic con il pulsante destro del mouse su di esso, fare clic su Task, quindi su Backup....
-
Selezionare Completo come Tipo di backup. Rivedere e confermare la destinazione del backup, quindi fare clic su OK.
-
Verrà visualizzato un messaggio che informa il completamento riuscito del backup. Fare clic su OK.
Task 5.4: creare gruppi di disponibilità per il database di esempio
-
Il backup è stato creato. È possibile avviare la configurazione di un gruppo di disponibilità. Fare clic con il pulsante destro del mouse su Sempre in alta disponibilità e selezionare Creazione guidata nuovo gruppo di disponibilità....
-
In Crea un nuovo gruppo di disponibilità, fare clic su Avanti per continuare.
-
Immettere un nome di gruppo di disponibilità, selezionare Cluster di failover di Windows Server come Tipo cluster e fare clic su Successivo.
-
Selezionare il database di esempio creato nel task 5.3 e fare clic su Avanti.
-
Nella finestra Specifica repliche, fare clic su Specifica repliche e su Aggiungi replica per selezionare la replica del nodo 2. Nella finestra, immettere il nome della VM del server nodo 2, quindi fare clic su Connetti.
-
Vedremo ora entrambe le repliche, una con il ruolo primario e l'altra con il ruolo secondario. Possiamo cambiare la modalità di disponibilità a seconda dei requisiti. Fare clic su Avanti e verrà visualizzata la scheda Listener. Per ora salta. Un listener verrà configurato in un secondo momento in questa esercitazione.
-
In Seleziona sincronizzazione dati, selezionare Determinazione automatica e fare clic su Avanti.
-
Verrà eseguita una convalida delle configurazioni. È possibile che tutti i risultati della convalida siano riusciti, ad eccezione della configurazione del listener. Fare clic su Avanti.
-
In Riepilogo fare clic su Fine per completare la creazione e la configurazione del gruppo di disponibilità.
-
In Risultati verrà visualizzato un messaggio che informa dell'avvenuto completamento della configurazione del gruppo di disponibilità. Fare clic su Chiudi.
Il gruppo di disponibilità viene creato ed è possibile visualizzarne i dettagli in Object Explorer.
Task 5.5: Creare un listener del gruppo di disponibilità
In questo task verrà creato un Listener per il gruppo di disponibilità creato nel task 5.4. Il listener è un nome di rete virtuale che fornisce la connettività al database in una configurazione di gruppi di disponibilità Sempre attivo. Consente a un client di connettersi a una replica senza dover conoscere il nome dell'istanza fisica di SQL Server. Poiché il listener instrada il traffico, la stringa di connessione client non deve essere modificata dopo il failover.
-
In Explorer oggetti espandere i gruppi di disponibilità e il gruppo di disponibilità creato nel task 5.4, quindi fare clic con il pulsante destro del mouse su Listener gruppo di disponibilità e selezionare Aggiungi listener.
-
Immettere un nome DNS listener per il listener, specificare le porte
1433
e IP statico nella modalità di rete. Fare clic su Aggiungi... per aggiungere gli IP del listener creati nel task 1. -
Assicurarsi che la subnet del nodo a cui si è connessi sia la subnet selezionata e immettere l'indirizzo IPv4 con l'IP secondario creato per il listener nel task 1, quindi fare clic su OK.
-
Per aggiungere il secondo IP, fare di nuovo clic su Add.... Assicurarsi che la subnet selezionata sia la subnet dell'altro nodo e immettere l'indirizzo IP dell'IP secondario creato per l'altro nodo nel task 1. Fare clic su OK.
-
Confermare che sia possibile visualizzare gli IP configurati e fare clic su OK per terminare la creazione del listener.
-
Andare a Object Explorer e confermare che il listener venga visualizzato nella cartella Listener gruppo di disponibilità.
In SQL Server Management Studio è ora possibile connettersi al listener in modo analogo a qualsiasi nodo di SQL Server. La configurazione dei gruppi di disponibilità Sempre attivo è terminata ed è disponibile un listener per facilitare la connettività delle applicazioni. La distribuzione è ora pronta per il failover, che è possibile eseguire manualmente.
Collegamenti correlati
Conferme
- Autori - Ricardo Malhado (Principal Cloud Solution Architect), Raphael Teixeira (Principal Cloud Solution Architect)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.
Per la documentazione del prodotto, visita l'Oracle Help Center.
Deploy Microsoft SQL Server Always On Availability Groups for HA and DR on OCI
F92894-01
February 2024
Copyright © 2024, Oracle and/or its affiliates.