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
|**Scaling**| Better resource utilization | Limited by gateway capacity |
50
+
|**Cost**| No extra charges | VPN Gateway charges ($19-$525/month) + bandwidth costs |
50
51
51
52
## Prerequisites
52
53
53
54
Before beginning the migration, ensure you have:
54
55
55
56
***App Service plan**: A Basic, Standard, Premium, PremiumV2, PremiumV3, or Elastic Premium plan
56
-
***Virtual network**: An Azure Resource Manager virtual network in the same region as your app
57
+
***Virtual network**: A virtual network in the same region as your app
57
58
***Subnet**: An empty subnet or a new subnet dedicated for virtual network integration
58
59
***Permissions**: Appropriate RBAC permissions to configure virtual network integration
59
60
***Planning**: Understanding of your current networking requirements and dependencies
60
61
61
62
## Migration planning and preparation
62
63
63
-
The migration process is a disconnect/connect operation that might cause brief downtime. Proper planning minimizes issues with your applications.
64
+
> [!IMPORTANT]
65
+
> The migration process is a disconnect/connect operation that **will cause downtime**. Virtual network integration is slot-specific and doesn't swap during deployment slot operations, requiring careful planning to minimize impact on your applications.
66
+
67
+
### Understanding downtime and impact
68
+
69
+
The migration involves a complete disconnection from gateway-based integration before connecting to regional integration. During this process:
70
+
71
+
- Your app loses connectivity to virtual network resources
72
+
- Dependencies on private endpoints, service endpoints, or internal services are interrupted
73
+
- Downtime typically lasts 2-5 minutes depending on configuration complexity, but can be even longer
74
+
75
+
### Migration strategies
76
+
77
+
Choose the strategy that best fits your downtime tolerance and operational requirements:
**Best for: Thorough testing with brief production downtime**
93
+
94
+
Since virtual network integration is slot-specific, you can test regional virtual network integration on a staging slot:
95
+
96
+
1.**Prepare the integration subnet** in advance
97
+
2.**Configure regional VNet integration on your staging slot** using the prepared subnet
98
+
3.**Test your application thoroughly** on the staging slot with regional integration
99
+
4.**When ready, disconnect gateway-based integration from production** and configure regional integration on production
100
+
5.**Swap slots** to promote the tested code
101
+
102
+
> [!NOTE]
103
+
> Virtual network configurations remain with their respective slots after swapping. Your production slot will have the tested application code and the newly configured regional virtual network integration.
104
+
105
+
#### Option 3: Direct migration (planned downtime)
106
+
107
+
**Best for: Applications that can tolerate brief downtime**
108
+
109
+
1.**Schedule during low-traffic periods** (nights, weekends)
110
+
2.**Prepare all configurations** in advance
111
+
3.**Notify stakeholders** of the planned maintenance
112
+
4.**Have rollback procedures** ready
113
+
114
+
## Premigration preparation steps
64
115
65
116
### Step 1: Assess your current setup
66
117
67
118
1.**Document existing connections**: Note which apps use gateway-based integration
68
119
2.**Identify dependencies**: Catalog resources accessed through the current integration
69
120
3.**Review networking rules**: Document any NSGs, route tables, or firewall rules
70
-
4.**Plan downtime**: Schedule migration during maintenance windows
121
+
4.**Evaluate downtime tolerance**: Determine acceptable maintenance windows
122
+
5.**Plan rollback strategy**: Prepare procedures to revert if issues occur
71
123
72
-
### Step 2: Subnet planning and requirements
124
+
### Step 2: Plan your subnet configuration
73
125
74
-
The subnet used for regional virtual network integration must meet [specific requirements](./overview-vnet-integration.md#subnet-requirements). You can either have one subnet per plan or take advantage of the [multi-plan subnet join feature](./overview-vnet-integration.md#subnet-requirements) to connect apps from different plans to the same subnet.
126
+
The subnet used for regional virtual network integration must meet [specific requirements](./overview-vnet-integration.md#subnet-requirements):
75
127
76
128
***Size**: Minimum `/28` (16 addresses), recommended `/26` (64 addresses) for production
77
129
***Delegation**: Must be delegated to `Microsoft.Web/serverFarms`
78
130
***Availability**: Can't be used by other services simultaneously
79
131
***Location**: Must be in the same virtual network you want to integrate with
80
132
133
+
#### Subnet sizing guidance
134
+
135
+
| Scenario | Recommended Size | Max App Instances |
| Production |`/26` (64 addresses) | 59 instances |
139
+
| Multi-plan subnet join |`/26` or larger | Varies by plans |
140
+
81
141
> [!TIP]
82
142
> Always provision double the IP addresses of your expected maximum scale to accommodate platform upgrades and scaling operations.
83
143
84
-
### Step 3: Create or prepare the integration subnet
144
+
#### Multi-plan subnet join
145
+
146
+
You can connect multiple App Service plans to the same subnet using the [multi-plan subnet join feature](./overview-vnet-integration.md#subnet-requirements). This approach:
147
+
- Requires a minimum `/26` subnet
148
+
- Allows resource consolidation
149
+
- Supports plans across different subscriptions (subnet can be in different subscription)
When migrating from gateway-based integration to regional integration within the same region:
190
+
For apps currently using gateway-based integration in the same region:
124
191
125
-

192
+
:::image type="content" source="mmedia/migrate-gateway-based-vnet-integration/same-region-migration.png" alt-text="Diagram showing migration from gateway-based to regional virtual network integration.":::
126
193
127
194
#### Step 1: Disconnect gateway-based integration
128
195
@@ -195,14 +262,16 @@ After integration is complete, test your app's connectivity to virtual network r
195
262
2.**DNS resolution**: Confirm DNS queries resolve correctly for private resources
196
263
3.**Performance testing**: Monitor application performance after the migration
197
264
198
-
### Cross-region migration considerations
265
+
### Cross-region migration
199
266
200
-
If you're currently using gateway-based integration to connect to a virtual network in a different region, you can set up [virtual network peering](../virtual-network/virtual-network-peering-overview.md):
267
+
If you're currently using gateway-based integration to connect to a virtual network in a different region:
201
268
202
-
1. Create a virtual network in your app's region
203
-
2. Establish virtual network peering between regions
204
-
3. Set up regional virtual network integration with the local virtual network
205
-
4. Configure routing to access cross-region resources through peering
269
+
Set up [virtual network peering](../virtual-network/virtual-network-peering-overview.md) to enable regional integration:
270
+
271
+
1.**Create a virtual network** in your app's region
272
+
2.**Establish virtual network peering** between regions
273
+
3.**Set up regional virtual network integration** with the local virtual network
274
+
4.**Configure routing** to access cross-region resources through peering
206
275
207
276
## Post-migration configuration and optimization
208
277
@@ -216,53 +285,28 @@ After successfully migrating to regional virtual network integration, you can ta
216
285
* Connect to Azure services using [private endpoints](./overview-vnet-integration.md#private-endpoints) for enhanced security
217
286
* Set up [private DNS zones](./overview-vnet-integration.md#azure-dns-private-zones) for name resolution of private endpoints
218
287
219
-
## Troubleshooting common issues
220
-
221
-
### Connectivity problems
222
-
223
-
**Issue**: App can't reach virtual network resources after migration
224
-
225
-
**Solutions**:
226
-
1. Verify subnet delegation is set to `Microsoft.Web/serverFarms`
227
-
2. Check NSG rules allow required traffic
228
-
3. Ensure Route All is enabled if needed
229
-
4. Confirm DNS resolution is working
230
-
231
-
### Performance issues
232
-
233
-
**Issue**: Slower performance after migration
288
+
## Troubleshooting
234
289
235
-
**Solutions**:
236
-
1. Monitor network latency to virtual network resources
237
-
2. Review and optimize NSG and UDR configurations
238
-
3. Consider enabling NAT Gateway for better SNAT port availability
239
-
4. Check for bandwidth limitations in network appliances
240
-
241
-
### IP address exhaustion
242
-
243
-
**Issue**: Running out of IP addresses in integration subnet
244
-
245
-
**Solutions**:
246
-
1. Move to a larger subnet (can't resize existing subnet)
247
-
2. Implement multi-plan subnet join to consolidate plans
248
-
3. Monitor and right-size your App Service plan instances
249
-
250
-
### DNS resolution issues
251
-
252
-
**Issue**: Can't resolve private DNS names
253
-
254
-
**Solutions**:
255
-
1. Configure Azure DNS private zones
256
-
2. Set up custom DNS servers in virtual network settings
257
-
3. Verify private endpoint DNS configuration
290
+
For common issues and solutions after migration, see [Troubleshoot virtual network integration](/troubleshoot/azure/app-service/troubleshoot-vnet-integration-apps).
258
291
259
292
## Next steps
260
293
261
294
After successfully migrating to regional virtual network integration, explore these related articles:
262
295
296
+
**Configuration guides:**
263
297
*[Enable virtual network integration in Azure App Service](./configure-vnet-integration-enable.md)
0 commit comments