I carichi di lavoro più complessi del database di SQL Server richiedono una capacità di I/O molto elevata. Necessitano anche di un accesso a bassa latenza alle risorse di archiviazione. Questo documento descrive una soluzione a larghezza di banda elevata e a bassa latenza per i carichi di lavoro di SQL Server.
La soluzione fornisce l'accesso ai file condivisi con il protocollo Server Message Block (SMB). L'architettura usa SQL Server in Macchine virtuali di Azure. Usa anche Azure NetApp Files, un servizio di archiviazione file condivisa. Azure NetApp Files offre i vantaggi seguenti:
- I limiti di I/O del disco per le frequenze di accesso che si applicano a livello di macchina virtuale (VM) non influiscono su Azure NetApp Files. Di conseguenza, è possibile usare macchine virtuali di dimensioni inferiori rispetto a quelle che si userebbero per l'archiviazione su disco senza ridurre le prestazioni. Questo approccio riduce significativamente i costi.
- Azure NetApp Files offre flessibilità. È possibile aumentare o ridurre le distribuzioni su richiesta per rendere la configurazione conveniente in termini di costi.
Potenziali casi d'uso
Questa soluzione ha molti usi:
- Esecuzione di nuove istanze di SQL Server che richiedono disponibilità elevata con standard elevati di prestazioni.
- Migrazione di istanze di SQL Server ad alte prestazioni e disponibilità elevata e dall'infrastruttura locale a Macchine virtuali di Azure.
- Uso di set di disponibilità e archiviazione condivisa SMB per distribuire istanze del cluster di failover Always On di SQL Server a costi contenuti, di livello aziendale e a disponibilità elevata.
- Distribuzione di architetture di ripristino di emergenza di livello aziendale per sistemi ibridi o di Azure usando i gruppi di disponibilità Always On di SQL Server.
- Clonazione di sistemi di SQL Server di livello aziendale per l'uso in ambienti di test e sviluppo. La soluzione è particolarmente adatta per i casi in cui sono necessarie funzionalità avanzate di gestione dei dati. Può aiutare questi casi a soddisfare contratti di servizio rigidi per la protezione dei dati.
Architettura
La maggior parte del diagramma è riempita da un rettangolo di grandi dimensioni etichettato Gruppo di risorse SQL. Al suo interno, è presente un altro rettangolo etichettato Rete virtuale SQL. Quest'ultimo contiene due rettangoli affiancati più piccoli, uno per la subnet SQL e uno per la subnet Azure NetApp Files. Il rettangolo della subnet SQL contiene un'icona per SQL Server in Macchine virtuali di Azure. Il rettangolo della subnet Azure NetApp Files contiene le icone per Azure NetApp Files e i file di database. Una freccia etichettata SMB 3 connette i due rettangoli delle subnet. Una legenda colorata indica che i dati SQL nel file system del database richiedono prestazioni elevate. I file di log del database hanno un requisito di prestazioni medie.
Scaricare un SVG di questa architettura.
Flusso di lavoro
I componenti interagiscono nei modi seguenti:
- Questa architettura usa SQL Server in Macchine virtuali di Azure. Con questo servizio di Azure, SQL Server viene eseguito in macchine virtuali di Azure all'interno della subnet SQL.
- Nella subnet Azure NetApp Files, Azure NetApp Files fornisce l'accesso SMB 3 ai file di database e di log.
- In Azure NetApp Files è attivata l'opzione di condivisioni di disponibilità continua SMB. Questa funzionalità rende possibile il failover trasparente SMB, in modo da poter osservare gli eventi di manutenzione del servizio in Azure NetApp Files senza interruzioni per la distribuzione di SQL Server.
Componenti
La soluzione usa i componenti seguenti:
- Azure NetApp Files semplifica la migrazione e l'esecuzione di applicazioni basate su file senza necessità di modifiche al codice. Questo servizio di archiviazione file condivisa è frutto della collaborazione di Microsoft e NetApp, un partner Microsoft.
- Macchine virtuali offre una soluzione di infrastruttura come servizio (IaaS, Infrastructure as a Service). È possibile usare Macchine virtuali per distribuire risorse di elaborazione scalabili su richiesta. Macchine virtuali offre la flessibilità della virtualizzazione eliminando però le esigenze di manutenzione dell'hardware fisico. Questa soluzione usa macchine virtuali Windows.
- SQL Server in Macchine virtuali di Azure consente di eseguire la migrazione dei carichi di lavoro di SQL Server nel cloud con una compatibilità del codice del 100%. Come parte della famiglia di Azure SQL, questa soluzione di database esegue SQL Server nelle macchine virtuali. SQL Server in Macchine virtuali di Azure offre la flessibilità e la connettività ibrida di Azure. Ma questa soluzione fornisce anche le prestazioni, la sicurezza e l'analisi di SQL Server. È possibile continuare a usare la versione corrente di SQL Server. È anche possibile accedere agli aggiornamenti e alle versioni di SQL Server più recenti.
- Rete virtuale di Azure è un servizio di rete che gestisce le reti private virtuali in Azure. Attraverso la rete virtuale, le risorse di Azure come le macchine virtuali possono comunicare in modo sicuro tra loro, con Internet e con le reti locali. Una rete virtuale di Azure è simile a una rete tradizionale che opera in un data center. Tuttavia, una rete virtuale di Azure offre anche scalabilità, disponibilità, isolamento e altri vantaggi dell'infrastruttura di Azure.
Alternativi
Questa soluzione usa i gruppi di disponibilità Always On per il ripristino di emergenza. In alternativa, la replica tra aree offre un ripristino di emergenza efficiente tra le aree in Azure. La replica tra aree usa la replica basata sull'archiviazione. Non usa le risorse della macchina virtuale. Per altre informazioni, vedere Creare la replica dei volumi per Azure NetApp Files.
Dettagli dello scenario
Vantaggi principali
Questa immagine illustra i vantaggi dell'uso di SQL Server con Azure NetApp Files.
Il diagramma contiene due sezioni. A sinistra sono presenti quattro riquadri che elencano le funzionalità e i vantaggi di Azure NetApp Files. A destra sono presenti altri riquadri. Un riquadro è etichettato Produzione e un altro è etichettato Test e sviluppo su larga scala. Entrambi contengono icone di database e macchine virtuali. Un terzo riquadro è etichettato Livello di archiviazione. Contiene le icone per i dati del database e per Azure NetApp Files. Una legenda colorata indica che i dati e i log del database richiedono prestazioni elevate. I dati e i log del database clonati hanno un requisito medio-alto. Le copie dei cloni hanno un requisito basso, così come tutti i file binari del database.
Scaricare un SVG di questa architettura.
Servizio semplice e affidabile
Come servizio nativo di Azure di facile utilizzo, Azure NetApp Files viene eseguito all'interno dell'ambiente del data center di Azure. È possibile effettuare il provisioning, utilizzare e dimensionare Azure NetApp Files proprio come le altre opzioni di archiviazione di Azure. Azure NetApp Files usa le funzionalità di affidabilità fornite dal software di gestione dei dati NetApp ONTAP. Con questo software, è possibile effettuare il provisioning di volumi SMB di livello aziendale per SQL Server e altri carichi di lavoro in modo rapido e affidabile.
Sistemi a prestazioni elevate
Azure NetApp Files usa un set bare metal di archiviazione all-flash. Oltre a usare l'archiviazione condivisa e altamente scalabile, Azure NetApp Files fornisce latenze inferiori a 1 millisecondo. Questi fattori rendono questo servizio particolarmente adatto per l'uso del protocollo SMB per eseguire carichi di lavoro di SQL Server sulle reti.
Le macchine virtuali serie DCsv2 di Azure dispongono di sistemi aziendali ONTAP integrati all-flash ad alte prestazioni. Questi sistemi sono integrati anche nei framework SDN (Software Defined Networking) di Azure e Azure Resource Manager. Di conseguenza, si ottiene un'archiviazione condivisa a larghezza di banda elevata e a bassa latenza paragonabile a una soluzione locale. Le prestazioni di questa architettura soddisfano i requisiti dei carichi di lavoro aziendali critici più complessi.
Azure NetApp Files offre scalabilità su richiesta. È possibile ingrandire o ridurre le distribuzioni per ottimizzare la configurazione di ogni carico di lavoro.
Come illustrato nella sezione Prezzi, l'uso di Azure NetApp Files invece dell'archiviazione a blocchi riduce il costo totale di proprietà (TCO) di SQL Server.
Gestione dei dati di livello aziendale
Questa soluzione può gestire carichi di lavoro che richiedono funzionalità avanzate di gestione dei dati. ONTAP offre funzionalità in quest'area che non hanno eguali nel settore:
La clonazione istantanea ed efficiente in termini di spazio migliora gli ambienti di sviluppo e test.
La capacità su richiesta e il ridimensionamento delle prestazioni usano le risorse in modo efficiente.
Gli snapshot forniscono punti di coerenza del database. È possibile usare lo strumento di disattivazione del database di SQL Server di NetApp per creare snapshot coerenti con l'applicazione. Offrono questi vantaggi:
- Sono efficienti in termini di archiviazione. Per creare gli snapshot è necessaria solo una capacità limitata.
- È possibile crearli, replicarli, ripristinarli o clonarli rapidamente. Di conseguenza, forniscono soluzioni di backup e ripristino che consentono di ottenere contratti di servizio rigidi con obiettivi del tempo di ripristino (RTO) e obiettivi del punto di ripristino (RPO).
- Non influiscono sulle prestazioni del volume.
- Offrono scalabilità. È possibile crearli di frequente e archiviarne molti contemporaneamente.
Ripristino di emergenza ibrido
La combinazione di gruppi di disponibilità Always On e Azure NetApp Files fornisce il ripristino di emergenza per questa architettura. Queste soluzioni di ripristino di emergenza sono appropriate per i sistemi cloud e ibridi. I relativi piani funzionano in più aree e con data center locali.
Considerazioni
A questa soluzione si applicano le considerazioni seguenti:
Disponibilità
Per Azure NetApp Files:
- Vedere il Contratto di servizio per Azure NetApp Files per la garanzia di disponibilità di questo servizio.
- È possibile convertire i volumi SMB esistenti per usare la disponibilità continua.
Per SQL Server in Macchine virtuali di Azure, implementare una soluzione per la disponibilità elevata e il ripristino di emergenza per evitare tempi di inattività:
Usare un'istanza di Istanze del cluster di failover Always On con due database in due macchine virtuali separate.
Posizionare entrambe le macchine virtuali nella stessa rete virtuale. Possono quindi accedere l'una all'altra tramite l'indirizzo IP privato permanente.
Posizionare le macchine virtuali nello stesso set di disponibilità. Azure può quindi posizionarle in domini di errore e domini di aggiornamento separati.
Per la ridondanza geografica:
- Configurare i due database per la replica tra due aree diverse.
- Configurare i gruppi di disponibilità Always On.
La maggior parte del diagramma è riempita da un rettangolo di grandi dimensioni etichettato Gruppo di risorse SQL. Al suo interno, è presente un altro rettangolo etichettato Rete virtuale SQL. Quest'ultimo contiene due rettangoli più piccoli, uno per una subnet SQL e uno per una subnet Azure NetApp Files. Il rettangolo della subnet SQL contiene le icone per SQL Server in Macchine virtuali di Azure e Istanze del cluster di failover Always On di SQL Server. Il rettangolo della subnet Azure NetApp Files contiene le icone per Azure NetApp Files e i file di database. Una freccia etichettata SMB 3 connette i due rettangoli delle subnet. Una legenda colorata indica che i dati SQL nel file system del database richiedono prestazioni elevate. I file di log del database hanno un requisito di prestazioni medie.
Scaricare un SVG di questa architettura.
Scalabilità
- Come illustrato nella sezione Sistemi a prestazioni elevate, Azure NetApp Files offre scalabilità incorporata.
- Con SQL Server in Macchine virtuali di Azure, è possibile aggiungere o rimuovere macchine virtuali quando cambiano i requisiti di dati e calcolo. È anche possibile passare a un rapporto memoria/vCore superiore o inferiore. Per altre informazioni, vedere Dimensioni della macchina virtuale: procedure consigliate per le prestazioni per SQL Server in Macchine virtuali di Azure.
Sicurezza
- Azure NetApp Files protegge i dati in molti modi. Per informazioni su protezione intrinseca, crittografia, regole dei criteri, funzionalità di controllo degli accessi in base al ruolo e log attività, vedere Domande frequenti sulla sicurezza.
- SQL Server in Macchine virtuali di Azure protegge anche i dati. Per informazioni su crittografia, controllo di accesso, valutazioni delle vulnerabilità, avvisi di sicurezza e altre funzionalità, vedere Considerazioni sulla sicurezza per SQL Server in Macchine virtuali di Azure.
Ottimizzazione dei costi
L'uso di Azure NetApp Files invece dell'archiviazione a blocchi può ridurre i costi:
È possibile rendere la configurazione più efficiente in termini di costi. Le configurazioni locali tradizionali vengono dimensionate in base ai requisiti massimi del carico di lavoro. Di conseguenza, queste configurazioni sono più convenienti al massimo utilizzo. Al contrario, una distribuzione di Azure NetApp Files è scalabile. È possibile ottimizzare la configurazione per il requisito del carico di lavoro corrente per ridurre le spese.
È possibile usare macchine virtuali di dimensioni inferiori:
- Azure NetApp Files fornisce l'accesso alle risorse di archiviazione a bassa latenza. Con macchine virtuali di dimensioni inferiori si ottengono le stesse prestazioni offerte dalle macchine virtuali di dimensioni maggiori con archiviazione su disco Ultra.
- Le risorse cloud in genere pongono dei limiti alle operazioni di I/O. Questa procedura impedisce i rallentamenti improvvisi dovuti all'esaurimento delle risorse o alle interruzioni impreviste. Di conseguenza, le macchine virtuali presentano limitazioni di velocità effettiva del disco e limitazioni di larghezza di banda di rete. Le limitazioni di rete sono in genere superiori alle limitazioni di velocità effettiva del disco. Con l'archiviazione basata sulla rete, sono rilevanti solo i limiti di larghezza di banda di rete e si applicano solo ai dati in uscita. In altre parole, i limiti di I/O del disco a livello di macchina virtuale non influiscono su Azure NetApp Files. A causa di questi fattori, l'archiviazione basata sulla rete può ottenere prestazioni migliori rispetto all'I/O su disco. Questo vale anche quando Azure NetApp Files viene eseguito in macchine virtuali di dimensioni inferiori.
Le macchine virtuali di dimensioni inferiori offrono questi vantaggi in termini di prezzo rispetto a quelle di dimensioni maggiori:
- Hanno un costo inferiore.
- Comportano un costo della licenza di SQL Server inferiore.
- L'archiviazione basata sulla rete non ha una componente di costo di I/O.
Questi fattori rendono Azure NetApp Files meno costoso rispetto alle soluzioni di archiviazione su disco. Per un'analisi dettagliata del TCO, vedere Vantaggi dell'uso di Azure NetApp Files per la distribuzione di SQL Server.
Distribuire lo scenario
Per le risorse sulla distribuzione di SQL Server in Azure NetApp Files, vedere Architetture di soluzioni con Azure NetApp Files.
Per altre informazioni su come distribuire e accedere ai volumi di Azure NetApp Files, vedere la Documentazione di Azure NetApp Files.
Considerare le dimensioni del database:
- Per i database di piccole dimensioni, è possibile distribuire i file di database e di log in un unico volume. Queste configurazioni semplificate sono facili da gestire.
- Per i database di grandi dimensioni, può essere più efficiente configurare più volumi. È anche possibile usare un pool di capacità QoS (Qualità del servizio) manuale. Questo tipo fornisce un controllo più granulare sui requisiti di prestazioni.
Installare SQL Server con l'archiviazione su condivisione file SMB. SQL Server 2012 (11.x) e versioni successive supportano il file server SMB come opzione di archiviazione. I database utente del motore di database e i database di sistema, come Master, Model, MSDB e TempDB, forniscono tale supporto. Questo punto si applica all'installazione autonoma di SQL Server e all'installazione del cluster di failover di SQL Server. Per altre informazioni, vedere Installare SQL Server con l'archiviazione su condivisione file SMB.
Autori di contributi
Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai collaboratori seguenti.
Autore principale:
- Deanna Garcia | Principal Program Manager
Passaggi successivi
- Per informazioni sulla configurazione di una VM di SQL Server, vedere Avvio rapido: Creare SQL Server 2017 in una macchina virtuale Windows nel portale di Azure.
- Per informazioni su come eseguire la migrazione di SQL Server in Azure mantenendo il controllo dell'applicazione e del sistema operativo, vedere Panoramica della migrazione: da SQL Server a SQL Server in Macchine virtuali di Azure.
- Per informazioni su SQL Server in Azure NetApp Files, vedere la pagina di destinazione delle architetture delle soluzioni.
Risorse correlate
Architetture completamente distribuibili che usano Azure NetApp Files: