Extending MSCS with NLB
You can also use a critical
technology called Network Load Balancing (NLB) to ensure that a server
is always available to handle requests. NLB works by spreading incoming
client requests among a number of servers linked together to support a
particular application. A typical example is to use NLB to process
incoming visitors to your website. As more visitors come to your site,
you can incrementally increase capacity by adding servers. This type of
expansion is often referred to as software scaling, or scaling out. Figure 4 illustrates this extended clustering architecture with NLB.
By using both MSCS and NLB clustering technologies together, you can create an n-tier infrastructure. For instance, you can create an n-tiered
e-commerce application by deploying NLB across a front-end web server
farm and use MSCS clustering on the back end for your line-of-business
applications, such as clustering your SQL Server databases. This
approach gives you the benefits of near-linear scalability without
server- or application-based single points of failure. This, combined
with industry-standard best practices for designing high-availability
networking infrastructures, can ensure that your Windows-based,
Internet-enabled business will be online all the time and can quickly
scale to meet demand. Other tiers could be added to the topology, such
as an application-center tier that uses component load balancing. This
further extends the clustering and scalability reach for candidate
applications that can benefit from this type of architecture.
How MSCS Sets the Stage for SQL Server Clustering
Figure 5
shows an Excel spreadsheet that documents all the needed Internet
Protocol (IP) addresses, network names, domain definitions, and SQL
Server references to set up a two-node SQL Server Clustering
configuration (configured in an active/passive mode). CLUSTER1 is the first node, CLUSTER2 is the second node, and the cluster group name is CLUSTER >GROUP (simple naming is used here to better illustrate the point). The public network name is ClusterPublic, and the internal heartbeat network name is ClusterInternal.
The cluster controls the following resources:
Physical disks (Q: is for the quorum disk, S: is for the shared disks, and so on.)
The cluster IP address
The cluster name (network name)
The Distributed Transaction Coordinator (MSDTC)
The SQL Server virtual IP address
The SQL Server virtual name (network name)
SQL Server
SQL Server Agent
The SQL Server Full-Text Search service instance (if installed)
After you successfully install,
configure, and test your cluster (MSCS), you are ready to add the SQL
Server components as resources to be managed by MSCS. This is where the
magic happens. Figure 6
shows how the Cluster Administrator should look after you
install/configure MSCS. It doesn’t have SQL Server 2008 installed yet.