Disponibilità elevata e ripristino di emergenza per SQL Server nelle macchine virtuali di AzureHigh availability and disaster recovery for SQL Server in Azure Virtual Machines

Le macchine virtuali di Microsoft Azure con SQL Server possono consentire di ridurre il costo di una soluzione di database a disponibilità elevata e con ripristino di emergenza (HADR).Microsoft Azure virtual machines (VMs) with SQL Server can help lower the cost of a high availability and disaster recovery (HADR) database solution. Molte soluzioni HADR di SQL Server sono supportate nelle macchine virtuali di Azure, sia come soluzioni solo Azure sia come soluzioni ibride.Most SQL Server HADR solutions are supported in Azure virtual machines, both as Azure-only and as hybrid solutions. In una soluzione solo Azure l'intero sistema HADR viene eseguito in Azure.In an Azure-only solution, the entire HADR system runs in Azure. In una configurazione ibrida parte della soluzione viene eseguita in Azure e l'altra parte viene eseguita localmente nell'organizzazione.In a hybrid configuration, part of the solution runs in Azure and the other part runs on-premises in your organization. La flessibilità dell'ambiente Azure consente di passare ad Azure in parte o completamente per rispondere ai requisiti HADR e di budget dei sistemi di database di SQL Server.The flexibility of the Azure environment enables you to move partially or completely to Azure to satisfy the budget and HADR requirements of your SQL Server database systems.

Nota

Azure offre due modelli di distribuzione per creare e usare le risorse: Gestione risorse e la distribuzione classica.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. In questo articolo viene illustrato l'utilizzo di entrambi i modelli, ma Microsoft indica che le distribuzioni più nuove utilizzano il modello di gestione delle risorse.This article covers using both models, but Microsoft recommends that most new deployments use the Resource Manager model.

Comprendere la necessità di una soluzione HADRUnderstanding the need for an HADR solution

L'amministratore del database ha il compito di garantire che il sistema di database disponga delle funzionalità HADR richieste dal contratto di servizio.It is up to you to ensure that your database system possesses the HADR capabilities that the service-level agreement (SLA) requires. I meccanismi di disponibilità elevata di Azure, ad esempio la riparazione per i servizi cloud e il rilevamento del ripristino da errore per le macchine virtuali, non garantiscono di per sé la soddisfazione dei requisiti del contratto di servizio desiderato.The fact that Azure provides high availability mechanisms, such as service healing for cloud services and failure recovery detection for Virtual Machines, does not itself guarantee you can meet the desired SLA. Questi meccanismi proteggono la disponibilità elevata delle macchine virtuali, ma non la disponibilità elevata di SQL Server che viene eseguito nelle macchine virtuali.These mechanisms protect the high availability of the VMs but not the high availability of SQL Server running inside the VMs. È possibile che l'istanza di SQL Server restituisca un errore mentre la macchina virtuale è online e integra.It is possible for the SQL Server instance to fail while the VM is online and healthy. Inoltre, anche i meccanismi di disponibilità elevata forniti in Azure non evitano tempi di inattività delle macchine virtuali a causa di eventi quali il ripristino da errori software o hardware e gli aggiornamenti del sistema operativo.Moreover, even the high availability mechanisms provided by Azure allow for downtime of the VMs due to events such as recovery from software or hardware failures and operating system upgrades.

Neppure l'archiviazione con ridondanza geografica di Azure, implementata con una funzionalità denominata replica geografica, costituisce un'adeguata soluzione di ripristino di emergenza per i database.In addition, Geo Redundant Storage (GRS) in Azure, which is implemented with a feature called geo-replication, may not be an adequate disaster recovery solution for your databases. Poiché la replica geografica invia dati in modo asincrono, è possibile che gli aggiornamenti recenti vadano persi in caso di errore grave.Because geo-replication sends data asynchronously, recent updates can be lost in the event of disaster. Per altre informazioni relative alle limitazioni della replica geografica, consultare la sezione Replica geografica non supportata per file di dati e log in dischi separati .More information regarding geo-replication limitations are covered in the Geo-replication not supported for data and log files on separate disks section.

Architetture di distribuzione HADRHADR deployment architectures

Le tecnologie HADR di SQL Server supportate in Azure includono:SQL Server HADR technologies that are supported in Azure include:

