Skip to content

Commit 7ba33e0

Browse files
committed
Edit BCDR doc
1 parent db0f40e commit 7ba33e0

File tree

1 file changed

+117
-60
lines changed

1 file changed

+117
-60
lines changed

articles/data-factory/configure-bcdr-azure-ssis-integration-runtime.md

Lines changed: 117 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -24,114 +24,170 @@ For more info about geo-replication and failover for SQL Database, see [Overview
2424

2525
[!INCLUDE [updated-for-az](../../includes/updated-for-az.md)]
2626

27-
## Scenario 1 - Azure-SSIS IR is pointing to read-write listener endpoint
27+
## Azure-SSIS IR failover with Azure SQL Database Managed Instance
2828

29-
### Conditions
29+
### Prerequisites
30+
1. Execute below command on the SSISDB on primary instance. This step is adding a new encryption password.
31+
```sql
32+
ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = 'password'
33+
```
3034

31-
This section applies when the following conditions are true:
35+
2. Create failover group on Azure SQL Database Managed Instance.
3236

33-
- The Azure-SSIS IR is pointing to the read-write listener endpoint of the failover group.
37+
3. Run **sp_control_dbmasterkey_password** on the secondary instance, using the new encryption password.
38+
```sql
39+
EXEC sp_control_dbmasterkey_password @db_name = N'SSISDB',
40+
@password = N'<password>', @action = N'add';
41+
GO
42+
```
3443

35-
AND
44+
### Solution
45+
When a failover occurs, if you want to use existing Azure-SSIS IR on primary region:
46+
1. Stop Azure-SSIS IR on primary region.
3647

37-
- The SQL Database server is *not* configured with the virtual network service endpoint rule.
48+
2. Edit Azure-SSIS IR with new region, endpoint and VNET information of secondary instance.
3849

39-
### Solution
50+
```powershell
51+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
52+
-CatalogServerEndpoint "Azure SQL Database server endpoint" `
53+
-CatalogAdminCredential "Azure SQL Database server admin credentials" `
54+
-VNetId "new VNet" `
55+
-Subnet "new subnet" `
56+
-SetupScriptContainerSasUri "new custom setup SAS URI"
57+
```
4058

41-
When failover occurs, it is transparent to the Azure-SSIS IR. The Azure-SSIS IR automatically connects to the new primary of the failover group.
59+
3. Restart Azure-SSIS IR.
4260

43-
## Scenario 2 - Azure-SSIS IR is pointing to primary server endpoint
61+
4. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
4462

45-
### Conditions
63+
If you want to provision a new Azure-SSIS IR on secondary region:
64+
> [!NOTE]
65+
> Step 4 (creation of IR) needs to be done via PowerShell. Azure portal will report an error stating that SSISDB already exists.
66+
1. Stop Azure-SSIS IR on primary region.
4667

47-
This section applies when one of the following conditions is true:
68+
2. Execute stored procedure to update metadata in SSISDB to accept connections from **\<new_data_factory_name\>** and **\<new_integration_runtime_name\>**.
69+
70+
```SQL
71+
EXEC [catalog].[failover_integration_runtime] @data_factory_name='<new_data_factory_name>', @integration_runtime_name='<new_integration_runtime_name>'
72+
```
4873

49-
- The Azure-SSIS IR is pointing to the primary server endpoint of the failover group. This endpoint changes when failover occurs.
74+
3. Create a new data factory named **\<new_data_factory_name\>** in the new region. For more info, see Create a data factory.
5075

51-
OR
76+
```powershell
77+
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
78+
-Location "new region"`
79+
-Name "<new_data_factory_name>"
80+
```
81+
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
5282

53-
- The Azure SQL Database server is configured with the virtual network service endpoint rule.
83+
4. Create a new Azure-SSIS IR named **\<new_integration_runtime_name\>** in the new region using Azure PowerShell.
5484

55-
OR
85+
```powershell
86+
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
87+
-DataFactoryName "new data factory name" `
88+
-Name "<new_integration_runtime_name>" `
89+
-Description $AzureSSISDescription `
90+
-Type Managed `
91+
-Location $AzureSSISLocation `
92+
-NodeSize $AzureSSISNodeSize `
93+
-NodeCount $AzureSSISNodeNumber `
94+
-Edition $AzureSSISEdition `
95+
-LicenseType $AzureSSISLicenseType `
96+
-MaxParallelExecutionsPerNode $AzureSSISMaxParallelExecutionsPerNode `
97+
-VnetId "new vnet" `
98+
-Subnet "new subnet" `
99+
-CatalogServerEndpoint $SSISDBServerEndpoint `
100+
-CatalogPricingTier $SSISDBPricingTier
101+
```
56102

57-
- The database server is a SQL Database Managed Instance configured with a virtual network.
103+
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
58104

59-
### Solution
105+
5. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
60106

61-
When failover occurs, you have to do the following things:
62107

63-
1. Stop the Azure-SSIS IR.
64108

65-
2. Reconfigure the IR to point to the new primary endpoint and to a virtual network in the new region.
109+
## Azure-SSIS IR failover with Azure SQL Database
66110

67-
3. Restart the IR.
111+
### Scenario 1 - Azure-SSIS IR is pointing to read-write listener endpoint
68112

69-
The following sections describe these steps in more detail.
113+
#### Conditions
114+
115+
This section applies when the following conditions are true:
116+
117+
- The Azure-SSIS IR is pointing to the read-write listener endpoint of the failover group.
118+
119+
AND
120+
121+
- The SQL Database server is *not* configured with the virtual network service endpoint rule.
122+
123+
#### Solution
124+
125+
When failover occurs, it is transparent to the Azure-SSIS IR. The Azure-SSIS IR automatically connects to the new primary of the failover group.
70126

71-
### Prerequisites
72127

73-
- Make sure that you have enabled disaster recovery for your Azure SQL Database server in case the server has an outage at the same time. For more info, see [Overview of business continuity with Azure SQL Database](../sql-database/sql-database-business-continuity.md).
128+
### Scenario 2 - Azure-SSIS IR is pointing to primary server endpoint
74129

75-
- If you are using a virtual network in the current region, you need to use another virtual network in the new region to connect your Azure-SSIS integration runtime. For more info, see [Join an Azure-SSIS integration runtime to a virtual network](join-azure-ssis-integration-runtime-virtual-network.md).
130+
#### Conditions
76131

77-
- If you are using a custom setup, you may need to prepare another SAS URI for the blob container that stores your custom setup script and associated files, so it continues to be accessible during an outage. For more info, see [Configure a custom setup on an Azure-SSIS integration runtime](how-to-configure-azure-ssis-ir-custom-setup.md).
132+
This section applies when one of the following conditions is true:
133+
134+
- The Azure-SSIS IR is pointing to the primary server endpoint of the failover group. This endpoint changes when failover occurs.
135+
136+
OR
137+
138+
- The Azure SQL Database server is configured with the virtual network service endpoint rule.
78139

79-
### Steps
80140

81-
Follow these steps to stop your Azure-SSIS IR, switch the IR to a new region, and start it again.
141+
#### Solution
82142

83-
1. Stop the IR in the original region.
143+
1. Stop Azure-SSIS IR on primary region.
84144

85-
2. Call the following command in PowerShell to update the IR with the new settings.
145+
2. Edit Azure-SSIS IR with new region, endpoint and VNET information of secondary instance.
86146

87-
```powershell
88-
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
147+
```powershell
148+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
89149
-CatalogServerEndpoint "Azure SQL Database server endpoint" `
90150
-CatalogAdminCredential "Azure SQL Database server admin credentials" `
91151
-VNetId "new VNet" `
92152
-Subnet "new subnet" `
93153
-SetupScriptContainerSasUri "new custom setup SAS URI"
94-
```
154+
```
95155

96-
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
156+
3. Restart Azure-SSIS IR.
97157

98-
3. Start the IR again.
158+
4. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
99159

100-
## Scenario 3 - Attaching an existing SSISDB (SSIS catalog) to a new Azure-SSIS IR
101160

102-
When an ADF or Azure-SSIS IR disaster occurs in current region, you can make your SSISDB keeps working with a new Azure-SSIS IR in a new region.
103-
104-
### Prerequisites
105-
106-
- If you are using a virtual network in the current region, you need to use another virtual network in the new region to connect your Azure-SSIS integration runtime. For more info, see [Join an Azure-SSIS integration runtime to a virtual network](join-azure-ssis-integration-runtime-virtual-network.md).
161+
### Scenario 3 - Attaching an existing SSISDB (SSIS catalog) to a new Azure-SSIS IR
107162

108-
- If you are using a custom setup, you may need to prepare another SAS URI for the blob container that stores your custom setup script and associated files, so it continues to be accessible during an outage. For more info, see [Configure a custom setup on an Azure-SSIS integration runtime](how-to-configure-azure-ssis-ir-custom-setup.md).
163+
When an ADF or Azure-SSIS IR disaster occurs in current region, you can make your SSISDB keeps working with a new Azure-SSIS IR in a new region.
109164

110-
### Steps
165+
#### Solution
111166

112-
Follow these steps to move your Azure-SSIS IR to a new region.
113167
> [!NOTE]
114-
> Step 3 (creation of IR) needs to be done via PowerShell. Azure portal will report an error stating that SSISDB already exists.
168+
> Step 4 (creation of IR) needs to be done via PowerShell. Azure portal will report an error stating that SSISDB already exists.
169+
170+
1. Stop Azure-SSIS IR on primary region.
115171

116-
1. Execute stored procedure to update metadata in SSISDB to accept connections from **\<new_data_factory_name\>** and **\<new_integration_runtime_name\>**.
172+
2. Execute stored procedure to update metadata in SSISDB to accept connections from **\<new_data_factory_name\>** and **\<new_integration_runtime_name\>**.
117173

118-
```SQL
119-
EXEC [catalog].[failover_integration_runtime] @data_factory_name='<new_data_factory_name>', @integration_runtime_name='<new_integration_runtime_name>'
120-
```
174+
```SQL
175+
EXEC [catalog].[failover_integration_runtime] @data_factory_name='<new_data_factory_name>', @integration_runtime_name='<new_integration_runtime_name>'
176+
```
121177

122-
2. Create a new data factory named **\<new_data_factory_name\>** in the new region. For more info, see Create a data factory.
178+
3. Create a new data factory named **\<new_data_factory_name\>** in the new region. For more info, see Create a data factory.
123179

124-
```powershell
125-
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
180+
```powershell
181+
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
126182
-Location "new region"`
127183
-Name "<new_data_factory_name>"
128-
```
129-
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
184+
```
185+
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
130186

131-
3. Create a new Azure-SSIS IR named **\<new_integration_runtime_name\>** in the new region using Azure PowerShell.
187+
4. Create a new Azure-SSIS IR named **\<new_integration_runtime_name\>** in the new region using Azure PowerShell.
132188

133-
```powershell
134-
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
189+
```powershell
190+
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
135191
-DataFactoryName "new data factory name" `
136192
-Name "<new_integration_runtime_name>" `
137193
-Description $AzureSSISDescription `
@@ -146,11 +202,12 @@ Follow these steps to move your Azure-SSIS IR to a new region.
146202
-Subnet "new subnet" `
147203
-CatalogServerEndpoint $SSISDBServerEndpoint `
148204
-CatalogPricingTier $SSISDBPricingTier
149-
```
205+
```
206+
207+
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
150208

151-
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
209+
5. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
152210

153-
4. Start the IR again.
154211

155212
## Next steps
156213

0 commit comments

Comments
 (0)