Skip to content

Commit aa1b198

Browse files
Merge pull request #194198 from radshah-ms/patch-1
Update auto-failover-group-configure-sql-mi.md
2 parents 321827f + 47cb7ff commit aa1b198

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

articles/azure-sql/managed-instance/auto-failover-group-configure-sql-mi.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ Consider the following prerequisites:
3333
- The subnet range for the secondary virtual network must not overlap the subnet range of the primary virtual network.
3434
- The collation and time zone of the secondary managed instance must match that of the primary managed instance.
3535
- When connecting the two gateways, the **Shared Key** should be the same for both connections.
36-
- You will need to either configure [ExpressRoute](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md) or create a gateway for the virtual network of each SQL Managed Instance, connect the two gateways, and then create the failover group.
36+
- You'll need to either configure [ExpressRoute](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md) or create a gateway for the virtual network of each SQL Managed Instance, connect the two gateways, and then create the failover group.
3737
- Deploy both managed instances to [paired regions](../../availability-zones/cross-region-replication-azure.md) for performance reasons. Managed instances residing in geo-paired regions have much better performance compared to unpaired regions.
3838

3939
## Create primary virtual network gateway
4040

41-
If you have not configured [ExpressRoute](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md), you can create the primary virtual network gateway with the Azure portal, or PowerShell.
41+
If you haven't configured [ExpressRoute](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md), you can create the primary virtual network gateway with the Azure portal, or PowerShell.
4242