È possibile combinare le tecnologie per implementare una soluzione di SQL Server che disponga di funzionalità di disponibilità elevata e ripristino di emergenza.It is possible to combine the technologies together to implement a SQL Server solution that has both high availability and disaster recovery capabilities. A seconda della tecnologia in uso, una distribuzione ibrida può richiedere un tunnel VPN con la rete virtuale di Azure.Depending on the technology you use, a hybrid deployment may require a VPN tunnel with the Azure virtual network. Le sezioni seguenti illustrano alcune architetture di distribuzione di esempio.The sections below show you some of the example deployment architectures.

Solo Azure: soluzioni di disponibilità elevataAzure-only: High availability solutions

È possibile avere una soluzione a disponibilità elevata per SQL Server a livello di database con Gruppi di disponibilità Always On, denominati gruppi di disponibilità.You can have a high availability solution for SQL Server at a database level with Always On Availability Groups - called availability groups. È anche possibile creare una soluzione a disponibilità elevata a livello di istanza con istanze del cluster di failover Always On, denominate istanze del cluster di failover.You can also create a high availability solution at an instance level with Always On Failover Cluster Instances - failover cluster instances. Per maggiore ridondanza, è anche possibile creare ridondanza per entrambi i livelli tramite la creazione di gruppi di disponibilità nelle istanze del cluster di failover.For additional redundancy, you can create redundancy at both levels by creating availability groups on failover cluster instances.

TecnologiaTechnology Architetture di esempioExample Architectures
Gruppi di disponibilitàAvailability groups Le repliche di disponibilità in esecuzione nelle macchine virtuali di Azure nella stessa area assicurano disponibilità elevata.Availability replicas running in Azure VMs in the same region provide high availability. È necessario configurare una macchina virtuale da usare come controller di dominio perché il servizio Clustering di failover di Windows richiede un dominio di Active Directory.You need to configure a domain controller VM, because Windows failover clustering requires an Active Directory domain.
Gruppi di disponibilitàAvailability Groups
Per altre informazioni, vedere Configurare manualmente un gruppo di disponibilità Always On nelle macchine virtuali di Azure tramite Resource Manager.For more information, see Configure Availability Groups in Azure (GUI).
Istanze del cluster di failoverFailover cluster instances Le istanze del cluster di failover, che richiedono l'archiviazione condivisa, possono essere create in 3 modi diversi.Failover Cluster Instances (FCI), which require shared storage, can be created in 3 different ways.

1. Un cluster di failover a due nodi in esecuzione su macchine virtuali di Azure con archiviazione collegata che usa Spazi di archiviazione diretta in Windows Server 2016 (S2D) per offrire una SAN virtuale basata su software.1. A two-node failover cluster running in Azure VMs with attached storage using Windows Server 2016 Storage Spaces Direct (S2D) to provide a software-based virtual SAN.

2. Un cluster di failover a due nodi in esecuzione su macchine virtuali di Azure con archiviazione supportata da una soluzione di clustering di terze parti.2. A two-node failover cluster running in Azure VMs with storage supported by a third-party clustering solution. Per un esempio specifico che usa SIOS DataKeeper, vedere High availability for a file share using failover clustering and 3rd party software SIOS DataKeeper (Disponibilità elevata per una condivisione file basata su clustering di failover e sul software di terze parti SIOS DataKeeper).For a specific example that uses SIOS DataKeeper, see High availability for a file share using failover clustering and 3rd party software SIOS DataKeeper.

3. Un cluster di failover a due nodi in esecuzione su macchine virtuali di Azure con archiviazione a blocchi condivisa su una destinazione iSCSI remota tramite ExpressRoute.3. A two-node failover cluster running in Azure VMs with remote iSCSI Target shared block storage via ExpressRoute. Ad esempio, NetApp Private Storage (NPS) espone una destinazione iSCSI tramite ExpressRoute con Equinix a macchine virtuali di Azure.For example, NetApp Private Storage (NPS) exposes an iSCSI target via ExpressRoute with Equinix to Azure VMs.

Per le soluzioni di replica dei dati e di archiviazione condivisa di terze parti, contattare il fornitore per eventuali problemi di accesso ai dati durante il failover.For third-party shared storage and data replication solutions, you should contact the vendor for any issues related to accessing data on failover.

