Designing a Cluster Solution
Explore some of the factors involved in designing a cluster from scratch. A case study serves as a pedagogical example.
Thursday, September 15th, 2005
Over the last several months. “Extreme Linux” has reviewed a number of Linux- based cluster operating systems and toolkits. Each cluster distribution has advantages and disadvantages, and features from each could be rolled into a custom-designed toolkit to meet your own particular needs. Unlike proprietary closed source systems, freely-available open source tools offer the ultimate in customizability and utility.
This opportunity for customization extends, to a large extent, to commodity cluster hardware as well. Processors, disks, memory, and network interconnects are merely building blocks that can be combined and arranged in a way to maximize the performance of one or more target applications. Ideally, all clusters should be designed for an intended set of applications. Given the affordability of commodity components, multiple clusters with different configurations could be constructed to meet the diverse requirements of multiple applications in an organization.
Obviously, processor type, quantity, and speed are important, as is sufficient memory. Performance characteristics of both Intel and AMD 32- and 64-bit processors (the most common commodity processors) are all different, and the choice of processor and motherboard architecture are primary concerns for CPU-limited applications. In addition, cache size and speed can have an enormous impact on computational performance, and bandwidth to memory may be important for input- and output-intensive applications.