When your cluster install fails, then there is lot to learn!!!
Today I am writing about my very recent experience working on a clustering deployment. It was for a two node cluster with single SQL Instance.
There were no errors returned during the initial stages (Rule checks) of SQL cluster install. The setup apparently gave the below error at one point during the final configuration process and the Database Engine Install was failed.
The cluster resource ‘SQL Server’ could not be brought online.
Error: The resource failed to come online due to the failure of one or more provider resources.
(Exception from HRESULT: 0x80071736)
There were no specific details on the SQL error log (Available under the Setup Bootstrap folder) which I could observe which eventually will lead me to find the reason for the error.
I kept checking the Windows error logs and hit this event right away -
[Click the picture for full view]
The reason for the error is the CNO (cluster computer account) don’t have the create computer perms at OU level.
We can test this by doing a simple Client Access Point Test
We can provide a Name and an IP (which gets picked automatically).This will create a computer object just the same way SQL Server does.
In some cases the Cluster service account are blocked from creating a computer object. In that situation you will need to work with the domain administrator and they should pre-create the virtual server computer object, and then grant certain access rights to the Cluster service account on the pre-created computer object.
In my case the domain services team created the computer object manually and then granted the cluster account full permissions for the same.
Domain level permissions are really important during cluster deployments, hence the person responsible for setting up the SQL cluster should closely interact with both windows team and domain services team(In most of the cases, both operations are handled by one single team) to understand what level of permissions are required or closely work together to isolate and fix potential problems.