The State of Microsoft Clustering Today…

Merriam-Webster defines a cluster as (http://www.m-w.com/cgi-bin/dictionary):


“a number of similar individuals that occur together: as a : two or more consecutive consonants or vowels in a segment of speech b : a group of buildings and especially houses built close together on a sizable tract in order to preserve open spaces larger than the individual yard for common recreation c : an aggregation of stars or galaxies that appear close together in the sky and are gravitationally associated”


 


Microsoft defines a cluster with one of 4 different definitions:


*       High Performance Computing (HPC)


*       Component Load Balancing


*       Network Load Balancing


*       Server Clustering


 


High Performance Computing (HPC or Super Computing) is currently getting a lot of press ( http://www.redmondmag.com/news/article.asp?EditorialsID=6746). You need 64-bit hardware, but according Microsoft that will be all the rage in very short order. Microsoft has an array of 64-bit production and Operating Systems. Windows XP 64-bit has been out for quite sometime now (http://www.microsoft.com/technet/prodtechnol/winxppro/evaluate/xp64ovw.mspx). Windows Server 2003 has a large number of 64-bit editions (http://www.microsoft.com/windowsserversystem/64bit/default.mspx). When Windows Server 2003, Compute Cluster Edition (CCE) comes out, the HPC part of clustering will take a giant leap.


 


Component Load Balancing (CLB) came out with Application Server 2000, while not that popular; it’s still a valid form of clustering components (http://www.microsoft.com/applicationcenter/techinfo/deployment/2000/wp_clboverview.asp). This middle-ware clustering allows distributed solutions to be easily monitored through events, performance counters, and monitors that reflect the current cluster state.


 


Network Load Balancing is defined as “a distributed algorithm to load balance network traffic across a number of hosts, helping to enhance the scalability and availability of mission critical, IP-based services, such as Web, Virtual Private Networking, Streaming Media, Terminal Services, Proxy, etc. It also provides high availability by detecting host failures and automatically redistributing traffic to operational hosts.” (http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/clustering/nlbfaq.mspx). This form of clustering is becoming popular with the growth of web server farms.


 


Server Clustering is by far the most prevalent form of clustering today with Microsoft technologies. This is the technology that most think of when they hear the term “clustering”. Applications and Services can be clustered to provide High Availability. (http://www.microsoft.com/windowsserver2003/techinfo/overview/clustering.mspx) SQL Server 2000 (http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/failclus.mspx) and Exchange 2003 (http://www.microsoft.com/technet/prodtechnol/exchange/2003/library/highavailgde.mspx) are the most popular. WINS, DHCP, File Shares, Printers, Message Queuing, Generic Script, Generic Services, and Generic Applications call be clustered out of the box.


 


So the question to Microsoft is what is a cluster? We have defined exactly what Merriam-Webster thinks a cluster is. We have defined four distinct ways that Microsoft defines clustering. You can argue the case for each being called a cluster; and I would agree. Maybe when Longhorn is released we will have four types of clusters that are actually called four different things? How about HPC, CLB, NLB, and Clustering? I mean, we do live in an acronym heavy world don’t we?

Leave a Reply

Your email address will not be published. Required fields are marked *