cancel
Showing results for 
Search instead for 
Did you mean: 

Clustering

Community Veteran
Posts: 14,345
Thanks: 685
Fixes: 10
Registered: 01-08-2007

Clustering

Hi guys & BarryZ especially!
Thanks to freecycycle I now have 15 Dell computers to play with. I was told they were 1GHz chips however the first one I powered up was 733MHz. Thats not really an issue but I thought I'd give you a rough idea of their power and performance!
So I was thinking about setting up a beowulf cluster. Now I'm no genius with linux I'm afraid.. I have however downloaded clusterLnoppix. My understanding is that this will simply boot like normal knoppix from a CD and automatically detect and co-operate with its fellow brothers...
Anyway.. some questions came to mind!
How is IP assigning handled?
Can I run VMware on a beowulf cluster? - IE could I turn it into a Super Windows XP?
What happens if one machine suddenly goes out of service or reboots?
Are there any electrical issues to consider? IE overloading sockets..
What else can I do with a cluster of computers? Surely the distributed processing ability must have some uses? Can you for example do video editing or photo editing? As I understand it a beowulf cluster is just a big virtual computer running on distribuited hardware...
If you have any other tips or corrections I'd be very grateful. Initially I am looking to put 10 of these machines into the same cluster (once I've found some network cables etc).
I need a new signature... i'm bored of the old one!
10 REPLIES
Community Veteran
Posts: 14,345
Thanks: 685
Fixes: 10
Registered: 01-08-2007

Re: Clustering

Oh come on.... some of you must be able to help me out. I know for a fact Barry Z has the knowledge around here.
Frankly I'm shocked! you guys have always been helpful in the past (except with my DNS question to which you tried no end to put me off) but when it comes to something big which I might learn a thing or two from you all go hush-hush. Why? Are you scared of more people trespassing on your area of expertise?
I've known a lot of people in IT over the years and ALL of them like to keep things secret so they can be 'smart' around others. It's sad.
I need a new signature... i'm bored of the old one!
Community Veteran
Posts: 1,574
Thanks: 3
Registered: 13-04-2007

Re: Clustering

I dont know this particular clustering but I have worked on a lot of Windows clusters. It again comes down to what you want to do and use it for and if you read there documents thats what beowolf says first decided what you want to do with it.
In simple terms only certain software can effectively be used in a cluster these are things like Terminal Server, SQL server and webserver. It doesnt give you a 733mhz pc * 3 in terms of processing power unless you have software that has been written special to use more than one pc.
As an example if you use it for Terminal server you have 2 network cards in each pc(it can be done with one but doesnt work as good) you load TS on each pc and then the clustering software. One network card is the normal network card with a fixed ip on the network. The second one is a heart beat the clustering assigns a virtual ip and a user logs on to the virtual ip TS the software then assigns the user to the least used pc. The heartbeat passes info on cpu, network  usage so the cluster can load balance it also tells it which pc is alive should one go dead it doesnt make any difference it just get drooped from the list and if it comes back resigned.  As users log onto a virtual IP its transparent to them. The same applies to webservers and sql servers to ensure there is no single point of failure. You need the software on each pc so you need 3 versions of terminal server or slq the software doesnt run across pc's
Are you sure you are not thinking of Grid computing were you can use other pc's proccessing power like SETI were the task are give to each pc and fed back to the main application?
Community Veteran
Posts: 14,345
Thanks: 685
Fixes: 10
Registered: 01-08-2007

Re: Clustering

It is indeed possible I meant a SETI setup. I was told that a beowulf cluster was basically a virtual OS running as one large computer where code could be run distributed across many computers.
So.. what am I missing here?
I need a new signature... i'm bored of the old one!
Lurker
Grafter
Posts: 1,867
Registered: 23-10-2008

Re: Clustering

This is a good site http://www.beowulf.org/overview/howto.html
Follow the link towards the bottom to read on - his book goes to some lengths to describe the limitations and reasons why its not really worth the effort, unless you have a program designed and optimised for a parallel processing environment.
Some programs are getting better at making use of parallel processing, but generally this only extends as far as running as multiple processes rather than a single one, with processes being assigned to cores in a similar way to that described by Samuria in reference to the simplistic way that TS Sessions are load balanced amongst a cluster.
Basically its not worth the effort for the majority of programs. Wink
It won't work the way you hope - it will of course allow you to run something like VMWare and then have say and XP VM sat in there, but for the most part you won't see much performance increase (although you will see a huge leap in power consumption, as well as having quite a bit of warmth to dispose of!)
Community Veteran
Posts: 14,345
Thanks: 685
Fixes: 10
Registered: 01-08-2007

Re: Clustering

Quote from: James_G
it will of course allow you to run something like VMWare and then have say and XP VM sat in there, but for the most part you won't see much performance increase (although you will see a huge leap in power consumption, as well as having quite a bit of warmth to dispose of!)

See thats what I'm really interested in...
When you say it will allow me to run VMware with XP running.... would VMWare run on multiple PCs at the same time - in essence running as one large pc or would it simply run on just one machine?
Only reason I'm asking is it would be fascinating to try...
The heat isn't a problem... our place is so cold it'll serve a nice purpose to heat our place up!
I can always find a few uses for these machines anyway... as dumb terminals or something (see I'm planning a shed one day as a workshop and wouldn't want to leave a valuable pc out there so one of these cheepo things would be perfect!)
I need a new signature... i'm bored of the old one!
Lurker
Grafter
Posts: 1,867
Registered: 23-10-2008

Re: Clustering

