What is a Cluster Network?
A cluster network is two or more computing devices working together for a common computing purpose. These networks take advantage of the parallel processing power of the computing devices. In addition to the increased processing power, shared computing resources in a cluster network also can provide scalability, high availability, and failover capabilities should one computing device have a problem. There are three basic types of computing clusters: load-balancing clusters, high availability clusters, and high-performance clusters.
Load-balancing clusters consist of two or more computing systems, also called nodes. The workload of the network is spread over these nodes to increase the computing performance of the network. From a user perspective, the nodes function as one computer system.
A high-availability cluster network is two or more computing nodes that provide redundancy in case of hardware or software failure. It is also referred to as a failover cluster. When a computing system fails, its operations are transferred to the redundant node to provide continuous computing services.
High-performance clusters use the parallel processing power of the multiple cluster nodes to provide high-performance computing. This allows the nodes to work together on a problem. It is often a good solution for businesses whose networks have high processing requirements but that have limited budgets.
Clustering architectures can vary greatly depending on the networking technologies used and the purpose of the computing system. There are three primary clustering architectures: mirrored disk, shared disk, and shared nothing configurations. A mirrored-disk cluster architecture replicates stored application data to a backup storage site. Its basic purpose is to provide high availability of the computing resources as well as disaster recovery in case of some type of computing failure.
A shared-disk cluster network uses central input/output (I/O) devices that are accessible to all nodes in the cluster. Usually, they are used for sharing disk storage for files and databases. Some shared-disk configurations distribute information across all the nodes in a cluster, whereas other configurations use a central metadata server.
A shared-nothing clustering architecture has independent and self-sufficient nodes. Each node has its own memory and I/O devices. It does not provide concurrent disk access from multiple nodes, because only one node needs access to the storage at any one time. Often each node in this type of architecture is responsible for a different set of network tasks. A shared-nothing cluster network can scale to hundreds of nodes and is a popular option in web development environments.
@NathanG - There probably are not that many applications in your day to day work where you would need a cluster network, I would agree.
However you make a good point. Where you will usually see this kind of technology is in academia or in research environments where they are studying advanced scientific applications and theories.
The ability to join multiple processors to bear down on a task is a big boon in my opinion; and as you pointed out, you don’t need to use advanced operating systems. You can use Linux (which is free) or you can cluster Windows if your budget can afford it. Either way you reap the same results.
When I was in college I had a professor who was working on this really advanced genetic algorithm problem that he wanted solved.
In order to solve the problem, he built a Linux cluster network of computers operating nearly 24 hours a day for several weeks to solve the problem. It was a tremendous feat of parallel processing.
I actually don’t know what the practical application was for his algorithm; maybe it was for a journal article and nothing more than that.
I remember thinking that it would be fun to work on advanced theoretical problems of that sort, rather than on mundane database tasks which do not require that amount of processing or workload.
Post your comments