Windows Server  ·  high  ·  Failover clustering & Hyper-V

A clustered role will not come online or fails over repeatedly

A resource in the group is failing, and the cluster is moving the whole role between nodes trying to find one where it works.

What you see

The role bounces between nodes and then stops in a failed state. Event 1069 names the resource that failed.

What is actually wrong

A dependency that cannot come online — usually storage or an IP address — or a resource whose health check keeps failing.

Codes and articles

Event 1069Event 1205Event 1254failed to bring the resource onlineresource has exceeded its failure threshold

The fix

Find the resource at the bottom of the dependency chain
Elevated PowerShell50 minutesmedium riskreversible

A role fails to start or keeps failing over.

  1. Find the resource that is actually failing, not the role that reports it.

    PowerShell
    Get-ClusterResource | Where-Object State -ne 'Online' | Format-Table Name,State,OwnerGroup,ResourceTypeGet-ClusterGroup | Format-Table Name,State,OwnerNode
  2. Read the dependency chain — a resource cannot come online until everything it depends on is up.

    PowerShell
    Get-ClusterResource 'SQL Server' | Get-ClusterResourceDependencyGet-ClusterResourceDependencyReport -Group 'SQL Group' -Path C:\

    The role reports the topmost resource as failed, but the cause is usually the bottom of the chain — a disk that did not attach or an IP address that could not be registered. The report makes the order explicit.

  3. Read event 1069, which names the resource and the reason.

    PowerShell
    Get-WinEvent -LogName System -MaxEvents 100 | Where-Object Id -in 1069,1205,1254 | Format-List TimeCreated,Id,Message
  4. Stop the failover loop while you work, so the cluster stops moving it.

    PowerShell
    Get-ClusterGroup 'SQL Group' | Set-ClusterOwnerNode -Owners node01(Get-ClusterResource 'SQL Server').RestartAction = 0
  5. Bring the resources up one at a time from the bottom of the chain, so the first failure is obvious.

    PowerShell
    Start-ClusterResource -Name 'Cluster Disk 2'Start-ClusterResource -Name 'SQL IP Address'Start-ClusterResource -Name 'SQL Network Name'
  6. Get the detailed cluster log for the failure window.

    PowerShell
    Get-ClusterLog -TimeSpan 15 -Destination C:\clusterlogs -UseLocalTime
Confirm it workedThe role comes online and stays on one node under normal conditions.
PowerShell
Get-ClusterGroup | Format-Table Name,State,OwnerNodeGet-ClusterResource | Format-Table Name,State,OwnerGroup
If you need to undo itRestore the RestartAction and preferred owners once the cause is fixed, or the role will not fail over when it genuinely should.

Where this stops. This write-up was written and checked by hand. It says what each step changes, how to confirm it worked and how to reverse it, and anything destructive is flagged before you reach it. If it does not match what your machine is doing, search the Support Centre for the exact code or message — and when something needs a person, get in touch.