Creare un'istanza del cluster di failover con dischi condivisi di Azure (SQL Server in una VM di Azure)

Si applica a:SQL Server su VM di Azure

Suggerimento

Esistono molti metodi per distribuire un gruppo di disponibilità. Semplificare la distribuzione ed eliminare la necessità di un servizio di Azure Load Balancer o di un nome di rete distribuito (DNN) per il gruppo di disponibilità AlwaysOn creando le macchine virtuali (VM) di SQL Server in più subnet all'interno della stessa rete virtuale di Azure. Se il gruppo di disponibilità è già stato creato in una singola subnet, è possibile eseguirne la migrazione a un ambiente con più subnet.

Questo articolo illustra come creare un'istanza del cluster di failover usando dischi condivisi di Azure con SQL Server nelle macchine virtuali (VM) di Azure.

Per ulteriori informazioni, vedere le informazioni generali dell'istanza del cluster di failover con SQL Server in VM di Azure e procedure consigliate per il cluster.

Nota

È ora possibile trasferire in modalità lift-and-shift la soluzione dell'istanza del cluster di failover a SQL Server in VM di Azure usando Azure Migrate. Per ulteriori informazioni, vedere Eseguire la migrazione dell'istanza del cluster di failover.

Prerequisiti

Prima di completare la procedura di istruzioni descritta in questo articolo, sono necessari:

Aggiungere disco condiviso di Azure

Distribuire un disco SSD Premium gestito con la funzionalità disco condiviso abilitata. Impostare maxShares per allinearsi al numero di nodi del cluster per rendere il disco condivisibile tra tutti i nodi dell'istanza del cluster di failover.

Associare un disco condiviso alle VM

Dopo aver distribuito un disco condiviso con maxShares > 1, è possibile montare il disco nelle VM che faranno parte come nodi del cluster.

Per associare il disco condiviso alle VM di SQL Server, seguire questi passaggi:

  1. Selezionare la VM nel portale di Azure a cui associare il disco condiviso.
  2. Selezionare Dischi nel riquadro Impostazioni.
  3. Selezionare Collega dischi esistenti per associare il disco condiviso alla VM.
  4. Scegliere il disco condiviso dall'elenco a discesa Nome disco.
  5. Seleziona Salva.
  6. Ripetere questi passaggi per ogni VM di SQL Server del nodo del cluster.

Dopo alcuni istanti il disco dati viene collegato alla VM e quindi visualizzato nell'elenco Dischi dati associato alla VM specifica.

Inizializzare un disco condiviso

Dopo aver collegato il disco condiviso in tutte le VM, è possibile inizializzare i dischi delle VM che faranno parte come nodi del cluster. Inizializzare i dischi in tutte le VM.

Per inizializzare i dischi per la VM di SQL Server, seguire questi passaggi:

  1. Connessione a una delle VM.
  2. All'interno della VM aprire il menu Start e digitare diskmgmt.msc nella casella di ricerca per aprire la console Gestione disco.
  3. Gestione disco rileva la presenza di un nuovo disco non inizializzato e viene quindi visualizzata la finestra Inizializza disco.
  4. Verificare che il nuovo disco sia selezionato e fare clic su OK per inizializzarlo.
  5. Il nuovo disco verrà visualizzato come Non allocato. Fare clic sul disco e scegliere Nuovo volume semplice.... Si avvia così la Creazione guidata nuovo volume semplice.
  6. Eseguire la procedura guidata mantenendo tutti i valori predefiniti e, al termine, scegliere Fine.
  7. Chiudere Gestione disco.
  8. Viene visualizzata una finestra popup che indica la necessità di formattare il nuovo disco prima di poterlo usare. Selezionare Formatta disco.
  9. Nella finestra Formatta il nuovo disco controllare le impostazioni e quindi selezionare Avvia.
  10. Viene visualizzato un avviso per informare l'utente che la formattazione dei dischi cancella tutti i dati. Seleziona OK.
  11. Al termine della formattazione, selezionare OK.
  12. Ripetere questi passaggi in ogni VM di SQL Server che parteciperà all'istanza del cluster di failover.

Creare un cluster di failover Windows

I passaggi per creare il cluster di failover di Windows Server variano a seconda che le VM di SQL Server siano state distribuite in una singola subnet o in più subnet. Per creare il cluster, seguire i passaggi descritti nell'esercitazione per uno scenario su più subnet o per uno scenario con una singola subnet. Anche se queste esercitazioni riguardano la creazione di un gruppo di disponibilità, i passaggi per creare il cluster sono gli stessi.

Configurare il quorum

Poiché il disco di controllo è l'opzione quorum più resiliente e la soluzione dell'istanza del cluster di failover usa dischi condivisi di Azure, è consigliabile configurare un disco di controllo come soluzione quorum.

Se si dispone di un numero pari di votazioni nel cluster, configurare la soluzione quorum più adatta alle proprie esigenze aziendali. Per altre informazioni, vedere Quorum con VM di SQL Server.

Convalidare cluster

