Welcome,
Today I'd like to share an observation of the severely unintuitive behavior of the Failover Clustering functionality in Windows 2012 R2.
Namely, it may happen that after preparing a script that controls the behavior of the application (Generic Script), which we want to ensure high availability, and after configuring according to this Microsoft Product Team blog cluster resource will not be started, and the status of the resource will contain the information
1 | The storage control block is invalid. |
This is shown in the screenshot below:
When we display the extended error message as suggested in the error message we get the error code information
1 | 0x80070009 |
A similar entry will be set aside in the cluster's system log:
In such a situation, the first thing to do is to make sure that the script we have prepared does not return a 0×9 value from any API call.
When we have this certainty, this error means that the Visual Basic script has incorrect syntax and the cluster resource manager was not able to compile it correctly.
Therefore, it is a good practice to verify the correct compilation of the script before creating the cluster resource. To do this, issue a command from the command line:
1 | cscript.exe C:³³³³.vbs. |
Since the script should contain the function definitions themselves, and there are no function calls (a characteristic of callbacks - "CallBack"), a properly written script should not execute or display anything.
If the validation is incorrect, the result will be similar to the screenshot below:
Warm regards and I wish you only correct scripts!
Original post at: http://wawszczak.pr0.pl, reprinted by permission of the author.