An Azure service that is used to provision Windows and Linux virtual machines.
The most likely root causes, based on the failure pattern described, are these:
- Image preparation or OS provisioning problem
A common cause of
OSProvisioningClientErroror OS provisioning timeout is that the source image was not properly prepared or generalized before VM creation. Microsoft documents this specifically for both restore point failures and new VM deployment failures. Typical symptoms include the VM staying in Creating for a long time, then failing provisioning, or repeatedly showing provisioning errors after restart. - Guest agent or extension failure
Azure Backup and restore point troubleshooting guidance shows that snapshot and provisioning-related failures can occur when:
- the VM agent is unresponsive,
- the Linux agent is out of date,
- snapshot status cannot be retrieved,
- an extension is in a failed state,
- the VM remains in a failed provisioning state because an extension failure interfered with normal operation.
- Snapshot/restore-point communication issues Microsoft also documents failures where the platform cannot communicate with the VM agent for snapshot status, or cannot retrieve snapshot status at all. That aligns with the error described that the VM state or snapshot status could not be retrieved.
Since the VM created from the snapshot works correctly, that strongly suggests the disk data was recoverable and the issue was likely tied to the original VM’s provisioning state, guest agent/extension health, or the original image preparation rather than permanent data loss in the OS disk.
To help prevent this next time:
- Check extension health first In Azure portal > VM > Settings > Extensions > Extensions status, verify all extensions are in Provisioning succeeded. If any extension is failed, resolve that first because failed extensions can put the VM into failed provisioning state and interfere with startup and backup-related operations.
- Verify the VM is not stuck in updating/provisioning failure If the VM provisioning state is Updating or Failed, retry operations only after the VM is healthy. Microsoft notes that these states can interfere with backup and related VM operations.
- Validate the guest agent For Windows VMs, confirm the agent is installed and responsive. For Linux VMs, confirm the agent is current. Agent problems are a documented cause of snapshot and restore-point failures.
- Review whether the original image was properly prepared If the VM was created from a custom image, verify that image preparation was done correctly. Microsoft specifically calls out OS provisioning failures when the image was not properly prepared or generalized.
- Collect activity logs when the issue happens For recurring provisioning failures, start with Azure activity logs and deployment operations to identify the exact failing operation and whether the failure is tied to deployment, provisioning, or extension state.
- Keep a recovery path ready The snapshot-based recovery used here is a valid recovery path. Microsoft recommends taking a snapshot of the OS disk, creating a disk from the snapshot, and then using that disk for repair or recovery scenarios. Note: disk swap and repair actions can affect VM bootability, so keeping a snapshot first is the safest approach.
A practical root-cause summary for this case is:
- Most likely: guest agent or extension failure causing the VM to enter failed provisioning state.
- Also possible: custom image preparation/generalization issue if the VM originated from a custom image.
- Less likely but relevant: snapshot-status retrieval or restore-point communication failure.
References:
- Troubleshoot Azure Backup failures caused by agent or extension issues
- Troubleshoot restore point failures: Issues with the agent or extension
- Troubleshoot deployment issues when creating a new Windows VM in Azure
- Troubleshoot Linux virtual machine deployment issues in Azure
- Troubleshoot a Windows VM by attaching the OS disk to a repair VM through the Azure portal
- Troubleshoot a Linux VM by attaching the OS disk to a recovery VM using the Azure portal