Convalidare il cluster in una delle macchine virtuali usando l'interfaccia utente di Gestione cluster di failover o PowerShell.

Per convalidare il cluster usando l'interfaccia utente, seguire questi passaggi:

  1. In Server Manager selezionare Strumenti e quindi selezionare Gestione cluster di failover.
  2. In Gestione cluster di failover selezionare Azione e quindi selezionare Convalida configurazione.
  3. Selezionare Avanti.
  4. In Selezione di server o di un cluster immettere i nomi di entrambe le macchine virtuali.
  5. In Opzioni di testing selezionare Esegui solo test selezionati.
  6. Selezionare Avanti.
  7. In Selezione dei test, selezionare tutti i test tranneArchiviazione.
  8. Selezionare Avanti.
  9. In Conferma selezionare Avanti. La procedura guidata di Convalida configurazione eseguirà i test di convalida.

Per convalidare il cluster usando PowerShell, eseguire lo script seguente da una sessione di PowerShell in modalità amministratore in una delle macchine virtuali:

Test-Cluster –Node ("<node1>","<node2>") –Include "Inventory", "Network", "System Configuration"

testare il failover del cluster

Testare il failover del cluster. In Gestione cluster di failover, fare clic con il pulsante destro del mouse sul cluster e selezionare Altre azioni>Sposta risorse principali del cluster>Seleziona nodo, quindi selezionare l'altro nodo del cluster. Spostare le risorse principali del cluster in ogni nodo del cluster, quindi spostarle di nuovo nel nodo primario. Assicurarsi che lo spostamento del cluster in ogni nodo avvenga in modo corretto prima di installare SQL Server.

Testare il failover del cluster spostando le risorse principali negli altri nodi

Aggiungere dischi condivisi al cluster

Usare Gestione cluster di failover per aggiungere i dischi condivisi di Azure collegati al cluster.

Per aggiungere dischi al cluster, seguire questi passaggi:

  1. Nel dashboard Server Manager selezionare Strumenti e quindi Gestione cluster di failover.

  2. Selezionare il cluster ed espanderlo nel riquadro di spostamento.

  3. Selezionare Archiviazione e successivamente Dischi.

  4. Fare clic con il pulsante destro del mouse su Dischi, quindi selezionare Aggiungere disco:

    Aggiungi disco

  5. Scegliere il disco condiviso di Azure nella finestra Aggiungi dischi a un cluster. Seleziona OK.

    Selezionare disco

  6. Dopo aver aggiunto il disco condiviso al cluster, verrà visualizzato in Gestione cluster di failover.

    Disco del cluster

Creare l'istanza del cluster di failover di SQL Server

Dopo aver configurato il cluster di failover e tutti i componenti del cluster, inclusa la risorsa di archiviazione, è possibile creare l'istanza del cluster di failover di SQL Server.

  1. Connettersi alla prima macchina virtuale tramite Remote Desktop Protocol (RDP).

  2. In Gestione cluster di failover, verificare che tutte le risorse di base del cluster si trovino nella prima macchina virtuale. Se necessario, spostare tutte le risorse in tale macchina virtuale.

  3. Se la versione del sistema operativo è Windows Server 2019 e il cluster Windows è stato creato usando il nome di rete distribuito predefinito (DNN), l'installazione dell'istanza del cluster di failover per SQL Server 2017 e versioni precedenti avrà esito negativo con errore The given key was not present in the dictionary.

    Durante l'installazione, la configurazione di SQL Server esegue una query per il nome del Rete virtuale esistente (VNN) e non riconosce il DNN del cluster Windows. Il problema è stato risolto nella configurazione di SQL Server 2019. Per SQL Server 2017 e versioni precedenti, seguire questi passaggi per evitare errori di installazione:

    • In Gestione cluster di failover, connettersi al cluster, fare clic con il pulsante destro del mouse su Ruoli e quindi selezionare Creazione ruolo vuoto.
    • Fare clic con il pulsante destro del mouse sul ruolo vuoto appena creato, selezionare Aggiungere risorsa e selezionare Punto di accesso client.
    • Immettere qualsiasi nome e completare la procedura guidata per creare il punto di accesso client.
    • Al termine dell'installazione dell'istanza del cluster di failover di SQL Server, è possibile eliminare il ruolo contenente il punto di accesso client temporaneo.
  4. Individuare i supporti di installazione. Se la macchina virtuale usa una delle immagini di Azure Marketplace, i supporti si trovano in C:\SQLServer_<version number>_Full.

  5. Selezionare Impostazione.

  6. In Centro installazione SQL Server selezionare Installazione.

  7. Selezionare Installazione di un nuovo cluster di failover di SQL Server. Seguire le istruzioni della procedura guidata per installare l'istanza del cluster di failover di SQL Server.

  8. Nella pagina Selezione disco cluster selezionare tutti i dischi condivisi collegati alla VM.

    Selezione dischi cluster

  9. Nella pagina Configurazione della rete cluster l'indirizzo IP specificato varia a seconda che le VM di SQL Server siano state distribuite in una singola subnet o su più subnet.

    1. Per un singolo ambiente subnet, specificare l'indirizzo IP che si prevede di aggiungere ad Azure Load Balancer
    2. Per un ambiente con più subnet, specificare l'indirizzo IP secondario nella subnet della prima VM di SQL Server designata in precedenza come indirizzo IP del nome di rete dell'istanza del cluster di failover:

    specificare l'indirizzo IP secondario nella subnet della prima VM di SQL Server designata in precedenza come indirizzo IP del nome di rete dell'istanza del cluster di failover

  10. Nella pagina Configurazione motore di database, verificare che le directory del database si trovino nei dischi condivisi di Azure.

  11. Dopo aver completato le istruzioni della procedura guidata, il programma di configurazione installerà un'istanza del cluster di failover di SQL Server nel primo nodo.

  12. Al termine dell'installazione dell'istanza del cluster di failover nel primo nodo, connettersi al secondo nodo usando RDP.

  13. Aprire il Centro installazione SQL Server e selezionare Installazione.

  14. Selezionare Aggiungi nodo a cluster di failover di SQL Server. Seguire le istruzioni della procedura guidata per installare SQL Server e aggiungere il nodo all'istanza del cluster di failover.

  15. Per uno scenario su più subnet, in Configurazione della rete cluster, immettere l'indirizzo IP secondario nella subnet della seconda subnet delle VM di SQL Server designata in precedenza come indirizzo IP del nome di rete dell'istanza del cluster di failover

    immettere l'indirizzo IP secondario nella subnet della seconda macchina virtuale di SQL Server designata in precedenza come indirizzo IP del nome di rete dell'istanza del cluster di failover

    Dopo aver selezionato Avanti in Configurazione della rete cluster, il programma di configurazione mostra una finestra di dialogo che indica che il programma di installazione di SQL Server ha rilevato più subnet come nell'immagine di esempio. Seleziona per confermare.

    Conferma su più subnet

  16. Dopo aver completato le istruzioni della procedura guidata, il programma di configurazione aggiungerà il secondo nodo dell'istanza del cluster di failover di SQL Server.

  17. Ripetere questi passaggi in qualsiasi altra VM di SQL Server che si desidera far partecipare all'istanza del cluster di failover di SQL Server.

