The cluster will not start — quorum lost, event 1177
Not enough votes are available, so the cluster shuts down rather than risk two halves running independently.
What you see
The cluster service stops on every node and will not start. Event 1177 says quorum was lost.
What is actually wrong
More than half the votes are unavailable — nodes down, the witness gone, or a network partition that has split the cluster.
Codes and articles
Fixes (3)
Restore or replace the witness
The witness is the missing vote.
Check the current quorum configuration and node votes.
Get-ClusterQuorum | Format-List Cluster,QuorumResource,QuorumTypeGet-ClusterNode | Format-Table Name,State,NodeWeight,DynamicWeight
If the witness is a file share, check the share is reachable and the cluster name object still has permission on it.
Test-Path '\\fileserver\clusterwitness'Get-SmbShareAccess -Name clusterwitness -CimSession fileserver
The cluster name object needs full control on the witness share. A file server rebuild or a permissions tidy-up removes it, and the cluster carries on with one fewer vote until the day a node reboots.
Reconfigure the witness.
Set-ClusterQuorum -FileShareWitness '\\fileserver\clusterwitness'A cloud witness is a better choice for a two-node cluster with no reliable third location.
Set-ClusterQuorum -CloudWitness -AccountName 'storageaccount' -AccessKey 'key'Confirm dynamic quorum is enabled, which lets the cluster survive sequential node failures.
(Get-Cluster).DynamicQuorum(Get-Cluster).WitnessDynamicWeight
Get-ClusterQuorum | Format-ListGet-ClusterNode | Format-Table Name,State,NodeWeight
Force quorum to bring the cluster back
Enough nodes are genuinely lost that quorum cannot be reached. Read the warning first.
Be certain the other nodes are genuinely down and not merely unreachable. Forcing quorum while another partition is also running produces two clusters writing to the same storage.
This is the split-brain scenario the quorum mechanism exists to prevent, and it is the one way to make a bad outage into data loss. Confirm the other nodes are powered off, not just unreachable.
Confirm the state of every node before forcing anything.
Get-ClusterNode | Format-Table Name,StateTest-NetConnection node02 -Port 3343
Start the cluster service with quorum forced on the surviving node.
Start-ClusterNode -Name node01 -FixQuorumGive the surviving node full weight so the cluster is stable while the others are down.
(Get-ClusterNode node01).NodeWeight = 1Get-ClusterNode | Where-Object Name -ne 'node01' | ForEach-Object { $_.NodeWeight = 0 }
Bring the other nodes back one at a time, restoring their weight as each joins.
Start-ClusterNode -Name node02(Get-ClusterNode node02).NodeWeight = 1
Restore the normal quorum configuration once every node is back.
Get-ClusterNode | ForEach-Object { $_.NodeWeight = 1 }Get-ClusterQuorum
Get-ClusterNode | Format-Table Name,State,NodeWeightTest-Cluster -Node (Get-ClusterNode).Name -Include 'Inventory','Network','System Configuration'
Repair the cluster network
Nodes are running but cannot see each other.
Look at the cluster networks and their roles.
Get-ClusterNetwork | Format-Table Name,State,Role,Address,AddressMaskGet-ClusterNetworkInterface | Format-Table Name,Node,Network,State
Test the cluster heartbeat port between nodes.
Test-NetConnection node02 -Port 3343 -InformationLevel DetailedCluster communication is UDP 3343 with a TCP fallback. A firewall change or a VLAN alteration that blocks it partitions the cluster while every other kind of traffic keeps working, which makes it look like a cluster fault rather than a network one.
Check the heartbeat thresholds — on a busy or virtualised cluster the defaults can be too tight.
Get-Cluster | Format-List SameSubnetDelay,SameSubnetThreshold,CrossSubnetDelay,CrossSubnetThresholdCheck for a network adapter that has been reconfigured, or a teaming change that dropped the cluster network.
Get-NetAdapter | Format-Table Name,Status,LinkSpeed,InterfaceDescriptionGet-ClusterNetwork | Where-Object State -ne 'Up' | Format-List
Run the validation report for the network only — it is quick and does not disrupt running roles.
Test-Cluster -Node node01,node02 -Include 'Network' -ReportName C:\clusternetCheck the cluster log for the moment of the partition.
Get-ClusterLog -TimeSpan 30 -Destination C:\clusterlogs
Get-ClusterNetwork | Format-Table Name,State,RoleRelated faults
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.