Si noti che non è ancora supportato l'uso di istanze del cluster di failover nell' archivio file di Azure , perché questa soluzione non usa l'archiviazione Premium.Note that using FCI on top of Azure File storage is not supported yet, because this solution does not utilize Premium Storage. Questo tipo di supporto verrà introdotto a breve.We are working to support this soon.

Solo Azure: soluzioni di ripristino di emergenzaAzure-only: Disaster recovery solutions

È possibile disporre di una soluzione di ripristino di emergenza per i database di SQL Server in Azure tramite i gruppi di disponibilità, il mirroring del database o funzionalità di backup e ripristino con i BLOB di archiviazione.You can have a disaster recovery solution for your SQL Server databases in Azure using availability groups, database mirroring, or backup and restore with storage blobs.

TecnologiaTechnology Architetture di esempioExample Architectures
Gruppi di disponibilitàAvailability Groups Repliche di disponibilità in esecuzione tra più data center nelle macchine virtuali di Azure per il ripristino di emergenza.Availability replicas running across multiple datacenters in Azure VMs for disaster recovery. Questa soluzione per più aree protegge dalla completa interruzione dell'alimentazione del sito.This cross-region solution protects against complete site outage.
Gruppi di disponibilitàAvailability Groups
Nell'ambito di un'area tutte le repliche dovranno risiedere nello stesso servizio cloud e nella stessa rete virtuale.Within a region, all replicas should be within the same cloud service and the same VNet. Poiché ogni area sarà caratterizzata da una rete virtuale separata, queste soluzioni richiedono la connettività da rete virtuale a rete virtuale.Because each region will have a separate VNet, these solutions require VNet to VNet connectivity. Per altre informazioni, vedere Configurare una connessione da rete virtuale a rete virtuale con il portale di Azure.For more information, see Configure a VNet-to-VNet connection using the Azure portal. Per istruzioni dettagliate, vedere Configurare un gruppo di disponibilità SQL Server in macchine virtuali di Azure in aree diverse.For detailed instructions, see Configure a SQL Server Availability Group on Azure Virtual Machines in Different Regions.
Mirroring del databaseDatabase Mirroring Tutti i server principali, mirror e di controllo in esecuzione in diversi data center per il ripristino di emergenza.Principal and mirror and servers running in different datacenters for disaster recovery. È necessario eseguire la distribuzione usando certificati del server perché un dominio di Active Directory non può essere esteso a più data center.You must deploy using server certificates because an active directory domain cannot span multiple datacenters.
Mirroring del database
Backup e ripristino con il servizio di archiviazione BLOB di AzureBackup and Restore with Azure Blob Storage Service Il backup dei database di produzione viene eseguito direttamente nell'archiviazione BLOB in un data center diverso per il ripristino di emergenza.Production databases backed up directly to blob storage in a different datacenter for disaster recovery.
Backup e ripristinoBackup and Restore
Per altre informazioni, vedere Backup e ripristino per SQL Server in Macchine virtuali di Azure.For more information, see Backup and Restore for SQL Server in Azure Virtual Machines.
Replica e failover di SQL Server in Azure con Azure Site RecoveryReplicate and Failover SQL Server to Azure with Azure Site Recovery La replica dell'istanza di produzione di SQL Server di un data center di Azure viene eseguita direttamente in Archiviazione di Azure in un diverso data center di Azure per il ripristino di emergenza.Production SQL Server of one Azure datacenter replicated directly to Azure Storage of different Azure datacenter for disaster recovery.
Replica con Azure Site RecoveryReplicate using Azure Site Recovery
Per altre informazioni, vedere Proteggere SQL Server con il ripristino di emergenza di SQL Server e Azure Site Recovery.For more information, see Protect SQL Server using SQL Server disaster recovery and Azure Site Recovery.

IT ibrido: soluzioni di ripristino di emergenzaHybrid IT: Disaster recovery solutions

È possibile disporre di una soluzione di ripristino di emergenza per i database di SQL Server in un ambiente IT ibrido tramite i gruppi di disponibilità, il mirroring del database, il log shipping e funzionalità di backup e ripristino con l'archiviazione BLOB di Azure.You can have a disaster recovery solution for your SQL Server databases in a hybrid-IT environment using availability groups, database mirroring, log shipping, and backup and restore with Azure blog storage.