Nota

Le immagini della raccolta di Azure Marketplace sono installate con SQL Server Management Studio. Se non è stata usata un'immagine del marketplace eseguire il download di SQL Server Management Studio (SSMS).

Eseguire la registrazione con l'estensione SQL IaaS Agent

Per gestire la VM di SQL Server dal portale, registrarla con l'estensione SQL IaaS Agent. Si noti che solo le funzionalità limitate saranno disponibili nelle VM di SQL con istanze del cluster di failover di SQL Server (FCI).

Se la VM di SQL Server è già stata registrata con l'estensione SQL IaaS Agent ed è stata abilitata qualsiasi funzionalità che richiede l'agente, sarà necessario annullare la registrazione della VM di SQL Server dall'estensione e registrarla nuovamente dopo l'installazione dell'istanza del cluster di failover.

Registrare una VM di SQL Server con PowerShell (-LicenseType può essere PAYG o AHUB):

# Get the existing compute VM
$vm = Get-AzVM -Name <vm_name> -ResourceGroupName <resource_group_name>

# Register SQL VM with SQL IaaS Agent extension
New-AzSqlVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName -Location $vm.Location `
   -LicenseType <license_type>

Configurare la connettività

Se le VM di SQL Server sono state distribuite in più subnet, ignorare questo passaggio. Se le VM di SQL Server sono state distribuite in una singola subnet, sarà necessario configurare un componente aggiuntivo per instradare il traffico all'istanza del cluster di failover. È possibile configurare un nome di rete virtuale (VNN) con azure Load Balancer o un nome di rete distribuito per un'istanza del cluster di failover. Revisionare le differenze tra i due e quindi distribuire un nome di rete distribuita o un nome di rete virtuale e Azure Load Balancer per l'istanza del cluster di failover.

Limiti

  • Le macchine virtuali di Azure supportano Microsoft Distributed Transaction Coordinator (MSDTC) in Windows Server 2019 con archiviazione in volumi condivisi cluster e un Load Balancer Standard. MSDTC non è supportato in Windows Server 2016 e versioni precedenti.
  • Le istanze del cluster di failover di SQL Server registrate con l'estensione SQL IaaS Agent non supportano funzionalità che richiedono l'agente, ad esempio il backup automatizzato, l'applicazione di patch, l’autenticazione Microsoft Entra e la gestione avanzata del portale. Per altre informazioni, vedere la seguente tabella dei vantaggi.

Passaggi successivi

Se i dischi condivisi di Azure non sono la soluzione di archiviazione dell'istanza del cluster di failover appropriata, è consigliabile creare l'istanza del cluster di failover usando condivisioni file Premium o Spazi di archiviazione diretta.

Per ulteriori informazioni, vedere: