Why might you want to cluster your servers? What are the advantages and disadvantages of doing so? Let’s take a quick look at those questions to get a basic sense of what’s involved and whether it might be right for you. Another type of server cluster is in a restaurant, when six waiters approach your table and simultaneously ask, “Does everyone know what they want to drink?”
A cluster of servers is a number of servers operating in tandem to increase your bandwidth, storage, and redundancy. Server clustering draws on the concept of load-balancing, which means exactly what you’d think – even distribution of workload across the cluster. It’s clear a server cluster in a restaurant is not load-balanced when five of them each come out holding a beverage and one poor lady is balancing four entrées (known as hospitality single-server load balancing).
Clustering – Maybe So
Fast – Server clusters serve up your website and/or your intranet quickly. Having multiple servers operate as a team will give you a powerful amount of RAM and CPU to avoid any stalling.
Role Assignment – Giving different servers specific roles, whether temporarily or permanently, is an aspect of server clustering that refines how smoothly your website operates.
Strength – Using the increased availability of resources in a cluster, enormous files can be accessed and manipulated, a task that could be impossible in a single-server environment.
Load Balancing – A cluster is managed via one server called the cluster master. This server is programmed, in whole or part, to manage the workload and keep each server operating effectively. In a restaurant server cluster, the master is probably the guy with nothing in his hands, looking at you sheepishly as you cock your head at the woman with all the entrées.
Redundancy – By redundancy I mean that your system has multiple pieces of hardware that can potentially operate in the same manner as needed. It’s like the second and third string quarterbacks on a football team.
Scalability – You are able to grow quickly to meet any additional output and input because you are working with higher limits.
Downtime Reduction – If you need to make an upgrade or a fix, you don’t need to close up your entire system. If the lady drops all the entrées, the master can immediately fire her and give her job to one of the other servers, one that doesn’t make ridiculous mistakes.
Clustering – Maybe Not
Expense – Clearly it is more expensive to have additional servers. It can also be expensive to operate a server cluster because it requires greater expertise and software to communicate between the servers. Also consider electricity.
Compatibility – Not all applications work in a cluster environment. You have to make sure before you go to a cluster model that you know what you’re getting into regarding transitioning current applications.
Heat – These suckers are hot. If you’re going to have a large cluster of servers, you probably are going to want to use a data center rather than attempting to house and operate the cluster within your business. Also, if it’s a hot day, you don’t want a huge amount of waiters with their sweaty and oppressive body heat crowded around your table.
Clustering servers is not for everyone, but it certainly has its pluses. Be sure to analyze the situation from all angles before moving forward. Also, immediately leave the restaurant if more than a dozen servers speak to you at one time – you are clearly in the bowels of a religious cult.
by Kent Roberts and Richard Norwood