Easiest way for clustering a bunch of servers?

rosenberg

Distinguished
Apr 27, 2009
32
0
18,530
 So, I have a bunch of proliant in a rack and I wanted to make them work as a cluster, but I'm having a little trouble to find the quickest route since I'm no expert in this matter. They all have windows 2003 installed.

 Any Ideas?

Thanks!
 

someone19

Distinguished
Jan 16, 2011
441
3
18,810
Depends on what you plan on getting the servers to do. More info on goals and the appropriate suggestions can be made.


The approach to distribute a webserver across multiple machines is vastly different than doing scientific computational equations.
 

rosenberg

Distinguished
Apr 27, 2009
32
0
18,530
well, our application is highly memory intensive, one machine cannot handle multiple instances of the application.
so, what I wanted was to cluster them to share resources such as memory, cpu, etc.
 

Kewlx25

Distinguished
There are several types of "clustering". The most common are fail-over clustering or load balanced clustering.

Microsoft almost exclusively does just fail-over clustering.

If each instance of the application runs on it's own data, is there a reason why you need to cluster a server? Can you just run multiple instances across multiple independent servers?
 

someone19

Distinguished
Jan 16, 2011
441
3
18,810
The application would need to be written to be able to cluster. There are several projects that help implement that clustering, but for a typical application that wasn't originally written to cluster it would require a complete re-write.

Only certain computations will benefit from clustering, work that doesn't depend on the output of other work is the best result of clustering. Work that needs the output from another worker before it can begin to compute is the worst case. Eventually even the best case for a program won't scale linearly either; 5 computers crunching won't be five times as fast, they might be 4.5 times or closer to 5, but it won't be exactly 5.

It is not, repeat not possible to take an unmodified program that is not designed specifically to run on multiple machines to take advantage of another computer's resources.