Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Is there a way to run Linux operating system on a virtual machine which aggregates the resources of physical machines on the local network and acts as a single super-computer? If possible, how?

Thanks.

share|improve this question

6 Answers 6

up vote 6 down vote accepted

I think you would be looking at something like a LVS or a beowolf cluster;

"Linux Virtual Server is a highly scalable and highly available server built on a cluster of real servers. The architecture of server cluster is fully transparent to end users, and the users interact with the cluster system as if it were only a single high-performance virtual server."

Linux Virtual Server

"One of the main differences between Beowolf and a Cluster of Workstations (COW) is that Beowulf behaves more like a single machine rather than many workstations."

Beowolf

Realistically whatever you use you are going to subject to the problems of distributed computing which are concurrent access to data and maintaining consistency across the nodes. That generally has the result as the other poster mentioned that some more specific technology is more suitable such as distributed file-systems, or grid implementations.

share|improve this answer
    
Actually according to hte question he is not. Beowulf is a lot, but not a virutal machine compromising many physical computers. –  TomTom Feb 1 '11 at 10:54

It is possible, yes. That is to say, it is possible to run a Linux operating system on multiple computers and present them as a single logical system with pooled physical resources.

That is the easy part, the how, however, is a bit more complex. What, precisely do you wish to accomplish?

To keep to the letter of the question, creating an infrastructure for the presentation of a logical single system I would look into OpenSSI. SSI stands for Single System Image.

In keeping with the spirit, there are a wide array of non-SSI but clustered system options available, which returns to my earlier question regarding intended outcome.

A word of warning: most cluster solutions, OpenSSI included, require a fair bit of kernel development before being released. This results in the "finished" product relying on an older kernel than is perhaps available for a cluster-less Linux distribution of your choice. OpenSSI, for example, is using the 2.6.12 Linux kernel currently.

share|improve this answer

MOSIX (and openMosix) could be used to achieve this, but I do not know of its current state.

share|improve this answer
    
openMOSIX is, or I should say was, a project very near and dear to me, however, it has been discontinued since 2008 unfortunately. Its "parent", MOSIX, remains available for a price. –  Tok Nov 26 '10 at 16:54

As already mentioned, OpenMOSIX, OpenSSI, and (not mentioned) Kerrighed are single-system image clusters, i.e. they provide the illusion of one big SMP system. This is great for parallel tasks that spawn multiple processes with a minimum of interaction and little disk IO, since load balancing will distribute them across different nodes. I'm unsure about the status on these projects, OpenMOSIX is dead, and OpenSSI seems less than vibrant, with lots of stagnant web pages.

share|improve this answer

That is not possible AFAIK.

share|improve this answer

Look for single system image cluster

Single System Image [wikipedia.org]

Personally, I'm going to give OpenSSI a go. It has: single process space, single root, single I/O space and single IPC space.

I dont know your budget, but buying old infiniband network switch/cards will lower your latency between nodes (still not too cheap tough). Remember that you can test different kind of scenarios in virtual machines, before implementing on real hardware.

share|improve this answer

protected by MadHatter May 26 '13 at 8:11

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.