TecnologiaTechnology Architetture di esempioExample Architectures
Gruppi di disponibilitàAvailability Groups Alcune repliche di disponibilità in esecuzione nelle macchine virtuali di Azure e altre in esecuzione in locale per il ripristino di emergenza tra siti.Some availability replicas running in Azure VMs and other replicas running on-premises for cross-site disaster recovery. Il sito di produzione può essere locale o trovarsi in un data center di Azure.The production site can be either on-premises or in an Azure datacenter.
Gruppi di disponibilità
Poiché tutte le repliche di disponibilità devono trovarsi nello stesso cluster di failover, tale cluster deve essere esteso a entrambe le reti (un cluster di failover su più subnet).Because all availability replicas must be in the same failover cluster, the cluster must span both networks (a multi-subnet failover cluster). Questa configurazione richiede una connessione VPN tra Azure e la rete locale.This configuration requires a VPN connection between Azure and the on-premises network.

Per il corretto ripristino di emergenza dei database, è inoltre opportuno installare un controller di dominio di replica nel sito di ripristino di emergenza.For successful disaster recovery of your databases, you should also install a replica domain controller at the disaster recovery site.

È possibile usare la procedura guidata Aggiungi replica in SSMS per aggiungere una replica di Azure a un gruppo di disponibilità AlwaysOn esistente.It is possible to use the Add Replica Wizard in SSMS to add an Azure replica to an existing Always On Availability Group. Per altre informazioni, vedere l'esercitazione relativa all'estensione del gruppo di disponibilità AlwaysOn ad Azure.For more information, see Tutorial: Extend your Always On Availability Group to Azure.
Mirroring del databaseDatabase Mirroring Un partner in esecuzione in una macchina virtuale di Azure e l'altro in esecuzione in locale per il ripristino di emergenza tra siti usando certificati del server.One partner running in an Azure VM and the other running on-premises for cross-site disaster recovery using server certificates. I partner non devono essere nello stesso dominio di Active Directory e non è richiesta alcuna connessione VPN.Partners do not need to be in the same Active Directory domain, and no VPN connection is required.
Mirroring del databaseDatabase Mirroring
Un altro scenario di mirroring del database include un partner in esecuzione in una VM di Azure e l'altro in esecuzione in locale nello stesso dominio di Active Directory per il ripristino di emergenza tra siti.Another database mirroring scenario involves one partner running in an Azure VM and the other running on-premises in the same Active Directory domain for cross-site disaster recovery. È necessaria una connessione VPN tra la rete virtuale di Azure e la rete locale.A VPN connection between the Azure virtual network and the on-premises network is required.

Per il corretto ripristino di emergenza dei database, è inoltre opportuno installare un controller di dominio di replica nel sito di ripristino di emergenza.For successful disaster recovery of your databases, you should also install a replica domain controller at the disaster recovery site.
Log shippingLog Shipping Un server in esecuzione in una macchina virtuale di Azure e l'altro in esecuzione in locale per il ripristino di emergenza tra siti.One server running in an Azure VM and the other running on-premises for cross-site disaster recovery. Il log shipping dipende dalla condivisione dei file di Windows, pertanto è richiesta una connessione VPN tra la rete virtuale di Azure e la rete locale.Log shipping depends on Windows file sharing, so a VPN connection between the Azure virtual network and the on-premises network is required.
Log shipping
Per il corretto ripristino di emergenza dei database, è inoltre opportuno installare un controller di dominio di replica nel sito di ripristino di emergenza.For successful disaster recovery of your databases, you should also install a replica domain controller at the disaster recovery site.
Backup e ripristino con il servizio di archiviazione BLOB di AzureBackup and Restore with Azure Blob Storage Service Il backup dei database di produzione locali viene eseguito direttamente nell'archiviazione BLOB di Azure per il ripristino di emergenza.On-premises production databases backed up directly to Azure blob storage for disaster recovery.
Backup e ripristinoBackup and Restore
Per altre informazioni, vedere Backup e ripristino per SQL Server in Macchine virtuali di Azure.For more information, see Backup and Restore for SQL Server in Azure Virtual Machines.
Replica e failover di SQL Server in Azure con Azure Site RecoveryReplicate and Failover SQL Server to Azure with Azure Site Recovery La replica dell'istanza di produzione locale di SQL Server viene eseguita direttamente in Archiviazione di Azure per il ripristino di emergenza.On-premises production SQL Server replicated directly to Azure Storage for disaster recovery.
Replica con Azure Site RecoveryReplicate using Azure Site Recovery
Per altre informazioni, vedere Proteggere SQL Server con il ripristino di emergenza di SQL Server e Azure Site Recovery.For more information, see Protect SQL Server using SQL Server disaster recovery and Azure Site Recovery.

