Architettura del cluster virtuale - Istanza gestita di SQL di Azure
Si applica a: Istanza gestita di SQL di Azure SQL
Questo articolo descrive l'architettura e la gestione delle operazioni del cluster virtuale che ospita Istanza gestita di SQL di Azure.
Panoramica
Istanza gestita di SQL di Azure è un singolo tenant platform-as-a-service (PaaS) costituito da componenti del servizio ospitati in un set dedicato di macchine virtuali isolate e aggiunti a un cluster virtuale. Questi set dedicati di macchine virtuali vengono inseriti in gruppi di macchine virtuali basati su attributi di configurazione dell'istanza simili, ad esempio la generazione dell'hardware e le finestre di manutenzione. Una o più istanze possono trovarsi in un gruppo di macchine virtuali. Uno o più gruppi di macchine virtuali formano un cluster virtuale. Un cluster virtuale si espande automaticamente o crea contratti, in base alle esigenze per supportare istanze nuove e rimosse.
Ogni cluster virtuale è associato a una subnet e distribuito automaticamente quando viene creata la prima istanza gestita di SQL in una subnet. Analogamente, un cluster virtuale viene rimosso automaticamente quando viene eliminata l'ultima istanza di una subnet, lasciando la subnet vuota e pronta per essere rimossa. Il cluster virtuale connette la subnet alle istanze gestite distribuite all'interno di tale subnet. Per stabilire l'associazione tra una subnet e il cluster viene usato un collegamento di associazione del servizio (SAL).
Il diagramma seguente illustra il layout concettuale del cluster virtuale:
Ruolo nelle operazioni di gestione
Il ruolo del cluster virtuale nelle operazioni di gestione consiste nel trovare le risorse di calcolo appropriate per l'operazione, nonché gestire le risorse all'interno del cluster, ad esempio le macchine virtuali che creano l'istanza e i gruppi di macchine virtuali. Le operazioni di gestione includono la creazione di nuove istanze, nonché l'eliminazione o la modifica della configurazione delle istanze esistenti. Il cluster virtuale si espande, riduce o elimina i gruppi di macchine virtuali esistenti oppure crea nuovi gruppi di macchine virtuali, a seconda dell'operazione.
Poiché i gruppi di macchine virtuali sono definiti da attributi di configurazione dell'istanza simili (ad esempio la generazione hardware e le finestre di manutenzione), apportando modifiche a uno di questi attributi per un'istanza di attiva il cluster virtuale per eseguire un'azione ai gruppi di macchine virtuali che lo formano. Le azioni attivate dalle operazioni di gestione includono la creazione di macchine virtuali nuove o l'eliminazione di macchine virtuali esistenti e gruppi di macchine virtuali, nonché l'espansione di gruppi esistenti e lo spostamento di istanze tra gruppi. Se tutte le macchine virtuali vengono rimosse da un gruppo, il cluster virtuale elimina anche il gruppo di macchine virtuali.
Ad esempio, se si modifica la generazione hardware di un'istanza, il cluster virtuale crea un nuovo gruppo di macchine virtuali per la generazione dell'hardware se non ne esiste già uno e sposta l'istanza in tale gruppo.
La durata delle operazioni di modifica del gruppo virtuale dipende dal tipo di operazione. Per altre informazioni sui tempi di provisioning, vedere Operazioni di gestione di Istanza gestita di SQL.
Numero di gruppi di macchine virtuali
Il numero di gruppi di macchine virtuali in un cluster virtuale dipende dagli elementi seguenti:
- Numero di diverse configurazioni di generazione hardware
- Numero di diverse configurazioni delle finestre di manutenzione
- Limiti delle dimensioni del gruppo di macchine virtuali (definite a livello di calcolo e soggette a modifiche)
È possibile determinare il numero di gruppi di macchine virtuali in un cluster virtuale moltiplicando il numero di configurazioni di generazione hardware diverse per il numero di diverse configurazioni della finestra di manutenzione nella subnet. Ad esempio, se sono presenti due configurazioni di generazione hardware (come una serie Standard e un'istanza della serie Premium) e due diverse configurazioni della finestra di manutenzione, il cluster virtuale contiene quattro gruppi di macchine virtuali.
Istanza gestita di SQL supporta tre diverse configurazioni di generazione hardware e tre diverse configurazioni della finestra di manutenzione. Di conseguenza, il numero minimo di gruppi di macchine virtuali in un cluster virtuale è 1 (una configurazione di generazione hardware e una configurazione della finestra di manutenzione) e il massimo è 9 (tre diverse configurazioni di generazione hardware e tre diverse configurazioni della finestra di manutenzione).
Importante
Poiché esiste un limite al numero di macchine virtuali che possono essere unite a un gruppo, la mancanza di spazio in un gruppo esistente può comportare la creazione di un gruppo di macchine virtuali con specifiche identiche. È possibile che una subnet con un numero elevato di istanze abbia più gruppi di computer con la stessa configurazione e superi 9 gruppi di macchine virtuali.
Ruolo nell'utilizzo degli indirizzi IP
La disponibilità elevata predefinita di Istanza gestita di SQL di Azure è implementata con Azure Service Fabric. Un cluster di Service Fabric è un set di computer fisici o macchine virtuali connessi tramite rete. Ogni computer o macchina virtuale che fa parte di un cluster di Service Fabric è denominato nodo del cluster e ciascun nodo riserva un indirizzo IP. Di conseguenza, ogni macchina virtuale nel set dedicato di macchine virtuali che creano un'istanza gestita di SQL viene considerata un nodo nel cluster di Service Fabric. Il cluster virtuale che ospita una o più istanze gestite di SQL assegna gli indirizzi IP a ogni macchina virtuale per formare un cluster di Service Fabric per la disponibilità elevata.
Poiché il cluster virtuale è responsabile dell'assegnazione di indirizzi IP alle macchine virtuali al suo interno e ogni cluster virtuale è associato a una singola subnet, è necessario considerare attentamente il numero di istanze che si prevede di distribuire nella subnet quando si determinano le dimensioni appropriate della subnet.
Quando si determinano le dimensioni appropriate per la subnet in cui verranno distribuite le istanze gestite, prendere in considerazione:
- Numero di istanze che si prevede di distribuire nella subnet
- Numero di gruppi di macchine virtuali diversi previsti nella subnet
Per ulteriori informazioni, vedere Determinare le dimensioni e l'intervallo della subnet richiesta per Istanza gestita di SQL di Azure.
Sincronizzazione DNS
Il cluster virtuale sincronizza le modifiche alle impostazioni del server DNS in una rete virtuale che ospita istanze gestite di SQL esistenti. Il cluster virtuale attiva la sincronizzazione e la propaga alle istanze all'interno del cluster. Per altre informazioni, vedere Risolvere i nomi di dominio privati in Istanza gestita di SQL di Azure.
Eliminare una subnet dopo l'eliminazione di un'istanza gestita di SQL di Azure
Prima di eliminare una subnet usata per le istanze gestite di SQL, è necessario assicurarsi che la subnet sia vuota. Poiché i cluster virtuali vengono creati automaticamente quando viene creata la prima istanza della subnet ed eliminati automaticamente quando viene eliminata l'ultima istanza nella subnet, è innanzitutto necessario eliminare tutte le istanze nella subnet prima di poter eliminare la subnet.
Importante
- La creazione e l'eliminazione del cluster virtuale è automatica e non richiede alcuna azione manuale oltre alla creazione della prima istanza o all'eliminazione dell'ultima istanza in una subnet.
- L'eliminazione di un cluster virtuale è un'operazione a esecuzione prolungata che può durare fino a 1,5 ore. Il cluster virtuale sarà ancora visibile nel portale fino al completamento dell'eliminazione del cluster virtuale.
In rari casi, la creazione di un'istanza ha esito negativo e genera un cluster virtuale vuoto. Inoltre, poiché è possibile annullare la creazione di un'istanza, è possibile distribuire un cluster virtuale con istanze in uno stato di distribuzione non riuscito. I cluster virtuali vuoti o i cluster con istanze che non sono stati distribuiti vengono rimossi automaticamente in background e non sono previsti addebiti associati ad essi.
Passaggi successivi
- Per una panoramica, vedere Cos'è Istanza gestita di SQL di Azure?.
- Informazioni su come Configurare una nuova rete virtuale di Azure o una rete virtuale di Azure esistente in cui sia possibile distribuire istanze gestite.
- Calcolare le dimensioni della subnet in cui si intende distribuire l'istanza gestita di SQL.
- Informazioni su come creare un'istanza gestita:
- Nel portale di Azure.
- Con PowerShell.
- Usando un modello di Azure Resource Manager.
- Usando un modello di Azure Resource Manager con jumpbox e SQL Server Management Studio.