An Azure service that is used to provision Windows and Linux virtual machines.
Hello @Gary Unterbrink
Let me address each question directly, then give you an action plan.
Q1: What does cause: Unknown with type: Downtime indicate?
cause: Unknown almost always means the platform detected the VM was unhealthy but could not attribute it to a scheduled event, user action, or known hardware failure within the logging window. The blank "Event initiated by" field confirms no user or Azure action triggered it.
Combined with type: Downtime, this strongly points to one of:
- Host node degradation — the physical host is still running but in a degraded state (memory controller fault, NIC firmware issue, storage path problem). The guest appears up to the hypervisor but I/O or network forwarding is impaired
- Live Migration failure — Azure tried to migrate your VM off a host and the migration stalled or partially completed, leaving the VM in a limbo state on the destination
- Fabric agent loss — the Azure guest agent or host-side fabric layer lost its heartbeat to the VM without a clean crash, so no RCA is recorded
The serial console being extremely slow is the key corroborating detail — that points to the host I/O path being degraded, not a guest-side process hang.
Q2: Why does guest reboot fail but redeploy succeed?
A guest reboot (sudo reboot or portal restart) keeps the VM on the same physical host. If the fault is in the host's virtual switch, storage fabric, or NIC firmware, rebooting the guest changes nothing about the underlying hardware path.
Stop-Deallocate and Redeploy both move the VM off the current host entirely:
| Action | Moves host? | Preserves IP? |
|---|---|---|
| Restart | No | Yes |
| -------- | -------- | -------- |
| Restart | No | Yes |
| Stop-Deallocate + Start | Yes (usually) | No (dynamic IP) |
| Redeploy | Yes (always) | Yes |
The fact that both host-moving actions recovered the VM while an in-place reboot did not is strong evidence the fault is in the host infrastructure, not the guest OS.
Q3: Could your configuration cause this?
Unlikely, but worth ruling out:
- Single-instance VM with no Availability Zone or Set — you get no SLA on uptime and no automatic host health remediation in some failure modes. Azure will eventually auto-heal but the window is unpredictable
- Premium SSD vs Standard — Standard HDD/SSD disks have a higher tolerance for host storage path issues before I/O errors surface
- VM size
Standard_B2ls_v2— B-series VMs run on shared infrastructure and are more likely to be co-located on hosts under varying load, though this doesn't directly cause your symptom
Q1: What does cause: Unknown with type: Downtime indicate?
cause: Unknown almost always means the platform detected the VM was unhealthy but could not attribute it to a scheduled event, user action, or known hardware failure within the logging window. The blank "Event initiated by" field confirms no user or Azure action triggered it.
Combined with type: Downtime, this strongly points to one of:
- Host node degradation — the physical host is still running but in a degraded state (memory controller fault, NIC firmware issue, storage path problem). The guest appears up to the hypervisor but I/O or network forwarding is impaired
- Live Migration failure — Azure tried to migrate your VM off a host and the migration stalled or partially completed, leaving the VM in a limbo state on the destination
- Fabric agent loss — the Azure guest agent or host-side fabric layer lost its heartbeat to the VM without a clean crash, so no RCA is recorded
The serial console being extremely slow is the key corroborating detail — that points to the host I/O path being degraded, not a guest-side process hang.
Q2: Why does guest reboot fail but redeploy succeed?
A guest reboot (sudo reboot or portal restart) keeps the VM on the same physical host. If the fault is in the host's virtual switch, storage fabric, or NIC firmware, rebooting the guest changes nothing about the underlying hardware path.
Stop-Deallocate and Redeploy both move the VM off the current host entirely:
| Action | Moves host? | Preserves IP? |
|---|---|---|
| Restart | No | Yes |
| -------- | -------- | -------- |
| Restart | No | Yes |
| Stop-Deallocate + Start | Yes (usually) | No (dynamic IP) |
| Redeploy | Yes (always) | Yes |
The fact that both host-moving actions recovered the VM while an in-place reboot did not is strong evidence the fault is in the host infrastructure, not the guest OS.
Q3: Could your configuration cause this?
Unlikely, but worth ruling out:
- Single-instance VM with no Availability Zone or Set — you get no SLA on uptime and no automatic host health remediation in some failure modes. Azure will eventually auto-heal but the window is unpredictable
- Premium SSD vs Standard — Standard HDD/SSD disks have a higher tolerance for host storage path issues before I/O errors surface
- VM size
Standard_B2ls_v2— B-series VMs run on shared infrastructure and are more likely to be co-located on hosts under varying load, though this doesn't directly cause your symptom
The two incidents in two weeks on the same VM suggest the VM may have been placed back on the same degraded host after the Aug 19 deallocate, which is possible if the host hadn't been pulled from rotation yet.Q1: What does cause: Unknown with type: Downtime indicate?
cause: Unknown almost always means the platform detected the VM was unhealthy but could not attribute it to a scheduled event, user action, or known hardware failure within the logging window. The blank "Event initiated by" field confirms no user or Azure action triggered it.
Combined with type: Downtime, this strongly points to one of:
- Host node degradation — the physical host is still running but in a degraded state (memory controller fault, NIC firmware issue, storage path problem). The guest appears up to the hypervisor but I/O or network forwarding is impaired
- Live Migration failure — Azure tried to migrate your VM off a host and the migration stalled or partially completed, leaving the VM in a limbo state on the destination
- Fabric agent loss — the Azure guest agent or host-side fabric layer lost its heartbeat to the VM without a clean crash, so no RCA is recorded
The serial console being extremely slow is the key corroborating detail — that points to the host I/O path being degraded, not a guest-side process hang.
Q2: Why does guest reboot fail but redeploy succeed?
A guest reboot (sudo reboot or portal restart) keeps the VM on the same physical host. If the fault is in the host's virtual switch, storage fabric, or NIC firmware, rebooting the guest changes nothing about the underlying hardware path.
Stop-Deallocate and Redeploy both move the VM off the current host entirely:
| Action | Moves host? | Preserves IP? |
|---|---|---|
| Restart | No | Yes |
| Stop-Deallocate + Start | Yes (usually) | No (dynamic IP) |
| Redeploy | Yes (always) | Yes |
The fact that both host-moving actions recovered the VM while an in-place reboot did not is strong evidence the fault is in the host infrastructure, not the guest OS.
Q3: Could your configuration cause this?
Unlikely, but worth ruling out:
- Single-instance VM with no Availability Zone or Set — you get no SLA on uptime and no automatic host health remediation in some failure modes. Azure will eventually auto-heal but the window is unpredictable
- Premium SSD vs Standard — Standard HDD/SSD disks have a higher tolerance for host storage path issues before I/O errors surface
- VM size
Standard_B2ls_v2— B-series VMs run on shared infrastructure and are more likely to be co-located on hosts under varying load, though this doesn't directly cause your symptom
The two incidents in two weeks on the same VM suggest the VM may have been placed back on the same degraded host after the Aug 19 deallocate, which is possible if the host hadn't been pulled from rotation yet.