Failed to Update Cloud Service due to Ongoing Migration Progress
Symptom
Users sometimes may fail to update the cloud service (classic) or the cloud service (extended support) due to the cloud service being under the in-place migration process. Users may see following error messages when they try to update the cloud service (classic) or the cloud service (extended support).
- Updating the cloud service (classic)
"statusMessage": "{\"error\":{\"code\":\"ChangeDeploymentConfigurationOperationFailed\",\"message\":\"The Change Deployment Configuration operation failed for the domain '<classic cloud service name>' in the deployment slot 'production' with the name '<classic cloud service name>- x/xx/2022 xx:xx:xxPM': 'Deployment xx in HostedService <classic cloud service name> is in the process of being migrated and hence cannot be changed.'.\"}}",
- Updating the cloud service (extended support)
"statusMessage": "{\"error\":{\"code\":\"OperationNotAllowed\",\"message\":\"The operation cannot be performed on cloud service '<classic cloud service name>' because a migration is in progress. Commit the migration to start managing the cloud service.\"}}"
Cause
When a cloud service (classic) is migrated to the cloud service (extended support), it will go through the following 4 stages. After the preparation step, if users do not choose either “abort” or “commit” for the migration, both the cloud service (classic) and the automatically created cloud service (extended support) will be locked. In this stage, if users try to update the cloud service (classic) or the cloud service (extended support), the error notification will be prompted out and indicate users cannot update the cloud services.
- Validate Migration - Validates that the migration will not be prevented by common unsupported scenarios.
- Prepare Migration – Duplicates the resource metadata in Azure Resource Manager. All resources are locked for create/update/delete operations to ensure resource metadata is in sync across Azure Server Manager and Azure Resource Manager. All read operations will work using both Cloud Services (classic) and Cloud Services (extended support) APIs.
- Abort Migration - Removes resource metadata from Azure Resource Manager. Unlocks all resources for create/update/delete operations.
- Commit Migration - Removes resource metadata from Azure Service Manager. Unlocks the resource for create/update/delete operations. Abort is no longer allowed after commit has been attempted.
Reference doc:
Migrate Azure Cloud Services (classic) to Azure Cloud Services (extended support) | Microsoft Docs
Solution
Users need to commit or abort the ongoing cloud service (classic) migration before updating the cloud services.
- Abort the migration
- Using the Azure PowerShell commands
Users can use the following command to abort the ongoing migration process.
Move-AzureService -Abort -ServiceName $serviceName -DeploymentName $deploymentName
Reference Doc: Migrate to Azure Cloud Services (extended support) using PowerShell | Microsoft Docs - From the Azure Portal
Users need to go through the validation and preparation steps again and click the “Abort” to cancel the migration.
- Using the Azure PowerShell commands
After aborting the migration, the created cloud service (extended support) will be deleted automatically. And then users can successfully update the cloud service (classic).
- Commit the migration
Instead of aborting the migration, users also can commit the migration. Similar to the above steps, users can commit the migration from the Azure Portal or the Azure PowerShell.- From the Azure Portal
- Using Azure PowerShell command
Move-AzureService -Commit -ServiceName $serviceName -DeploymentName $deploymentName
Reference Doc: Migrate to Azure Cloud Services (extended support) using PowerShell | Microsoft Docs
- From the Azure Portal
After committing the migration, the classic cloud service will be migrated to the corresponding cloud service (extended support). The cloud service (classic) will not be available and users can successfully update the migrated cloud service (extended support).
Published on:
Learn more