A while back, I was engineering different Windows 2008 cluster scenarios for a project. As usual, I took most of this work home to the Uberlab for further testing. Unfortunately, I ran into a snag. I didn’t have any iSCSI devices that could pass the Windows Cluster Validation Test. In short, whenever you build a cluster, MS attempts to validate that all of the pieces are in working order before they bless the implementation…
Here in lies the problem. As of this writing, there aren’t any free (without limitations) iSCSI solutions that pass the Windows Validation tests. In order to pass validation, iSCSI targets must support SCSI-3 Persistent Reservations (SCSI-3 PR). Any attempt to install the iSCSI package on a version other than Storage Server fails.
Since I didn’t have the production Clariions in my home lab, I turned to Google for an answer. Of course Windows 2008 Storage Server supports persistent reservations, but all I had was a standard version of 2008 R2. I stumbled on the following blog post found (here) that leveraged the Windows Automated Installtion Kit (WIAK – free from MS) to modify the iSCSI MSI package . The guide has you remove the IsSupportedSKU condition from the package, which skips the version check. Once the package is modified and recompiled, the package installs successfully.
This updated package allowed me to successfully test different Window’s cluster scenarios. The most interesting piece of this setup was the fact that the Windows 2008 server was a virtual machine backed by storage on an Openfiler SAN which doesn’t support SCSI-3PR; another Win for hardware abstraction.
Update: I was able to install the UNMODIFIED package on a Windows 7 workstation and a 2008 R2 virtual machine successfully. This may indicate that the package version restriction has been removed, but just incase, keep this post in mind.