A cluster is a group of independent computer systems, referred to as nodes, working together as a unified computing resource. A cluster provides a single name for clients to use and a single administrative interface, and it guarantees that data is consistent across nodes.
Windows Clustering encompasses two different clustering technologies. These technologies implement the following two types of clusters.
- A network load balancing cluster filters and distributes TCP/IP traffic across a range of nodes, regulating connection load according to administrator-defined port rules.
- A failover cluster provides high availability for services, applications, and other resources through an architecture that maintains a consistent image of the cluster on all nodes and that allows nodes to transfer resource ownership on demand.
The following are the programming interfaces for the Windows Clustering technologies:
- The Network Load Balancing Provider allows developers to create remote administration and configuration tools as well as customized user interfaces for Network Load Balancing clusters.
- The Failover Cluster APIs allow developers to create cluster-aware applications, implement high availability for new types of resources, and create remote administration and configuration tools.
source link: http://msdn.microsoft.com/en-us/library/windows/desktop/aa373130(v=vs.85).aspx