|
| 1 | +--- |
| 2 | +title: Windows Updates Don't Install on VM Cluster Hosts |
| 3 | +description: Discusses how to resolve issues that you might experience when you apply Windows updates to the hosts of a virtual machine (VM) cluster. |
| 4 | +ms.date: 12/04/2025 |
| 5 | +manager: dcscontentpm |
| 6 | +audience: itpro |
| 7 | +ms.topic: troubleshooting |
| 8 | +ms.reviewer: kaushika, simonw, v-appelgatet |
| 9 | +ms.custom: |
| 10 | +- sap:virtualization and hyper-v\high availability virtual machines |
| 11 | +- pcy:WinComm Storage High Avail |
| 12 | +appliesto: |
| 13 | + - <a href=https://learn.microsoft.com/windows/release-health/windows-server-release-info target=_blank>Supported versions of Windows Server</a> |
| 14 | +--- |
| 15 | + |
| 16 | +# Windows updates don't install on VM cluster hosts |
| 17 | + |
| 18 | +This article discusses how to resolve issues that you might experience when you apply Windows updates to the hosts of a virtual machine (VM) cluster. |
| 19 | + |
| 20 | +## Symptoms |
| 21 | + |
| 22 | +You experience one or more of these symptoms: |
| 23 | + |
| 24 | +- Windows updates don't install on cluster hosts. |
| 25 | +- VMs intermittently don't migrate correctly. |
| 26 | +- Operations time out unexpectedly. |
| 27 | + |
| 28 | +## Cause |
| 29 | + |
| 30 | +These issues occur if checkpoints (sometimes known as snapshots) for the VMs in the cluster grow too large. Checkpoints generate large VMRS files. Such files consume disk space and can disrupt the migration process. Disruptions and insufficient disk space can further cause operations to time out and updates to fail to install. |
| 31 | + |
| 32 | +For more information about checkpoints, see [Using checkpoints to revert virtual machines to a previous state](/windows-server/virtualization/hyper-v/checkpoints). |
| 33 | + |
| 34 | +## Resolution |
| 35 | + |
| 36 | +Before you start, verify that you have admin access to the cluster hosts. Make sure you back up all critical data and configuration information. |
| 37 | + |
| 38 | +The following procedures assume that you're familiar with the Windows Update service and [Cluster-Aware Updating overview](/windows-server/failover-clustering/cluster-aware-updating). |
| 39 | + |
| 40 | +To resolve this issue, use one of the following solutions. |
| 41 | + |
| 42 | +### Solution 1: Manually update all hosts to the latest version |
| 43 | + |
| 44 | +> [!IMPORTANT] |
| 45 | +> All hosts in a cluster should run the same version of Windows Server (including the same updates). |
| 46 | +
|
| 47 | +Follow these steps on each cluster host: |
| 48 | + |
| 49 | +1. To identify the most recently installed update on the host computer, select **Settings** > **Update & Security** > **Windows Update** > **View update history**. |
| 50 | +1. Download and install the most recent compatible update for the host. You can use any of the following tools to access updates: |
| 51 | + |
| 52 | + - Windows Update |
| 53 | + - Windows Server Update Services (WSUS) |
| 54 | + - The [Microsoft Update Catalog](https://www.catalog.update.microsoft.com/) |
| 55 | + |
| 56 | +1. If it's necessary, restart the host. |
| 57 | +1. After the update process finishes, review the host's update history. Make sure that the update installed successfully. |
| 58 | + |
| 59 | +### Solution 2: Schedule CAU to occur during a maintenance window, and temporarily disable Windows Update services |
| 60 | + |
| 61 | +Use this solution to prevent conflicts between CAU and the Windows Update service. |
| 62 | + |
| 63 | +> [!IMPORTANT] |
| 64 | +> Your systems might be vulnerable if you leave automatic updates disabled for an extended period. Schedule your maintenance window to be as brief as possible. |
| 65 | +
|
| 66 | +1. In Failover Cluster Manager, select **Cluster-Aware Updating**. |
| 67 | + |
| 68 | + > [!NOTE] |
| 69 | + > As an alternative method, you can open a Windows PowerShell Command Prompt window, and then run `Get-CauRun`. |
| 70 | +
|
| 71 | +1. Review and modify the update schedule to align with your maintenance window. |
| 72 | +1. On each host, follow these steps to temporarily disable the Windows Update service: |
| 73 | + |
| 74 | + 1. Open the Services console (services.msc), and then select **Windows Update service**. |
| 75 | + 1. Right-click the service, select **Properties**, and then set **Startup type** to **Disabled**. |
| 76 | + 1. To stop the service, select **Stop**. |
| 77 | + |
| 78 | +1. After the subsequent maintenance window ends, check each host's update history to make sure that the updates installed successfully. To check a host's update history, select **Settings** > **Update & Security** > **Windows Update** > **View update history**. |
| 79 | +1. Use the Services console to re-enable the Windows Update service. In the service properties, set **Startup type** to **Automatic**, and then select **Start**. |
| 80 | + |
| 81 | + > [!IMPORTANT] |
| 82 | + > This final step makes sure that your hosts continue to receive security updates. |
| 83 | +
|
| 84 | +### Solution 3: Remove checkpoints that you don't need |
| 85 | + |
| 86 | +Don't try to use VM checkpoints for long-term backup storage. Typically, checkpoints are useful for testing purposes. |
| 87 | + |
| 88 | +> [!NOTE] |
| 89 | +> Use this procedure during a maintenance window. When you delete a checkpoint, Windows merges the related differencing disk into the parent VHDX of the VM. For large VMs, this operation can be time-consuming and resource-intensive. |
| 90 | +
|
| 91 | +When you no longer need the checkpoints, follow these steps to remove the checkpoints: |
| 92 | + |
| 93 | +1. Open the Hyper-V Manager or your preferred virtualization management tool. |
| 94 | +1. Go to the VM that has checkpoints. |
| 95 | +1. Review the checkpoints, and confirm that you don't need them. |
| 96 | +1. Delete each checkpoint. If it's necessary, confirm that you want to delete the checkpoint. |
| 97 | +1. Check the VM to make sure that the checkpoint is removed and the disk space is reclaimed. |
| 98 | +1. Try again to install the updates on the cluster hosts. |
0 commit comments