Creare un'istanza del cluster di failover concondivisione di file premium (SQL Server in una VM di Azure)
Si applica a: SQL Server su VM di Azure
Questo articolo illustra come creare un'istanza del cluster di failover di SQL Server nelle macchine virtuali di Azure tramite una condivisione file Premium.
Le condivisioni file Premium sono condivisioni di file a bassa latenza costante basate su unità SSD completamente supportate per l'uso con le istanze del cluster di failover per SQL Server 2012 o versioni successive in Windows Server 2012 o versioni successive. Le condivisioni file Premium offrono maggiore flessibilità, consentendo di ridimensionare una condivisione file senza tempi di inattività.
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:
- Una sottoscrizione di Azure.
- Un account con autorizzazioni per creare oggetti sia nelle macchine virtuali di Azure che in Active Directory.
- Due o più macchine virtuali di Azure Windows preparate in un set di disponibilità o in diverse zone di disponibilità.
- Una condivisione file Premium da usare come unità del cluster, in base alla quota di archiviazione del database per i file di dati.
- La versione più recente di PowerShell.
Suggerimento
Semplificare la distribuzione ed eliminare la necessità di un Azure Load Balancer o di un nome di rete distribuito (DNN) per l'istanza del cluster di failover creando le macchine virtuali (VM) di SQL Server in più subnet all'interno della stessa rete virtuale di Azure.
Montare la condivisione file Premium
Per montare la condivisione file Premium, seguire questi passaggi:
Accedere al portale di Azure e passare all'account di archiviazione.
Passare a Condivisioni file in Archiviazione dati e selezionare la condivisione file Premium da usare per l'archiviazione SQL.
Selezionare Connetti per visualizzare la stringa di connessione per la condivisione file.
Nell'elenco a discesa selezionare la lettera di unità da usare, scegliere Chiave archiviazione dell'account come metodo di autenticazione e quindi copiare il blocco di codice in un editor di testo, ad esempio Blocco note.
Usare Remote Desktop Protocol (RDP) per connettersi alla macchina virtuale di SQL Server con l'account usato dall'istanza del cluster di failover di SQL Server per l'account del servizio.
Aprire una console di comandi di PowerShell come amministratore.
Eseguire il comando copiato in precedenza nell'editor di testo dal portale di condivisione file.
Passare alla condivisione usando Esplora file o la finestra di dialogo Esegui (tasto Windows + R sulla tastiera). Usare il percorso di rete
\\storageaccountname.file.core.windows.net\filesharename
. Ad esempio,\\sqlvmstorageaccount.file.core.windows.net\sqlpremiumfileshare
Creare almeno una cartella nella condivisione file appena collegata in cui inserire i file di dati SQL.
Ripetere questi passaggi in ogni macchina virtuale di SQL Server che parteciperà al cluster.
Importante
È possibile usare una condivisione file separata per i file di backup per salvare le capacità in termini di operazioni di input/output al secondo e di spazio di questa condivisione per i file di dati e di log. È possibile usare una condivisione file Premium o Standard per i file di backup.
Creare un cluster di failover Windows
I passaggi per creare il cluster di failover di Windows Server differiscono tra ambienti con una sola subnet e ambienti con 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 per un'istanza del cluster di failover.
Configurare il quorum
Il cloud di controllo è la soluzione quorum consigliata per questo tipo di configurazione del cluster per SQL Server in macchine virtuali di Azure.
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 questa procedura in una delle macchine virtuali:
In Gestione server selezionare Strumenti e quindi selezionare Gestione cluster di failover.
Fare clic con il pulsante destro del mouse sul cluster in Gestione cluster di failover, selezionare Convalida cluster per aprire la procedura guidata Convalida configurazione.
Nella procedura guidata Convalida configurazione, selezionare Avanti.
Nella pagina Seleziona server o cluster, immettere i nomi di entrambe le macchine virtuali.
Nella pagina Opzioni di testing selezionare Esegui solo test selezionati.
Selezionare Avanti.
Nella pagina Selezione dei test selezionare tutti i test tranne Archiviazione e Spazi di archiviazione diretta:
Selezionare Avanti.
Nella pagina 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. Se lo spostamento del cluster in ogni nodo avviene in modo corretto, è possibile installare SQL Server.
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.
Creare il primo nodo nell'istanza del cluster di failover di SQL
Per creare il primo nodo nell'istanza del cluster di failover di SQL Server, seguire questa procedura:
Connettersi alla prima macchina virtuale con RDP o bastion.
In Gestione cluster di failover, verificare che tutte le principali risorse cluster si trovino nella prima macchina virtuale. Se necessario, spostare tutte le risorse in questa macchina virtuale.
Se la versione del sistema operativo è Windows Server 2019 e il cluster Windows è stato creato usando il nome di rete distribuito predefinito (DNN) predefinito, 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.
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
.Selezionare Impostazione.
Nel Centro installazione SQL Server selezionare Installazione.
Selezionare Nuova installazione del cluster di failover di SQL Server e quindi seguire le istruzioni della procedura guidata per installare l'istanza del cluster di failover di SQL Server.
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.
- Per un singolo ambiente subnet, specificare l'indirizzo IP che si prevede di aggiungere ad Azure Load Balancer
- 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:
In motore di database Configurazione, le directory dati devono trovarsi nella condivisione file Premium. Immettere il percorso completo della condivisione in questo formato:
\\storageaccountname.file.core.windows.net\filesharename\foldername
. Verrà visualizzato un avviso che informa che è stato specificato un file server come directory di dati. Si tratta di un comportamento previsto. Per evitare possibili errori, assicurarsi che l'account utente con cui si è eseguita la connessione tramite RDP nella macchina virtuale quando è stata resa permanente la condivisione file sia lo stesso account usato dal servizio SQL Server.Dopo aver completato i passaggi della procedura guidata, verrà installata un'istanza del cluster di failover di SQL Server nel primo nodo.
Aggiungere nodi aggiuntivi all'istanza del cluster di failover di SQL
Per aggiungere un nodo aggiuntivo all'istanza del cluster di failover di SQL Server, seguire questa procedura:
Al termine dell'installazione dell'istanza del cluster di failover nel primo nodo, connettersi al secondo nodo usando RDP o bastion.
Aprire il Centro installazione SQL Server e selezionare Installazione.
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.
Per uno scenario su più subnet, in Configurazione della rete cluster, 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 Sì per confermare.
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.
Ripetere questi passaggi in tutti gli altri nodi da aggiungere 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.
Nota
Al momento, le istanze del cluster di failover di SQL Server in macchine virtuali di Azure registrate con l'estensione SQL IaaS Agent supportano solo un numero limitato di funzionalità disponibili tramite la registrazione di base e non quelle che richiedono l'agente, ad esempio il backup automatizzato, l'applicazione di patch, l'autenticazione di Microsoft Entra e la gestione avanzata del portale. Per altre informazioni, vedere la tabella dei vantaggi.
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 macchine virtuali 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
- FILESTREAM non è supportato per un cluster di failover con una condivisione file Premium. Per usare Filestream, distribuire il cluster usando Spazi di archiviazione diretta o Dischi condivisi di Azure
- Gli snapshot del database non sono attualmente supportati con File di Azure a causa di limitazioni dei file di tipo sparse.
- Poiché gli snapshot del database non sono supportati, CHECKDB per i database utente esegue il fallback a CHECKDB WITH TABLOCK. TABLOCK limita i controlli eseguiti. DBCC CHECKCATALOG non viene eseguito sul database e i dati di Service Broker non vengono convalidati.
- DBCC CHECKDB in
master
emsdb
il database non è supportato. - I database che usano la funzionalità OLTP in memoria non sono supportati in un'istanza del cluster di failover distribuita con una condivisione file Premium. Se l'azienda richiede OLTP in memoria, è consigliabile distribuire l'istanza del cluster di failover con dischi condivisi di Azure o Spazi di archiviazione diretta.
- Microsoft Distributed Transaction Coordinator (MSDTC) non è supportato da SQL Server nelle istanze del cluster di failover di VM di Azure implementate nelle condivisioni file Premium. Per altre informazioni, vedere Limitazioni dell’istanza del cluster di failover.
- Le macchine virtuali di Azure supportano Microsoft Distributed Transaction Coordinator (MSDTC) in Windows Server 2019 e versioni successive quando implementato in volumi condivisi cluster dedicati (CSV) e usando un bilanciamento del carico standard. MSDTC non è supportato in Windows Server 2016 e versioni precedenti.
Supporto limitato delle estensioni
Al momento, le istanze del cluster di failover di SQL Server in macchine virtuali di Azure registrate con l'estensione SQL IaaS Agent supportano solo un numero limitato di funzionalità disponibili tramite la registrazione di base e non quelle che richiedono l'agente, ad esempio il backup automatizzato, l'applicazione di patch, l'autenticazione di Microsoft Entra e la gestione avanzata del portale. Per altre informazioni, vedere la tabella dei vantaggi.
Se la VM di SQL Server è già stata registrata con l'estensione SQL IaaS Agent ed è stata abilitata qualsiasi funzionalità che richiede l'agente, è necessario eliminare l'estensione dalla VM di SQL Server eliminando la risorsa macchina virtuale SQL per le VM corrispondenti e quindi registrarla nuovamente con l'estensione SQL IaaS Agent. Per eliminare la risorsa Macchina virtuale SQL tramite il portale di Azure, deselezionare la casella di controllo accanto alla macchina virtuale corretta per evitare di eliminare quest'ultima.
Contenuto correlato
- Creare un'istanza del cluster di failover con dischi condivisi di Azure (SQL Server in una VM di Azure)
- Creare un'istanza del cluster di failover con Spazi di archiviazione diretta (SQL Server in macchine virtuali di Azure)
- Cluster di failover di Windows Server con SQL Server
- Istanze del cluster di failover con SQL Server in macchine virtuali di Azure
- Panoramica dell'istanza del cluster di failover
- Procedure consigliate per la configurazione HADR (SQL Server nelle macchine virtuali di Azure)