I have successfully created a SQL Server 2012 Failover Cluster for test purposes using Windows Server 2008 (not R2!).
The environment consists of two physical servers running VMWare virtualization software. VM1 has Windows Server 2008 SP1 x64 with 3GB ram. VM2 has Windows Server 2008 SP1 x86 with 3GB ram. Shared storage is provided by a third physical server running Windows Storage Server 2008 using the Microsoft iSCSI Target. The iSCSI target software is configured to allow access to both VM1 and VM2. Three iSCSI Targets were created, QuorumDisk, MSDTCDisk, and SQLDataDisk.
All machines are member servers in Active Directory, named AD.
I created a security account for SQL Server, named AD\SQLCluster. AD\SQLCluster has been given the
Read servicePrincipalName and
Write servicePrincipalName. Both machine accounts, AD\VM1 and AD\VM2, have been given Kerberos Delegation rights through Active Directory Users and Computers. Since my DC is running Windows Server 2003 with SP2 I needed to use the ADSIEdit.exe tool to modify the
servicePrincipalName rights for AD\SQLCreator, which is available in the Support Tools for Windows Server 2003.
AD\VM1 and AD\VM2 were connected through Microsoft iSCSI Initiator software to the storage server, and then configured into a Windows Server Failover Cluster using the Cluster Administrator. MSDTC was configured as a Failover Application on both AD/VM1 and AD/VM2 to provide clustered DTC services for SQL Server.
I installed SQL Server 2012 SP1 x86 onto AD\VM2, using the following setup command-line:
D:\> Setup /SkipRules=Cluster_VerifyForErrors /Action=InstallFailoverCluster
This allows SQL Server setup to bypass the Windows Failover Cluster Verification. This results in a setup that is typically unsupported by Microsoft. In my case, this was necessary since VM1 is x64 and VM2 is x86, which is unsupported.
I installed SQL Server 2012 SP1 x64 onto AD\VM1 using the following setup command-line:
D:\> Setup /SkipRules=Cluster_VerifyForErrors /Action=AddNode