Considerazioni importanti per HADR di SQL Server in AzureImportant considerations for SQL Server HADR in Azure

La macchina virtuale, l'archiviazione e la rete di Azure hanno caratteristiche operative diverse rispetto a un'infrastruttura IT locale non virtualizzata.Azure VMs, storage, and networking have different operational characteristics than an on-premises, non-virtualized IT infrastructure. Per una corretta implementazione di una soluzione HADR di SQL Server in Azure è necessario capire queste differenze e progettare una soluzione adeguata.A successful implementation of a HADR SQL Server solution in Azure requires that you understand these differences and design your solution to accommodate them.

Nodi a disponibilità elevata in un set di disponibilitàHigh availability nodes in an availability set

I set di disponibilità in Azure consentono di collocare i nodi a disponibilità elevata in domini di errore (FD, Fault Domain) e domini di aggiornamento (UD, Update Domain) separati.Availability sets in Azure enable you to place the high availability nodes into separate Fault Domains (FDs) and Update Domains (UDs). Per collocare le macchine virtuali di Azure nello stesso set di disponibilità, è necessario distribuirle nello stesso servizio cloud.For Azure VMs to be placed in the same availability set, you must deploy them in the same cloud service. Solo i nodi dello stesso servizio cloud possono partecipare allo stesso set di disponibilità.Only nodes in the same cloud service can participate in the same availability set. Per altre informazioni, vedere Gestione della disponibilità delle macchine virtuali.For more information, see Manage the Availability of Virtual Machines.

Comportamento del cluster di failover nella rete di AzureFailover cluster behavior in Azure networking

Il servizio DHCP non conforme a RFC di Azure può provocare la non riuscita della creazione di determinate configurazioni del cluster di failover, a causa dell'assegnazione al nome di rete del cluster di un indirizzo IP duplicato (lo stesso indirizzo IP di uno dei nodi del cluster).The non-RFC-compliant DHCP service in Azure can cause the creation of certain failover cluster configurations to fail, due to the cluster network name being assigned a duplicate IP address, such as the same IP address as one of the cluster nodes. Ciò costituisce un problema quando si implementano i gruppi di disponibilità, che dipendono dalla funzionalità del cluster di failover di Windows.This is an issue when you implement Availability Groups, which depends on the Windows failover cluster feature.

Si consideri uno scenario in cui viene creato e portato online un cluster a due nodi:Consider the scenario when a two-node cluster is created and brought online:

  1. Il cluster è online e NODE1 richiede un indirizzo IP assegnato in modo dinamico per il nome di rete del cluster.The cluster comes online, then NODE1 requests a dynamically assigned IP address for the cluster network name.
  2. Dal servizio DHCP non viene assegnato un indirizzo IP diverso da quello dello stesso NODE1, poiché il servizio DHCP riconosce che la richiesta proviene da NODE1.No IP address other than NODE1’s own IP address is given by the DHCP service, since the DHCP service recognizes that the request comes from NODE1 itself.
  3. Windows rileva l'assegnazione di un indirizzo duplicato a NODE1 e al nome di rete del cluster di failover e il gruppo cluster predefinito non può essere portato online.Windows detects that a duplicate address is assigned both to NODE1 and to the failover cluster network name, and the default cluster group fails to come online.
  4. Il gruppo cluster predefinito passa a NODE2, che tratta l'indirizzo IP di NODE1 come l'indirizzo IP del cluster e porta online il gruppo cluster predefinito.The default cluster group moves to NODE2, which treats NODE1’s IP address as the cluster IP address and brings the default cluster group online.
  5. Quando NODE2 tenta di stabilire la connessione con NODE1, i pacchetti indirizzati a NODE1 non lasciano mai NODE2 perché l'indirizzo IP di NODE1 viene risolto in se stesso.When NODE2 attempts to establish connectivity with NODE1, packets directed at NODE1 never leave NODE2 because it resolves NODE1’s IP address to itself. NODE2 non è in grado di stabilire la connessione con NODE1, quindi perde il quorum e arresta il cluster.NODE2 cannot establish connectivity with NODE1, then loses quorum and shuts down the cluster.
  6. Nel frattempo, NODE1 può inviare i pacchetti a NODE2, ma NODE2 non può rispondere.In the meantime, NODE1 can send packets to NODE2, but NODE2 cannot reply. NODE1 perde il quorum e arresta il cluster.NODE1 loses quorum and shuts down the cluster.

