Application Compatibility: Windows Server Failover Clustering on Windows Server 2008
The existing Cluster APIs have remained largely the same as in Windows Server® 2003. A dozen or so new ones have been added, including CreateCluster, DestroyCluster, AddClusterNode, EvictClusterNode, SetClusterQuorumResource, and SetClusterResourceDependencyExpression, to name a few. The only ones that have been completely removed are BackupClusterDatabase and RestoreClusterDatabase. You now need to use the new Cluster VSS Writer to perform backups and restores of the cluster configuration.
The Cluster Automation Server (MSClus) COM interface is being deprecated, so none of the new APIs are exposed through MSClus. MSClus will still be present for Windows Server 2008, but it will be removed in a future release. The recommendation is to avoid writing new code leveraging it. In Windows Server 2008, there now is full parity between the Cluster API and the WMI provider MSCluster.
A new control code has been added that will be of interest if you have a storage class resource. It is called CLUSCTL_RESOURCE_STORAGE_GET_DISK_INFO_EX.
Finally, backward compatibility has been broken, which means that you cannot call Cluster APIs from a Windows Server 2008 Cluster to a down-level cluster (Windows NT 4.0, Windows 2000, or Windows 2003). Also, you cannot be on a down-level client and remotely call Cluster APIs against a Windows Server 2008 node. However, this prohibition does not affect code running on a Windows Server 2008 computer, so in general your code should simply work.
Applications that use BackupClusterDatabase and RestoreClusterDatabase will no longer function when used on a Windows Server 2008 cluster.
Applications that use the two removed APIs will have to be re-engineered for backup and restore.