4343
> [!NOTE]
4444
> The SKU of the gateway affects throughput performance. This article deploys a gateway with the most basic SKU (`HwGw1`). Deploy a higher SKU (example: `VpnGw3`) to achieve higher throughput. For all available options, see [Gateway SKUs](../../vpn-gateway/vpn-gateway-about-vpngateways.md#benchmark)
@@ -241,7 +241,7 @@ Create the failover group for your managed instances by using the Azure portal o
241241

242242
Create the failover group for your SQL Managed Instances by using the Azure portal.
243243

244-
1. Select **Azure SQL** in the left-hand menu of the [Azure portal](https://portal.azure.com). If **Azure SQL** is not in the list, select **All services**, then type Azure SQL in the search box. (Optional) Select the star next to **Azure SQL** to favorite it and add it as an item in the left-hand navigation.
244+
1. Select **Azure SQL** in the left-hand menu of the [Azure portal](https://portal.azure.com). If **Azure SQL** isn't in the list, select **All services**, then type Azure SQL in the search box. (Optional) Select the star next to **Azure SQL** to favorite it and add it as an item in the left-hand navigation.
245245
1. Select the primary managed instance you want to add to the failover group.
246246
1. Under **Settings**, navigate to **Instance Failover Groups** and then choose to **Add group** to open the **Instance Failover Group** page.
247247

@@ -251,7 +251,7 @@ Create the failover group for your SQL Managed Instances by using the Azure port
251251

252252
![Create failover group](./media/auto-failover-group-configure-sql-mi/create-failover-group.png)
253253

254-
1. Once failover group deployment is complete, you will be taken back to the **Failover group** page.
254+
1. Once failover group deployment is complete, you'll be taken back to the **Failover group** page.
255255

256256
# [PowerShell](#tab/azure-powershell)
257257

@@ -351,14 +351,14 @@ The listener endpoint is in the form of `fog-name.database.windows.net`, and is
351351
You can create a failover group between SQL Managed Instances in two different subscriptions, as long as subscriptions are associated to the same [Azure Active Directory Tenant](../../active-directory/fundamentals/active-directory-whatis.md#terminology). When using PowerShell API, you can do it by specifying the `PartnerSubscriptionId` parameter for the secondary SQL Managed Instance. When using REST API, each instance ID included in the `properties.managedInstancePairs` parameter can have its own Subscription ID.
352352

353353
> [!IMPORTANT]
354-
> Azure portal does not support creation of failover groups across different subscriptions. Also, for the existing failover groups across different subscriptions and/or resource groups, failover cannot be initiated manually via portal from the primary SQL Managed Instance. Initiate it from the geo-secondary instance instead.
354+
> Azure portal does not support creation of failover groups across different subscriptions. Also, for the existing failover groups across different subscriptions and/or resource groups, failover can't be initiated manually via portal from the primary SQL Managed Instance. Initiate it from the geo-secondary instance instead.
355355
356356
## Change the secondary region
357357

358358
Let's assume that instance A is the primary instance, instance B is the existing secondary instance, and instance C is the new secondary instance in the third region. To make the transition, follow these steps:
359359

360360
1. Create instance C with same size as A and in the same DNS zone.
361-
2. Delete the failover group between instances A and B. At this point the logins will be failing because the SQL aliases for the failover group listeners have been deleted and the gateway will not recognize the failover group name. The secondary databases will be disconnected from the primaries and will become read-write databases.
361+
2. Delete the failover group between instances A and B. At this point the logins will be failing because the SQL aliases for the failover group listeners have been deleted and the gateway won't recognize the failover group name. The secondary databases will be disconnected from the primaries and will become read-write databases.
362362
3. Create a failover group with the same name between instance A and C. Follow the instructions in [failover group with SQL Managed Instance tutorial](failover-group-add-instance-tutorial.md). This is a size-of-data operation and will complete when all databases from instance A are seeded and synchronized.
363363
4. Delete instance B if not needed to avoid unnecessary charges.
364364

@@ -379,7 +379,7 @@ Let's assume instance A is the primary instance, instance B is the existing seco
379379
> After step 3 and until step 4 is completed the databases in instance A will remain unprotected from a catastrophic failure of instance A.
380380
381381
> [!IMPORTANT]
382-
> When the failover group is deleted, the DNS records for the listener endpoints are also deleted. At that point, there is a non-zero probability of somebody else creating a failover group with the same name. Because failover group names must be globally unique, this will prevent you from using the same name again. To minimize this risk, don't use generic failover group names.
382+
> When the failover group is deleted, the DNS records for the listener endpoints are also deleted. At that point, there's a non-zero probability of somebody else creating a failover group with the same name. Because failover group names must be globally unique, this will prevent you from using the same name again. To minimize this risk, don't use generic failover group names.
383383
384384
## <a name="enabling-geo-replication-between-managed-instances-and-their-vnets"></a> Enabling geo-replication between MI virtual networks
385385

@@ -388,18 +388,18 @@ When you set up a failover group between primary and secondary SQL Managed Insta
388388
- The two instances of SQL Managed Instance need to be in different Azure regions.
389389
- The two instances of SQL Managed Instance need to be the same service tier, and have the same storage size.
390390
- Your secondary instance of SQL Managed Instance must be empty (no user databases).
391-
- The virtual networks used by the instances of SQL Managed Instance need to be connected through a [VPN Gateway](../../vpn-gateway/vpn-gateway-about-vpngateways.md) or [Express Route](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md). When two virtual networks connect through an on-premises network, ensure there is no firewall rule blocking ports 5022, and 11000-11999. Global VNet Peering is supported with the limitation described in the note below.
391+
- The virtual networks used by the instances of SQL Managed Instance need to be connected through a [VPN Gateway](../../vpn-gateway/vpn-gateway-about-vpngateways.md) or [Express Route](../../expressroute/expressroute-howto-circuit-portal-resource-manager.md). When two virtual networks connect through an on-premises network, ensure there's no firewall rule blocking ports 5022, and 11000-11999. Global VNet Peering is supported with the limitation described in the note below.
392392

393393
> [!IMPORTANT]
394394
> [On 9/22/2020 support for global virtual network peering for newly created virtual clusters was announced](https://azure.microsoft.com/updates/global-virtual-network-peering-support-for-azure-sql-managed-instance-now-available/). It means that global virtual network peering is supported for SQL managed instances created in empty subnets after the announcement date, as well for all the subsequent managed instances created in those subnets. For all the other SQL managed instances peering support is limited to the networks in the same region due to the [constraints of global virtual network peering](../../virtual-network/virtual-network-manage-peering.md#requirements-and-constraints). See also the relevant section of the [Azure Virtual Networks frequently asked questions](../../virtual-network/virtual-networks-faq.md#what-are-the-constraints-related-to-global-vnet-peering-and-load-balancers) article for more details. To be able to use global virtual network peering for SQL managed instances from virtual clusters created before the announcement date, consider configuring non-default [maintenance window](../database/maintenance-window.md) on the instances, as it will move the instances into new virtual clusters that support global virtual network peering.
395395
396-
- The two SQL Managed Instance VNets cannot have overlapping IP addresses.
396+
- The two SQL Managed Instance VNets can't have overlapping IP addresses.
397397
- You need to set up your Network Security Groups (NSG) such that ports 5022 and the range 11000~12000 are open inbound and outbound for connections from the subnet of the other managed instance. This is to allow replication traffic between the instances.
398398

399399
> [!IMPORTANT]
400400
> Misconfigured NSG security rules leads to stuck database seeding operations.
401401
402-
- The secondary SQL Managed Instance is configured with the correct DNS zone ID. DNS zone is a property of a SQL Managed Instance and underlying virtual cluster, and its ID is included in the host name address. The zone ID is generated as a random string when the first SQL Managed Instance is created in each VNet and the same ID is assigned to all other instances in the same subnet. Once assigned, the DNS zone cannot be modified. SQL Managed Instances included in the same failover group must share the DNS zone. You accomplish this by passing the primary instance's zone ID as the value of DnsZonePartner parameter when creating the secondary instance.
402+
- The secondary SQL Managed Instance is configured with the correct DNS zone ID. DNS zone is a property of a SQL Managed Instance and underlying virtual cluster, and its ID is included in the host name address. The zone ID is generated as a random string when the first SQL Managed Instance is created in each VNet and the same ID is assigned to all other instances in the same subnet. Once assigned, the DNS zone can't be modified. SQL Managed Instances included in the same failover group must share the DNS zone. You accomplish this by passing the primary instance's zone ID as the value of DnsZonePartner parameter when creating the secondary instance.
403403

404404
> [!NOTE]
405405
> For a detailed tutorial on configuring failover groups with SQL Managed Instance, see [add a SQL Managed Instance to a failover group](../managed-instance/failover-group-add-instance-tutorial.md).
@@ -408,7 +408,7 @@ When you set up a failover group between primary and secondary SQL Managed Insta
408408

409409

410410
<!--
411-
There is some overlap of content in the following articles, be sure to make changes to all if necessary:
411+
There's some overlap of content in the following articles, be sure to make changes to all if necessary:
412412
/azure-sql/auto-failover-group-overview.md
413413
/azure-sql/database/auto-failover-group-sql-db.md
414414
/azure-sql/database/auto-failover-group-configure-sql-db.md
@@ -418,14 +418,14 @@ There is some overlap of content in the following articles, be sure to make chan
418418

419419
Permissions for a failover group are managed via [Azure role-based access control (Azure RBAC)](../../role-based-access-control/overview.md).
420420

421-
Azure RBAC write access is necessary to create and manage failover groups. The [SQL Server Contributor](../../role-based-access-control/built-in-roles.md#sql-server-contributor) role has all the necessary permissions to manage failover groups.
421+
Azure RBAC write access is necessary to create and manage failover groups. The [SQL Managed Instance Contributor](../../role-based-access-control/built-in-roles.md#sql-managed-instance-contributor) role has all the necessary permissions to manage failover groups.
422422

423423
The following table lists specific permission scopes for Azure SQL Managed Instance:
424424

425425
| **Action** | **Permission** | **Scope**|
426426
| :---- | :---- | :---- |
427427
|**Create failover group**| Azure RBAC write access | Primary managed instance </br> Secondary managed instance|
428-
| **Update failover group** Azure RBAC write access | Failover group </br> All databases within the managed instance|
428+
| **Update failover group**| Azure RBAC write access | Failover group </br> All databases within the managed instance|
429429
| **Fail over failover group** | Azure RBAC write access | Failover group on new primary managed instance |
430430

431431

0 commit comments

Comments
 (0)