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
Copy file name to clipboardExpand all lines: articles/app-service/environment/how-to-side-by-side-migrate.md
+26-18Lines changed: 26 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Learn how to migrate your App Service Environment v2 to App Service
4
4
author: seligj95
5
5
ms.topic: tutorial
6
6
ms.custom: devx-track-azurecli
7
-
ms.date: 2/21/2024
7
+
ms.date: 3/6/2024
8
8
ms.author: jordanselig
9
9
# zone_pivot_groups: app-service-cli-portal
10
10
---
@@ -67,7 +67,7 @@ az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=Validation&api-ve
67
67
68
68
If there are no errors, your migration is supported, and you can continue to the next step.
69
69
70
-
## 4. Generate IP addresses for your new App Service Environment v3
70
+
## 4. Generate outbound IP addresses for your new App Service Environment v3
71
71
72
72
Create a file called *zoneredundancy.json* with the following details for your region and zone redundancy selection.
73
73
@@ -94,17 +94,25 @@ Run the following command to check the status of this step:
94
94
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties.status
95
95
```
96
96
97
-
If the step is in progress, you get a status of `Migrating`. When the step is complete, you get a status of `Ready`.
97
+
If the step is in progress, you get a status of `Migrating`. After you get a status of `Ready`, run the following command to view your new outbound IPs. If you don't see the new IPs immediately, wait a few minutes and try again.
98
98
99
-
## 5. Delegate your App Service Environment subnet
99
+
```azurecli
100
+
az rest --method get --uri "${ASE_ID}/configurations/networking?api-version=2022-03-01"
101
+
```
102
+
103
+
## 5. Update dependent resources with new outbound IPs
104
+
105
+
By using the new outbound IPs, update any of your resources or networking components to ensure that your new environment functions as intended after migration is complete. It's your responsibility to make any necessary updates.
106
+
107
+
## 6. Delegate your App Service Environment subnet
100
108
101
109
App Service Environment v3 requires the subnet it's in to have a single delegation of `Microsoft.Web/hostingEnvironments`. Previous versions didn't require this delegation. You need to confirm that your subnet is delegated properly and update the delegation (if necessary) before migrating. You can update the delegation either by running the following command or by going to the subnet in the [Azure portal](https://portal.azure.com).
## 6. Confirm there are no locks on the virtual network
115
+
## 7. Confirm there are no locks on the virtual network
108
116
109
117
Virtual network locks block platform operations during migration. If your virtual network has locks, you need to remove them before migrating. If necessary, you can add back the locks after migration is complete.
For related commands to check if your subscription or resource group has locks, see the [Azure CLI reference for locks](../../azure-resource-manager/management/lock-resources.md#azure-cli).
126
134
127
-
## 7. Prepare your configurations
135
+
## 8. Prepare your configurations
128
136
129
137
If your existing App Service Environment uses a custom domain suffix, you can [configure one for your new App Service Environment v3 resource during the migration process](./side-by-side-migrate.md#add-a-custom-domain-suffix-optional). Configuring a custom domain suffix is optional. If your App Service Environment v2 has a custom domain suffix and you don't want to use it on your new App Service Environment v3, skip this step. If you previously didn't have a custom domain suffix but want one, you can configure one at this point or at any time once migration is complete. For more information on App Service Environment v3 custom domain suffixes, including requirements, step-by-step instructions, and best practices, see [Custom domain suffix for App Service Environments](./how-to-custom-domain-suffix.md).
130
138
131
139
> [!NOTE]
132
140
> If you're configuring a custom domain suffix, when you're adding the network permissions on your Azure key vault, be sure that your key vault allows access from your App Service Environment v3's new subnet.
133
141
>
134
142
135
-
To set these configurations, including identifying the subnet you selected earlier, create another file called *parameters.json* with the following details based on your scenario. Be sure to use the new subnet that you selected for your new App Service Environment v3. Don't include the properties for a custom domain suffix if this feature doesn't apply to your migration. Pay attention to the value of the `zoneRedundant` property and set it to the same value you used in the outbound IP generation step. **You must use the same value for zone redundancy that you used in the IP generation step.**
143
+
To set these configurations, including identifying the subnet you selected earlier, create another file called *parameters.json* with the following details based on your scenario. Be sure to use the new subnet that you selected for your new App Service Environment v3. Don't include the properties for a custom domain suffix if this feature doesn't apply to your migration. Pay attention to the value of the `zoneRedundant` property and set it to the same value you used in the outbound IP generation step. **You must use the same value for zone redundancy that you used in the outbound IP generation step.**
136
144
137
145
If you're migrating without a custom domain suffix, use this code:
138
146
@@ -183,7 +191,7 @@ If you're using a system assigned managed identity for your custom domain suffix
183
191
}
184
192
```
185
193
186
-
## 8. Migrate to App Service Environment v3 and check status
194
+
## 9. Migrate to App Service Environment v3 and check status
187
195
188
196
After you complete all of the preceding steps, you can start the migration. Make sure that you understand the [implications of migration](side-by-side-migrate.md#migrate-to-app-service-environment-v3).
189
197
@@ -202,31 +210,31 @@ az rest --method get --uri "${ASE_ID}?api-version=2022-03-01" --query properties
202
210
```
203
211
After you get a status of `MigrationPendingDnsChange`, migration is done, and you have an App Service Environment v3 resource. Your apps are now running in your new environment as well as in your old environment.
204
212
205
-
Get the details of your new environment by running the following command or by going to the [Azure portal](https://portal.azure.com).
213
+
Get the details of your new environment by running the following command:
206
214
207
215
```azurecli
208
216
az appservice ase show --name $ASE_NAME --resource-group $ASE_RG
209
217
```
210
218
211
-
## 9. Get the new IP addresses for your new App Service Environment v3 and update dependent resources
219
+
> [!IMPORTANT]
220
+
> During the migration as well as during the `MigrationPendingDnsChange` step, the Azure portal shows incorrect information about your App Service Environment and your apps. Use the Azure CLI to check the status of your migration. If you have any questions about the status of your migration or your apps, contact support.
221
+
>
212
222
213
-
You have two App Service Environments at this stage in the migration process. Your apps are running in both environments. You need to update any dependent resources to use the new IP addresses for your new App Service Environment v3. For internal facing (ILB) App Service Environments, you need to update your private DNS zones to point to the new inbound IP address.
223
+
## 10. Get the inbound IP addresses for your new App Service Environment v3 and update dependent resources
214
224
215
-
You can get the new IP addresses for your new App Service Environment v3 by running the following command. It's your responsibility to make any necessary updates.
225
+
You have two App Service Environments at this stage in the migration process. Your apps are running in both environments. You need to update any dependent resources to use the new IP inbound address for your new App Service Environment v3. For internal facing (ILB) App Service Environments, you need to update your private DNS zones to point to the new inbound IP address. You should account for both the old and new inbound IP at this point. You can remove the dependencies on the previous IP address after you complete the next step.
216
226
217
-
> [!IMPORTANT]
218
-
> During the preview, the new inbound IP is returned incorrectly due to a known bug. Open a support ticket to receive the correct IP addresses for your App Service Environment v3.
219
-
>
227
+
You can get the new inbound IP address for your new App Service Environment v3 by running the following command. It's your responsibility to make any necessary updates.
220
228
221
229
```azurecli
222
230
az rest --method get --uri "${ASE_ID}?api-version=2022-03-01"
223
231
```
224
232
225
-
## 10. Redirect customer traffic and complete migration
233
+
## 11. Redirect customer traffic and complete migration
226
234
227
-
This step is your opportunity to test and validate your new App Service Environment v3. Your App Service Environment v2 frontends are still running, but the backing compute is an App Service Environment v3. If you're able to access your apps without issues, that means you're ready to complete the migration.
235
+
This step is your opportunity to test and validate your new App Service Environment v3. Your App Service Environment v2 front ends are still running, but the backing compute is an App Service Environment v3. If you're able to access your apps without issues, that means you're ready to complete the migration. In order to test the new inbound IP, you need to create DNS records to ensure you go through the App Service Environment v3 front ends.
228
236
229
-
Once you confirm your apps are working as expected, you can redirect customer traffic to your new App Service Environment v3 frontends by running the following command. This command also deletes your old environment.
237
+
Once you confirm your apps are working as expected, you can redirect customer traffic to your new App Service Environment v3 front ends by running the following command. This command also deletes your old environment.
230
238
231
239
```azurecli
232
240
az rest --method post --uri "${ASE_ID}/NoDowntimeMigrate?phase=DnsChange&api-version=2022-03-01"
0 commit comments