È possibile evitare questo scenario assegnando un indirizzo IP statico inutilizzato, ad esempio un indirizzo IP locale rispetto al collegamento come 169.254.1.1, al nome di rete del cluster per portarlo online.This scenario can be avoided by assigning an unused static IP address, such as a link-local IP address like 169.254.1.1, to the cluster network name in order to bring the cluster network name online. Per semplificare il processo, vedere Configuring Windows failover cluster in Azure for availability groups (Configurazione del cluster di failover di Windows in Azure per i gruppi di disponibilità).To simplify this process, see Configuring Windows failover cluster in Azure for availability groups.

Per altre informazioni, vedere Configurare manualmente un gruppo di disponibilità Always On nelle macchine virtuali di Azure tramite Resource Manager.For more information, see Configure availability groups in Azure (GUI).

Supporto del listener del gruppo di disponibilitàAvailability group listener support

I listener del gruppo di disponibilità sono supportati nelle VM di Azure che eseguono Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2 e Windows Server 2016.Availability group listeners are supported on Azure VMs running Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, and Windows Server 2016. Questo supporto viene fornito attraverso l'uso di endpoint con carico bilanciato abilitato nelle macchine virtuali di Azure che costituiscono nodi del gruppo di disponibilità.This support is made possible by the use of load-balanced endpoints enabled on the Azure VMs that are availability group nodes. È necessario eseguire passaggi di configurazione specifici affinché i listener funzionino sia per le applicazioni client eseguite in Azure sia per quelle eseguite in locale.You must follow special configuration steps for the listeners to work for both client applications that are running in Azure as well as those running on-premises.

Sono disponibili due opzioni principali per la configurazione del listener: esterno (pubblico) o interno.There are two main options for setting up your listener: external (public) or internal. Il listener esterno (pubblico) usa un bilanciamento del carico con connessione Internet ed è associato a un indirizzo pubblico Virtuale IP (VIP) che è accessibile tramite Internet.The external (public) listener uses an internet facing load balancer and is associated with a public Virtual IP (VIP) that is accessible over the internet. Un listener interno usa bilanciamento del carico interno e supporta solo i client all'interno della stessa rete virtuale.An internal listener uses an internal load balancer and only supports clients within the same Virtual Network. Per un tipo di bilanciamento del carico, è necessario abilitare Direct Server Return.For either load balancer type, you must enable Direct Server Return.

Se il gruppo di disponibilità si estende su più subnet di Azure (ad esempio una distribuzione che attraversa aree di Azure), la stringa di connessione client deve includere "MultisubnetFailover=True".If the Availability Group spans multiple Azure subnets (such as a deployment that crosses Azure regions), the client connection string must include "MultisubnetFailover=True". Di conseguenza, vengono eseguiti tentativi di connessione paralleli alle repliche nelle diverse subnet.This results in parallel connection attempts to the replicas in the different subnets. Per istruzioni sull'impostazione di un listener, vedereFor instructions on setting up a listener, see

È comunque possibile connettersi separatamente a ogni replica di disponibilità effettuando la connessione direttamente all'istanza del servizio.You can still connect to each availability replica separately by connecting directly to the service instance. Inoltre, poiché i gruppi di disponibilità sono compatibili con le versioni precedenti dei client di mirroring del database, è possibile connettersi alle repliche di disponibilità come partner per il mirroring del database purché le repliche siano configurate in modo analogo al mirroring del database:Also, since availability groups are backward compatible with database mirroring clients, you can connect to the availability replicas like database mirroring partners as long as the replicas are configured similar to database mirroring:

  • Una replica primaria e una replica secondariaOne primary replica and one secondary replica
  • La replica secondaria è configurata come non leggibile (opzione Secondario leggibile impostata su No)The secondary replica is configured as non-readable (Readable Secondary option set to No)

