Microsoft Failover Cluster Fails With Error Code: 0x80071398

Today I spent quite some time building SQL server instances on a Microsoft Failover Cluster. Everything appeared to go as expected with no errors or alerts generated during or after install. Unfortunately at the end I encountered an unexpected error.

Once I had completed deployment to all nodes I tried to move my newly created instances between all the nodes in the cluster to confirm the instance both intra-datacentre and inter-datacentre.

I was rather surprised to be presented with the error message below –

Error Code: 0x80071398

Error Code: 0x80071398

At this point I was only able to move the SQL instance to half of the cluster nodes.

I checked the possible owners for the various instance resources and at first glance everything looked to be OK. Let us take a look at what instance resources are available.

As always I have to blank certain details however we can see that the selected instance has various resources associated with it.

Failover Cluster Manager Instance Resources

All of the other resources appeared to have the correct ‘Possible Owners’ values set under the ‘Advanced Properties’ tabs –

Instance Resource Server Name Advanced Properties Possible Owners

I’ve used the ‘Server Name’ resource as an example displaying the correct settings. We see that everything is ticked meaning all four nodes can own this resource.

Now let’s take a look at the ‘IP Address’ resource which is found by expanding the ‘Server Name’ resource.

Instance Resource IP Address Advanced Properties Possible Owners

Here we see that only two of the four cluster nodes are ticked – this means the others cannot own this resource and therefore the instance cannot be moved to these nodes. We can also leverage the PowerShell cmdlet get-clusterownernode to display this information.

PS C:\> Get-ClusterOwnerNode -Resource "SQL IP Address 1 (BSA-SQLBSAPREV)" | format-list

ClusterObject : SQL IP Address 1 (BSA-SQLBSAPREV)
OwnerNodes    : {BSA-SQLFOC03N01, BSA-SQLFOC03N04}

 

Again we see that only two nodes are listed as owners. I don’t know why these boxes failed to select – as mentioned about the installs all completed successfully following the same procedure.

The resolution for this problem is simple – ensure all nodes are selected as possible owners under all instance resources.

Instance Resource IP Address Advanced Properties Possible Owners

PS C:\> Set-ClusterOwnerNode -Resource "SQL IP Address 1 (BSA-SQLBSAPREV)" -Owners BSA-SQLFOC03N01, BSA-SQLFOC03N02, BSA-SQLFOC03N03, BSA-SQLFOC03N04

PS C:\> Get-ClusterOwnerNode -Resource "SQL IP Address 1 (BSA-SQLBSAPREV)" | format-list

ClusterObject : SQL IP Address 1 (BSA-SQLBSAPREV)
OwnerNodes    : {BSA-SQLFOC03N01, BSA-SQLFOC03N02, BSA-SQLFOC03N03, BSA-SQLFOC03N04}

 

Once the remediation steps were completed the SQL instance was able to move between all nodes without issue.

4 thoughts on “Microsoft Failover Cluster Fails With Error Code: 0x80071398”

  1. Thanks Alex that was very detailed and helpful for me.
    i was checking ownership on instance properties. but after reading your blog and checked in IP address setting other nodes was not selected. now failover is successful.

    Reply

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.