Disaster Recovery

Many services within Microsoft Azure provide automatic geo redundant storage. This is achieved using a concept known as region pairs. Each geographical area has at least one region pair, e.g. UK West is the secondary region for UK South. For example if you choose the geo replication option for a storage account, Azure will automatically replicate it to the secondary region for the primary without any additional configuration. Should the primary region fail, the account and storage will be available in the secondary site within a relative short period of time.

Many Azure services also allow the you to choose the region, but typically each service will require additional configuration specific to the service to allow geo redundancy. e.g. Event Hubs allow geo redundancy by configuring a secondary namespace and initiating a pairing. This type of geo redundancy does require individual configuration, however the additional flexibility does allow you to chose the DR region, it does not have to be the secondary region for a geographical pair. Although consideration must be given to topics such as data sovereignty when choosing. Often the paired secondary region is still used to keep all the service together in the desired disaster recovery region.

The following table lists the resources currently supported by SQLBuild and details the Azure and SQLBuild geo redundant options available:

SQLBuild Resource Azure GEO Redundancy SQLBuild Geo Redundancy Notes
azAdGroup Automatically replicated globally n/a Stored in Azure Active Directory which is internally stored in a highly available CosmosDB replicated worldwide.
azAdUser Automatically replicated globally n/a Stored in Azure Active Directory which is internally stored in a highly available CosmosDB replicated worldwide.
azAppConfigStore Geo replication to any region No In public preview. Replication will create a new config store when setting up replication. Only one replica per location.
azBastion n/a n/a Manually create a Bastion in your DR region, no replication required.
azDdosProtectionPlan n/a n/a Manually create a DDOS plan in your DR region. Your DR virtual network scan use a DPP creation in your DR region.
azDisk Geo replicate the backups n/a Disks offer no replication options themselves between regions. Your backups should be replicated to your DR region.
azEventHub Geo replication to any region Yes Can geo replicate to an empty namespace in a different region.
azKeyVault Automatically replicated to secondary n/a Can take up to 20 minutes to failover, primary keyvault is in read only whilst failover occurs.
azLocalNetworkGateway n/a n/a Network design should include capability from your local on premise site to the DR region also if required.
azManagedIdentity Automatically replicated globally n/a Stored in Azure Active Directory which is internally stored in a highly available CosmosDB replicated worldwide.
azManagementGroup Automatically replicated globally n/a Stored in Azure Active Directory which is internally stored in a highly available CosmosDB replicated worldwide.
azNetworkInterface n/a n/a Not required, should be part of your network design in your chosen DR region.
azNetworkSecurityGroup n/a n/a Not required, should be part of your network design in your chosen DR region.
azPublicIP n/a n/a Network Design should include capability for any globally required applications.
azRecoveryServicesVault n/a n/a Recovery Service Vault is a logical construct to just collate backups. The backups dictate the redundancy
azResourceGroup n/a n/a Just a logical construct, no need to replicate, create in DR site.
azRouteTable n/a n/a Not required, should be part of your network design in your chosen DR region.
azSqlDatabase Geo replication Yes Geo replication allow for 4 read only replicas within same or different regions but no automatic failover.
Failover Groups Yes Failover group allow automatic failover for one region but must be to a different region.
azSqlElasticPool n/a n/a Create in the DR region, will be required if databases being added to a failover group are in an elastic pool.
azSqlInstance Failover Groups No Failover group allow automatic failover and must be for a different region.
azSqlInstancePool n/a n/a Failover groups failover instances whether in a pool or not.
azSqlServer n/a n/a Logical construct, create in the DR region, will be required for the failover group configuration.
azStorage Geo replication available to secondary Yes Choice of SKU dictates zonal and regional redundancy.
azSubnet n/a n/a Not required, should be part of your network design in your chosen DR region.
azSubscription Automatically replicated globally n/a Automatically highly replicated by the Azure cloud.
azVirtualMachine Use Azure Site Recovery to replicate VMs No Site Recovery can replicate VMs to any region. Site Recovery is currently not supported by SQLBuild.
azVirtualNetwork n/a n/a Not required, should be part of your network design in your chosen DR region.
azVirtualNetworkGateway n/a n/a VNG’s are regional only, your network design should be using global methods to direct to a VNG within your DR region.