Di seguito è riportata una stringa di connessione client di esempio corrispondente a questa configurazione simile al mirroring del database usando ADO.NET o SQL Server Native Client:An example client connection string that corresponds to this database mirroring-like configuration using ADO.NET or SQL Server Native Client is below:

Data Source=ReplicaServer1;Failover Partner=ReplicaServer2;Initial Catalog=AvailabilityDatabase;

Per altre informazioni sulla connettività client, vedere:For more information on client connectivity, see:

Latenza di rete in ambiente IT ibridoNetwork latency in hybrid IT

È opportuno distribuire la soluzione HADR con il presupposto che potrebbero verificarsi lunghi periodi di tempo con latenza di rete elevata tra la rete locale e Azure.You should deploy your HADR solution with the assumption that there may be periods of time with high network latency between your on-premises network and Azure. Quando si distribuiscono le repliche in Azure, occorre usare il commit asincrono anziché quello sincrono per la modalità di sincronizzazione.When deploying replicas to Azure, you should use asynchronous commit instead of synchronous commit for the synchronization mode. Per la distribuzione dei server di mirroring del database in locale e in Azure, usare la modalità a prestazioni elevate anziché la modalità a protezione elevata.When deploying database mirroring servers both on-premises and in Azure, use the high-performance mode instead of the high-safety mode.

Supporto della replica geograficaGeo-replication support

La replica geografica nei dischi di Azure non supporta l'archiviazione del file di dati e del file di log dello stesso database in dischi separati.Geo-replication in Azure disks does not support the data file and log file of the same database to be stored on separate disks. L'archiviazione con ridondanza geografica replica le modifiche in ogni disco in modo indipendente e asincrono.GRS replicates changes on each disk independently and asynchronously. Questo meccanismo garantisce l'ordine di scrittura in un disco singolo nella copia replicata geograficamente, ma non in più copie replicate geograficamente di più dischi.This mechanism guarantees the write order within a single disk on the geo-replicated copy, but not across geo-replicated copies of multiple disks. Se si configura un database per l'archiviazione del file di dati e del file di log in dischi separati, i dischi recuperati dopo un'emergenza potranno contenere una copia più aggiornata del file di dati che del file di log, creando un'interruzione nel log write-ahead in SQL Server e nelle proprietà ACID delle transazioni.If you configure a database to store its data file and its log file on separate disks, the recovered disks after a disaster may contain a more up-to-date copy of the data file than the log file, which breaks the write-ahead log in SQL Server and the ACID properties of transactions. Se non è possibile disabilitare la replica geografica nell'account di archiviazione, è consigliabile mantenere tutti i file di dati e i file di log per un determinato database nello stesso disco.If you do not have the option to disable geo-replication on the storage account, you should keep all data and log files for a given database on the same disk. Se è necessario usare più dischi a causa delle dimensioni del database, distribuire una delle soluzioni di ripristino di emergenza elencate in precedenza per garantire la ridondanza dei dati.If you must use more than one disk due to the size of the database, you need to deploy one of the disaster recovery solutions listed above to ensure data redundancy.

Passaggi successiviNext steps

Se è necessario creare una macchina virtuale di Azure con SQL Server, vedere Provisioning di una macchina virtuale di SQL Server in Azure.If you need to create an Azure virtual machine with SQL Server, see Provisioning a SQL Server Virtual Machine on Azure.

Per ottenere le prestazioni migliori di SQL Server in esecuzione su una VM di Azure, vedere le indicazioni fornite in Procedure consigliate per le prestazioni per SQL Server in Macchine virtuali di Azure.To get the best performance from SQL Server running on an Azure VM, see the guidance in Performance Best Practices for SQL Server in Azure Virtual Machines.

Per altri argomenti relativi all'esecuzione di SQL Server nelle macchine virtuali di Azure, vedere SQL Server in Macchine virtuali di Azure.For other topics related to running SQL Server in Azure VMs, see SQL Server on Azure Virtual Machines.

Altre risorse:Other resources