You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This article describes how to configure the Azure-SSIS Integration Runtime with Azure SQL Database geo-replication for the SSISDB database. When a failover occurs, you can ensure that the Azure-SSIS IR keeps working with the secondary database.
22
22
@@ -27,63 +27,123 @@ For more info about geo-replication and failover for SQL Database, see [Overview
27
27
## Azure-SSIS IR failover with Azure SQL Database Managed Instance
28
28
29
29
### Prerequisites
30
+
31
+
Azure SQL Database Managed Instance uses **database master key (DMK)** to help secure data, credentials, and connection information that is stored in database. To enable the automatic decryption of DMK, a copy of the key is encrypted by using the **server master key (SMK)**. But SMK is not replicated in failover group, so you need to add an additional password on both primary and secondary instances for DMK decryption after failover.
32
+
30
33
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
-
```
34
+
35
+
```sql
36
+
ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD ='password'
37
+
```
34
38
35
39
2. Create failover group on Azure SQL Database Managed Instance.
36
40
37
41
3. Run **sp_control_dbmasterkey_password**on the secondary instance, using the new encryption password.
### Scenario 1 - Azure-SSIS IR is pointing to read-write listener endpoint
50
+
51
+
If you want Azure-SSIS IR point to read-write listener endpoint, you need to point to primary server endpoint first. After putting SSISDB to failover group, you can change to read-write listener endpoint and restart Azure-SSIS IR.
52
+
53
+
#### Solution
54
+
55
+
When failover occurs, you have to do the following things:
56
+
57
+
1. Stop Azure-SSIS IR on primary region.
58
+
59
+
2. Edit Azure-SSIS IR with new region, VNET and custom setup SAS URI information of secondary instance. As Azure-SSIS IR is pointing to read-write listener and the endpoint is transparent to Azure-SSIS IR, you don't need to edit the endpoint.
60
+
61
+
```powershell
62
+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
63
+
-VNetId "new VNet" `
64
+
-Subnet "new subnet" `
65
+
-SetupScriptContainerSasUri "new custom setup SAS URI"
66
+
```
67
+
68
+
3. Restart Azure-SSIS IR.
69
+
70
+
### Scenario 2 - Azure-SSIS IR is pointing to primary server endpoint
71
+
72
+
The scenario is suitable if Azure-SSIS IR is pointing to primary server endpoint.
73
+
74
+
#### Solution
75
+
76
+
When failover occurs, you have to do the following things:
77
+
46
78
1. Stop Azure-SSIS IR on primary region.
47
79
48
80
2. Edit Azure-SSIS IR with new region, endpoint and VNET information of secondary instance.
49
81
50
-
```powershell
51
-
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
82
+
```powershell
83
+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
52
84
-CatalogServerEndpoint "Azure SQL Database server endpoint" `
53
85
-CatalogAdminCredential "Azure SQL Database server admin credentials" `
54
86
-VNetId "new VNet" `
55
87
-Subnet "new subnet" `
56
88
-SetupScriptContainerSasUri "new custom setup SAS URI"
57
-
```
89
+
```
58
90
59
91
3. Restart Azure-SSIS IR.
60
92
61
-
4. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
93
+
### Scenario 3 - Azure-SSIS IR is pointing to public endpoint of Azure SQL Database Managed Instance
94
+
95
+
The scenario is suitable if the Azure-SSIS IR is pointing to public endpoint of Azure SQL Database Managed Instance and it doesn't join to VNET. The only difference between scenario 2and this scenarios is that you don't need to edit VNET information of Azure-SSIS IR after failover.
96
+
97
+
#### Solution
98
+
99
+
When failover occurs, you have to do the following things:
100
+
101
+
1. Stop Azure-SSIS IR on primary region.
102
+
103
+
2. Edit Azure-SSIS IR with new region and endpoint information of secondary instance.
104
+
105
+
```powershell
106
+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
107
+
-CatalogServerEndpoint "Azure SQL Database server endpoint" `
108
+
-CatalogAdminCredential "Azure SQL Database server admin credentials" `
109
+
-SetupScriptContainerSasUri "new custom setup SAS URI"
110
+
```
111
+
112
+
3. Restart Azure-SSIS IR.
113
+
114
+
### Scenario 4 - Attaching an existing SSISDB (SSIS catalog) to a new Azure-SSIS IR
115
+
116
+
This scenario is suitable if you want to provision a new Azure-SSIS IR on secondary region or you want your SSISDB to keep working with a new Azure-SSIS IR in a new region when an ADF or Azure-SSIS IR disaster occurs in current region.
117
+
118
+
#### Solution
119
+
120
+
When failover occurs, you have to do the following things:
62
121
63
-
If you want to provision a new Azure-SSIS IR on secondary region:
64
122
> [!NOTE]
65
123
> Step 4 (creation of IR) needs to be done via PowerShell. Azure portal will report an error stating that SSISDB already exists.
124
+
66
125
1. Stop Azure-SSIS IR on primary region.
67
126
68
127
2. Execute stored procedure to update metadata in SSISDB to accept connections from **\<new_data_factory_name\>** and **\<new_integration_runtime_name\>**.
3. Create a new data factory named **\<new_data_factory_name\>** in the new region. For more info, see Create a data factory.
75
134
76
-
```powershell
77
-
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
135
+
```powershell
136
+
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
78
137
-Location "new region"`
79
138
-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)
139
+
```
140
+
141
+
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
82
142
83
143
4. Create a new Azure-SSIS IR named **\<new_integration_runtime_name\>** in the new region using Azure PowerShell.
84
144
85
-
```powershell
86
-
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
145
+
```powershell
146
+
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
87
147
-DataFactoryName "new data factory name" `
88
148
-Name "<new_integration_runtime_name>" `
89
149
-Description $AzureSSISDescription `
@@ -98,69 +158,51 @@ If you want to provision a new Azure-SSIS IR on secondary region:
98
158
-Subnet "new subnet" `
99
159
-CatalogServerEndpoint $SSISDBServerEndpoint `
100
160
-CatalogPricingTier $SSISDBPricingTier
101
-
```
161
+
```
102
162
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)
104
-
105
-
5. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
163
+
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
106
164
107
165
108
166
109
167
## Azure-SSIS IR failover with Azure SQL Database
110
168
111
169
### Scenario 1 - Azure-SSIS IR is pointing to read-write listener endpoint
112
170
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.
171
+
This scenario is suitable Azure-SSIS IR is pointing to the read-write listener endpoint of the failover group and the SQL Database server is *not* configured with the virtual network service endpoint rule.
172
+
If you want Azure-SSIS IR point to read-write listener endpoint, you need to point to primary server endpoint first. After putting SSISDB to failover group, you can change to read-write listener endpoint and restart Azure-SSIS IR.
122
173
123
174
#### Solution
124
175
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.
176
+
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.
177
+
If you want to update the region or other information in Azure-SSIS IR, you can stop it, edit and restart.
126
178
127
179
128
180
### Scenario 2 - Azure-SSIS IR is pointing to primary server endpoint
129
181
130
-
#### Conditions
131
-
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.
139
-
182
+
The scenario is suitable if Azure-SSIS IR is pointing to primary server endpoint.
140
183
141
184
#### Solution
142
185
186
+
When failover occurs, you have to do the following things:
187
+
143
188
1. Stop Azure-SSIS IR on primary region.
144
189
145
190
2. Edit Azure-SSIS IR with new region, endpoint, and VNET information of secondary instance.
146
191
147
-
```powershell
148
-
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
192
+
```powershell
193
+
Set-AzDataFactoryV2IntegrationRuntime -Location "new region" `
149
194
-CatalogServerEndpoint "Azure SQL Database server endpoint" `
150
195
-CatalogAdminCredential "Azure SQL Database server admin credentials" `
151
196
-VNetId "new VNet" `
152
197
-Subnet "new subnet" `
153
198
-SetupScriptContainerSasUri "new custom setup SAS URI"
154
-
```
199
+
```
155
200
156
201
3. Restart Azure-SSIS IR.
157
202
158
-
4. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
159
-
160
-
161
203
### Scenario 3 - Attaching an existing SSISDB (SSIS catalog) to a new Azure-SSIS IR
162
204
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.
205
+
This scenario is suitable if you want to provision a new Azure-SSIS IR on secondary region or you want your SSISDB to keep working with a new Azure-SSIS IR in a new region when an ADF or Azure-SSIS IR disaster occurs in current region.
164
206
165
207
#### Solution
166
208
@@ -171,23 +213,24 @@ When an ADF or Azure-SSIS IR disaster occurs in current region, you can make you
171
213
172
214
2. Execute stored procedure to update metadata in SSISDB to accept connections from **\<new_data_factory_name\>** and **\<new_integration_runtime_name\>**.
3. Create a new data factory named **\<new_data_factory_name\>** in the new region. For more info, see Create a data factory.
179
221
180
-
```powershell
181
-
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
222
+
```powershell
223
+
Set-AzDataFactoryV2 -ResourceGroupName "new resource group name" `
182
224
-Location "new region"`
183
225
-Name "<new_data_factory_name>"
184
-
```
185
-
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
226
+
```
227
+
228
+
For more info about this PowerShell command, see [Create an Azure data factory using PowerShell](quickstart-create-data-factory-powershell.md)
186
229
187
230
4. Create a new Azure-SSIS IR named **\<new_integration_runtime_name\>** in the new region using Azure PowerShell.
188
231
189
-
```powershell
190
-
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
232
+
```powershell
233
+
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "new resource group name" `
191
234
-DataFactoryName "new data factory name" `
192
235
-Name "<new_integration_runtime_name>" `
193
236
-Description $AzureSSISDescription `
@@ -202,11 +245,9 @@ When an ADF or Azure-SSIS IR disaster occurs in current region, you can make you
202
245
-Subnet "new subnet" `
203
246
-CatalogServerEndpoint $SSISDBServerEndpoint `
204
247
-CatalogPricingTier $SSISDBPricingTier
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)
248
+
```
208
249
209
-
5. Change the server name in **ConnectionManager** of your SSIS packages with the secondary instance server name, then redeploy these packages and run.
250
+
For more info about this PowerShell command, see [Create the Azure-SSIS integration runtime in Azure Data Factory](create-azure-ssis-integration-runtime.md)
0 commit comments