I know this error is infuriating—you're mid-configuration and the cluster spits back a generic 'request not valid' that tells you nothing. Let's fix it now.
The Quick Fix
First, open PowerShell as Administrator on the node where the cluster is active (or any node if you're running a multi-node cluster). Then run:
Get-ClusterResource | Where-Object {$_.State -eq 'Online'} | Update-ClusterResource
That refreshes the resource state. But if that doesn't clear it, the most common culprit is a mismatch between the object you're targeting and the operation. For example, you're running Add-ClusterSharedVolume on a resource that isn't a shared volume. Or you're trying to Move-ClusterGroup to a node that's not a possible owner. The real fix is to check the object type:
Get-ClusterResource | Format-Table Name, ResourceType, State
Look at the ResourceType column. If it says 'Storage Pool', 'Virtual Machine', or 'Generic Application', and your command expects 'File Server' or 'Cluster Role', that's the mismatch. You need to target the correct object.
Why This Works
The error comes from the cluster service's internal validation layer. Every cluster object has a type, and every API call is type-checked. When you call a method on an object that doesn't support it, you get ERROR_CLUSTER_INVALID_REQUEST. Refreshing the resource state clears transient issues, but the type mismatch is a permanent logic error—you're asking a fish to climb a tree. The Get-ClusterResource output gives you the ground truth so you can align your command with what the object actually is.
Less Common Variations
Sometimes the error appears when you're using Failover Cluster Manager GUI. You right-click a cluster, choose 'Add Node', and boom—error. That's usually because the cluster is still in the process of a configuration change. Wait 30 seconds, then try again. If it persists, check the cluster log:
Get-ClusterLog -Destination C:\temp\clusterlog
Open the latest log file and search for '0x13b8'. You'll see the exact operation that failed. I've seen cases where the error is triggered by a stale Node and Disk Majority quorum configuration after a node was evicted improperly. In that case, run:
Set-ClusterQuorum -NodeAndDiskMajority \\ClusterName\Disk1
But only if you have a witness disk—otherwise, use -NodeMajority.
Another variant: you're trying to New-Cluster on a server that already has cluster services partially installed. The fix is to uninstall and reinstall the Failover Clustering feature:
Remove-WindowsFeature Failover-Clustering
Install-WindowsFeature Failover-Clustering
Then reboot and try again.
Prevention
Keep your cluster nodes patched—this error has been seen on Server 2016 before the 2018 cumulative updates. Also, always validate your cluster before making changes:
Test-Cluster -Name "YourCluster" -Include "Storage", "Network"
That catches most issues before they bite. And when you script cluster operations, add a check for object type before executing. Something like:
$res = Get-ClusterResource -Name "SomeResource"
if ($res.ResourceType -eq "Virtual Machine") {
Move-ClusterVirtualMachineRole -Name "SomeResource" -Node "TargetNode"
} else {
Write-Warning "Incorrect resource type for move operation"
}
That's saved me more than once in production.
If you're still stuck after these steps, the cluster logs are your best friend. Get-ClusterLog gives you the full story, and you can filter for the error code. Don't waste hours guessing—the log names the exact object and operation. Good luck.