VMWare clusters tend to be for HA (High Availability) rather than for performance improvements.
It would be cheaper to buy a faster computer than it would to create a cluster to provide high-performance computing. (In terms of VMWare ERX Licenses)
Unless you buy the Enterprise version, you will more or less be stuck with each VM running on a single node in your cluster I think.
There are huge wins to be had in parallel processing (think about how great Google is at returning inordinate amounts of data in next to no time) To take advantage, you need to be doing LOTS of processing, and you need to be running apps designed ground up for a parallel environment.
Why not give it a go on a single node beowulf 'cluster' and benchmark, then expand your cluster to two nodes and benchmark again. Then try three nodes, and check again what improvment you have (if any).
I suspect performance will decrease as you add nodes, but would be happy to be proved wrong!
Go on, do the experiment, for the 'greater good'!
Grin
Community Veteran
Posts: 3,789
Registered: 08-06-2007

Re: Clustering

The basic premise of a Beowulf cluster is HPC - High Performance Computing.
One very good resource is this.
Standard architecture of a Beowulf cluster is to have one "controller" node which parcels out processing tasks for the individual nodes that it controls.  Depending on the type of application, you would have maybe one controller node per 16 to 256 'work' nodes.  Each of these "compute farms" can then be controlled by a master controller node, which may control from 4-16 "farms".  Each of these farm controllers could also be controlled by a master controller, which might look after the work assignments of 4-16 'farms' and so on.  One very good illustration of a Beowulf type application is a CGI Render farm (incidentally, my new job as of 5th January is in charge of looking after the CGI render farm at Pinewood Studios!)

The image on the left shows one Beowulf "farm"
Unfortunately, running any sort of commodity software on a Beowulf cluster is pretty much a physical impossibility.   Software does have to be specifically written using a technique based upon "message passing" which allows long and complicated calculations to be broken out into individual segments that can be pushed out to an individual node to complete.  
So, the only real reason to build a Beowulf cluster (apart from the geek factor, which I totally understand ! ) is if you have access to programmers who can write software that is targetted for this sort of environment.
However
There's always a 'but'.  
There is a software package called MOSIX which will allow you to use a cluster of computers as a single compute farm.  Essentially, you set up a bunch of computers running Linux, and install MOSIX on them.  Then, you can start any process on any one of the computers, and MOSIX will automatically find the best "resource" for that program to run on.  MOSIX does work at the Process level, so it might allow you to spread the load of running a VM over multiple machines, but I really couldn't comment on how well this would work.  There are a few caveats, such as you need to have shared storage (like a NAS box, or another machine running OpenFiler for example).  The MOSIX site makes for some very interesting reading though!
Hope that helps!
B.
alanb
Grafter
Posts: 459
Registered: 24-05-2007

Re: Clustering

As one of the 'people in IT', I think the preceding replies have been incredibly polite considering the nature of your second post ...
Quote from: okrzynska
Oh come on.... some of you must be able to help me out. I know for a fact Barry Z has the knowledge around here.
Frankly I'm shocked! you guys have always been helpful in the past (except with my DNS question to which you tried no end to put me off) but when it comes to something big which I might learn a thing or two from you all go hush-hush. Why? Are you scared of more people trespassing on your area of expertise?
I've known a lot of people in IT over the years and ALL of them like to keep things secret so they can be 'smart' around others. It's sad.

The rather random nature of your questions suggests that you've given little thought to the subject. If you'd done a little research into clustering, you should have discovered that very few software applications are able to take advantage of clustering technology. The few applications that can do so have to be modified to make them suitable for parallel processing and are necessarily locked into a specific type of clustering software. That may be why nobody was rushing to answer your questions.
It is also the basis of the first point made in the first paragraph of the first reply ...
Quote from: samuria
I dont know this particular clustering but I have worked on a lot of Windows clusters. It again comes down to what you want to do and use it for and if you read there documents thats what beowolf says first decided what you want to do with it.

Samuria's advice is absolutely right. My version would be: find an application, find the right application software, and then install the relevant clustering technology that will work with the application software.
I've always found that if I want to implement complex technology that I'm not familiar with, then it's worth getting hold of a relevant textbook or tutorial, it saves a lot of grief in the end and provides the basic knowledge needed to understand the manuals or phrase more complex questions that will obtain targetted advice.
Community Veteran
Posts: 14,345
Thanks: 685
Fixes: 10
Registered: 01-08-2007

Re: Clustering

@alan
My apologies if you felt offended. I am quie an impatient person when I want to try something and get it up and running. I can't help that I've always been like it. There is nothing worse than having to wait and wait and wait and..... wait... it really does wind me up no end.
My biggest thanks go to Barry though.. always a source of inspiration and knowledge!
My reasons for wanting to try this were pretty simple really. A friend of mine seemed to think that a cluster would give improved computing performance and that you could in essence run one virtual super computer on many smaller computers. Now.. me being into all things on a big scale decided that was right up my alley. The only problem is I'm not much of a guru on clusters and so turned here to an ISPs forum where it seemed I'd stand a good chance of being advised by plenty of folks in the 'know'.
I had a funny feeling that it might not be all my friend had cracked it up to be but even so.. still sounds like a cool thing to try right? I'm also curious about this SETI thing...
I need a new signature... i'm bored of the old one!
Community Veteran
Posts: 1,574
Thanks: 3
Registered: 13-04-2007

Re: Clustering

Some things for you to look at
Grid free software
http://www.appistry.com/developers/go/lp/7014000000056Xw?_kk=open%20source%20grid%20computing&_kt=1a...
or
http://www.gridgain.com/product_license.html
Lots of details about grids
http://www.gridcomputing.com/ You can use you cpu to cure cancer search for aliens and other worth while projects
search for aliens
http://setiathome.berkeley.edu/