openMosix Is Shutting Down
jd writes "Despite having one of the largest user-bases of any clustering system for Linux, openMosix is to be shut down. Top developers have left and they lack the means or motivation to continue. Their official claim of multicore CPUs making clustering redundant is somewhere between highly improbable and totally absurd, as has been pointed out elsewhere. Why is this shutdown so important? Well, from a technical standpoint, the open-source bproc (the Beowulf process migration module) is ancient, MOSIX is very hard to obtain unless you're a student, and kerrighd is (as yet) immature. From a user standpoint, openMosix is the mainstay of the Open Source clustering world and has by far the best management tools of any. The ability of this project to continue will likely have a major impact on the future of Open Source in the high-end markets — if the best of the best couldn't survive, people will be more careful about anything less."
someone else will pick it up.
Isn't that kind of the point of open source?
There's a similar project named 'Open Single System Image'
http://sourceforge.net/projects/ssic-linux
FTA: "Moshe Bar, openMosix founder and project leader, has announced plans to end the openMosix Project effective March 1, 2008."
Wikipedia: Moshe is founder of the company behind the Xen software, XenSource, Inc. Moshe is also founder of the company Qumranet which is behind the development of the KVM virtualization technology in the Linux kernel.
Looks like Moshe is to busy for that old fashioned mosix stuff...
Apparently the code doesn't count, only spurious logic about changing hardware factors. Oh, and apparently the sun does, in fact, set.
But how cool a name is Moshe Bar?
The secret to creativity is knowing how to hide your sources. -- Albert Einstein
Just imagine a beowulf clus... Oh never mind.
From the summary it seems that the people who've contributed most to the openMosix code have moved on to other things.
Well, that happens. People's lives don't stand still, they change: they take on other commitments at work, have relationships, travel the world, etc.
But that doesn't mean that openMosix is dead.
On the contrary. This is open source software.
The code isn't lost. Others can pick up the slack and join the effort as they see fit. openMosix can still move forward, perhaps not at the same pace as before, but forward nevertheless.
It seems to me that the summary misses the point of OSS. If this was a closed source project and the lead developers had walked away then, yes, openMosix would almost certainly be dead and buried.
But, unless I'm missing something huge this isn't the end of the line for openMosix, precisely because it is open source.
It hardly seems appropriate to look at this as a failing of OSS development. On the contrary, it's arguably an example of one of its strengths.
This a baton change not a retirement. At best, the new holder(s) of the baton will soon hit the same stride as the previous holder(s). At worst, the baton has fallen to the ground and it simply needs to be picked up.
"Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
There are many very valuable projects that get very little funding - insufficient to pay the programmers who give that value. If the contributors cannot live by their work then they have to go find payment elsewhere.
As open source matures, people will come to understand that taking without giving back is not a sustainable model.
Engineering is the art of compromise.
Yeah, but how likely or realistic is it that the few people in the world who understand, in this case, clustering, to such an extent, will choose to work on this project? The vast majority of software developers want to get paid for their work.
In theory, you're right. It'll continue. But will reality live up to theory? Only time will tell.
I don't respond to AC's.
From a user standpoint, openMosix is the mainstay of the Open Source clustering world and has by far the best management tools of any.
LOL what?! The poster must be on crack. OpenMosix/Mosix is nothing but an experimental/buggy piece of software used by hobby clusterers, it works with 2.4 kernels but never had good support on 2.6. Real cluster software consists of PBS/Maui or some other queueing/scheduler built in house.
What a ghastly overreaction, but hey, this is slashdot.
Best of the best? I may get flamed for this, but I'd barely heard of OpenMosix.
When Apache, the Linux kernel, Eclipse and (name a popular GNU project) look like "shutting down", then maybe we can bleat about the failure of open source.
And as some have said, there's not real reason the baton can't be passed on to interested new parties.
I agree, there's a degree of optimism in my argument but the summary is plain flawed.
Its message and tone is that openMosix = dead, openMosix = OSS, therefore openMosix dying = OSS solutions are bad.
What it completely fails to address is that the situation would be no better, and in fact would be a lot worse, if this was a CSS tool. Indeed, the ray of light for openMosix users comes from the fact that it is OSS.
Bashing OSS solutions because one is dead/dying/in limbo/whichever way you want to look at it is patently ridiculous because it's not the openness of the code that's at fault here, or even the open source development model.
To put it bluntly, CSS projects that lose their core development teams don't exactly fair any better do they?
"Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
The pendulum has swung back now. In the days when 10Mbps ethernet came onto the scene and our processors could barely keep up with their floopy drives (which is why a floppy used DMA), we collectively came up with the idea of using several computers to solve a problem by splitting the problem up among them. Since then thanks to Moore's law our processors now spend a lot of time waiting to fetch the next instruction from their on-chip L1 cache - as in when there's a miscalculation in the branch prediction step.
Our networks however have not kept up to this pace. Right now our very best effort for network speed is infiniband which tops out at 96Gbps theoretical limit. The AMD Opteron page lists a limit of 24GBps, that's 192Gbps, bandwidth using three coherent hypertranport processors. See the problem?
I see one of two things happening, either we'll find a magic bullet technology to significantly increase our network speeds; or some limit will finally end Moore's law. Otherwise there's simply no reason to tie together multiple processors. Despite Windows best efforts, our CPU's still spend most of their time waiting for something to do.
Dennis Dumont
"""
The direction of computing is clear and key developers are moving into newer virtualization approaches and other projects.
"""
Translation: The developers have found new shiny objects to play with and are going to drop this to play with something new.
Remember that OSS is mostly about developers scratching an itch. Once that itch is scratched, if a new shiny object is put in-front of a developer, chances are they'll drop what they're doing to pursue the new thing. As seems to be the case here.
i.e. New is fun, maintenance is boring, boring sucks, do something new.
Wrong.
.NET and get experience with that environment, as now that MS has declared foxpro dead, they aren't ever expecting to get another foxpro job. The only alternative left to companies with "legacy" foxpro code is to completely re-write any application in that language in a different one (not a small task).
MS regularly end of lifes things. Just recently the EOL'd foxpro. Sure its a crap language and a crap environment, but I know 5 people personally who are frantically trying to teach themselves
You can still get the openMosix code, if you had openMosix experts you could still fix things and move forward. If you have an existing system on openMosix you can look for a different solution and move to it or keep your system on the existing code. I really don't see how this is any different than MS calling for an EOL of Windows NT. When they do that you are forced to invest tons of hours and money buying new systems, developing a migration plan, deploying the new system, training users on it... It is no different in Open source or closed source, when vendors decide they aren't supporting you anymore, it costs you money.
Vendors regularly leave users out in the cold, both closed source and open. Only difference is, if a company wanted to pick up openMosix they certainly could. They could provide support, ongoing development, whatever. When MS EOLs something, your only choice is to take whatever MS gives you.
I have been following openMosix for many years and, to be honest, the development team was never much good. OpenMosix worked best shortly after it was forked from Mosix, and it was down-hill ever since - about 10 years now! The latest stuff for the 2.6 kernel never worked at all. That said, this cluster-level kernel-hacking is probably just too hard to do right, unless you were to start from the ground-up. Plan9 anyone?
I could maintain it. I have 7 to 10 coworkers who could maintain it. At my previous place there was one guy who could have maintained it. At the place before that, there were over a dozen people who could have maintained it.
.net/c# guy you know. Most people who could maintain Mosix would not tolerate such work. They'd look down on it like a typical C++ developer looks down on HTML or Visual Basic development.
I would in fact maintain it if I cared. I don't care.
BTW, I have doubts about the
Times like this make me realize that the end result of capitalistic software and open source software is really naught if you are on the losing end. If nobody likes your work, you are not going to be funded, and that's really what seems to be happening here.
The premise for shutting down the project is correct. Multiple cores all but eliminate the need for the most extreme clusters. Throw PCI-X graphics cards into the mix, and you have even that much more computing power. That's not to say that there aren't applications that require clustering, but, those who make those applications probably are going to wind up writing their own distributed processing framework anyway that is tailored to their needs.
Sometimes the turtles are just destined to be soup.
This is my sig.
Was a switch to 2.6. I personally was using it in 2.4, however, when 2.6 rolled out, OpenMosix wasn't going to support it for some time. This caused a lot of users to stop using it, because for NOW, there wasn't really a way to justify staying on 2.4, when the responsiveness of 2.6 was so much better.
I see now that they have an alpha version out for 2.6.
Note that 2.6.0 was released in 2003.
The article summary was certainly an eye grabber... but, the truth is, I've deployed quite a few linux HA and load balancing clusters. I have also installed a couple openMosix clusters. While it may be sad that openMosix is closing, the vast majority of clustering cannot be handled by openMosix. It is designed as a parallel processing cluster. I would say 99% of clusters are of the HA/load balancing variety. IE, I've got 3 web servers and I want to distribute the load between them. openMosix cannot do this, it isn't designed for it. Or I have 5 DB servers and I want to distribute load/perform replication. again openMosix does not do this. It is a "processing" cluster. IE I have this huge data set, and an application which will split up that data set and do some processing on it. Think SETI@home except, you don't want to send it to people's homes, you just want to run a single process which will send jobs off to other nodes for computing. The only thing I ever successfully used openMosix for was a compile cluster, and for that it was nice, but even for regularly compiling KDE, it wasn't much worth the effort to get the cluster running for the time it saved in compiling.
At the time I used it it couldn't migrate web server processes or db server processes, so it was useless for what I do most of the time.
As usual, people are posting replies without any clue about the actual situation (or at least the claims of important people involved)
See http://mulix.livejournal.com/199931.html
"Now the real project can get the credit it deserves. I hate it when people steal credit. It was so annoying to read interviews where it was claimed that behind openMosix are years of research, when all this research was actually behind MOSIX."
and they lack the means or motivation to continue
See what happens when you *stop* imagining a Beowulf Cluster?
Table-ized A.I.
Some utility bits of open source of course do not need a lot of maintaining and reach full maturity pretty early and only require the odd tweak for hardware compatibility, for those projects maintaining a team is difficult, logically speaking those projects get pick up and carried by another open source project that can run them as a side line.
Chaos - everything, everywhere, everywhen
Guys who used to develop BProc now are focusing their efforts on http://xcpu.org/
Geezuus, it's not like OpenMOSIX is unusable as is, or that there aren't alternatives. For that matter, while coding one's own cluster controller isn't trivial, it isn't string theory either. Our shop has released (eg. given away) two schedulers, and we've got another that's stayed in house. When I've strolled the booths at the SuperComputing conference, it seems that every other university is giving away their own cluster controller.
OpenMOSIX is neat, but it ain't the end all be all, and it's been my experience that any shop that's serious about running a cluster manages to find/attract someone with the chops to get it up and running. Can just any elementary school pull one together for "free"? Maybe not. For them, there's Pooch or AppleSeed.
Luke, help me take this mask off
Basically what we (the community) has figured out is that SSI featuresets should not be implemeneted in the OS layer, but below it. Look at the SGI Altix technology. Or large Unisys machines. Or that hyper-transport happy monstrosity that Cray is building. They have special low-level firmwares running on the I/O processors that are doing in low latency, tuned hardware what *Mosix was trying to do from Ring 0 on the nodes.
Using various ISA interfaces (MPI in the low end, or Hypervisor abstractions like Xen, etc. etc.) you can run many guest OSs in the space as needs require, and localize the shared-memory-ness as required to get maximum threading benefit with the lowest total latency you can tolerate. All this with minimally modified guest OSs in which to run the code. This is a much better situation then heavily modified kernels pretending to be a single system image (and then having to worry about forking/threading/VFS issues and propogation of that stuff).
On the flip side, grid technology and speciality message-passing libraries fill out the feature set for more embarassingly parallel problems that need lots of CPU and RAM... you have the luxury of spending time and money coding your applications for that environment if you are CPU limited.
Mosix doesn't have much use anymore as a general purpose product. Either it's too heavy-weight (and drowning in syncro overhead) and we should be relying on firmware/hypervisors that are customized for the hardware, or it's not necessary because we can handle the load balancing at a higher level.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Most Beowulf clusters run parallel codes written to use the Message_Passing_Interface (MPI). MPI programs really don't want to be migrated to different nodes while they're running, so load management is achived through schedulers such as Grid Engine, TORQUE, and others. These schedulers avoid the need for process migration by preallocating the resources (compute nodes) in advance, and prevent the load imbalance from happening in the first place. openMosix waits for the imbalance to slow down the computation before it migrates a process to relieve the problem.
If you check the archives of the Beowulf mailing list, you'll see that while the Beowulf community knows about openMosix, very few Beowulfers use it.
Video processing is not done through multi-processing with shared memory. It's done in batch, in a grid-type environment.
Weather prediction almost certainly uses special-purpose math libraries (ScaLAPACK, etc.) in a MIMD environment.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Let me explain the reason for their decision in a sane way as I see it.
*MOSIX was supposed to provide an EASY way of doing clustered worth. Low over head in terms of coding and administration. It was aimed at MODERATE clusters not massive beasts as it lacked performance/efficiency. While two extra machines may be worth the lower overhead two hundred probably are not so the immense clusters used other methods.
Advanced in computing, multiple cores and so on, have killed this low-to-medium cluster market NOT clustering as a whole.
Yes there are tons of things that still need clustering, think web data for example for a new one, but they are large and even larger. They need performance and so *MOSIX is not what they are looking for.
In other words the market for *MOSIX is effectively dead thus the project is joining it.
You start the project in the first place because you have a unique solution to a given real-world problem.
... but that would never have been apparent if it wasnt tried.
.. but at da club, its not working out that way. Thankfully, we can toss the lime green shirt and try something different, because we are non-commercial.
.. are looking at the story with their commerically-oriented-hat on. If that is you, then you shouldnt be working in science or computers - you should be out selling mobile phone ringtones, Celine Dion records, yo-yo's, insurance, timeshare condo plans, roller skates, lottery tickets, etc, etc, etc. If that is you, then you deserve to end up with the fat'n'ugly chick in the lime green shirt, simply because the advertising banners plastered all over the wall TOLD you she was the best choice.
Others may have different solutions to the same problem, and you are all free to attack it in your own way. In a totally free environment, you can determine the best solution to the problem using proof-by-mindshare.
As time moves on, the landscape changes, and some/none/all of your assumptions about the problem domain that drive your solution get challenged.
If it appears that your solution is no longer relevant, and that other methods work better in the real world, then your project can successfully conclude, and you can move on to the next big thing. In this case, OpenMosix can see that it's solution to the problem is not the ideal way to go, as evidenced by the fact that MPI, load balancers, (insert other solutions), tend to be more applicable to most real world problems
In a way, an open source software development is a test of a hypothesis. You dont measure success just by proving the hypothesis - you can also disprove it (or spawn a new one), and still claim success.
If this had been a commercial / proprietry project, then everything would be different - there would be egos and money on the line, so the motivations for doing the project in the first place are very very different. If OpenMosix was commercial, higher ups in the company would be moving the goalposts to suit themselves, spending money on advertising and kickbacks, and putting effort into forcing it into sitations where it wasnt the ideal answer. The resultant mindshare and marketshare in a commercially driven enviroment yields sub-optimal solutions - its based on which solution has the best political backing and advertising budget, not the one that best fits the problem.
See, its like this - to an opensource mindset, the hottest person in da club is the one that gets _given_ the most phone numbers. To a non-opensource mindset, the hottest person in da club is the one who can _buy_ the most phone numbers. Someone thought that the flouro lime green shirt might be a good idea
The sort of people who read the headline of the story and see it as a bad thing, a negative thing, an anti-FLOSS thing
Thank goodness open source allows a project to go from conception to conclusion for all the right reasons.
So here's a personal anecdote: Microsoft, Inc. held a free training session/love-in for devs and wannabee devs at a vacated movie theater in Bellevue, WA. It was ~2003 and I was one of the wannbee-devs-in training in the audience. Bellevue is maybe five miles from the "promised land" of Microsoft's RedWest campus and One Microsoft Way and MSFT managers were supervising the proceedings. I recall some discussion of extending Office 2003, some interesting demos of Visual Studio, and a lovely parting gift of an Intel webcam, which I still have. (thanks, guys!)
An older grizzled bearded guy stands up during one of the Q&A's, his voice tinged with injury: "...but what plans do you have for FoxPro?! Some of us spent a lot of time building these skills." Answer from a Microsoft PM presenting in front of his colleagues and managers: ~"I don't think there are specific plans, and it's very unclear whether that product will be developed further." Followup: "[insert whining here]". Answer to the followup: ~"I've tried to give you a pretty honest answer about where VFP is going, and my suggestion would be to look at growing your skills with .NET if you're interested in developing for MSFT platforms."
I'm not sure how much clearer it gets than that. The writing has been on the wall for VFP for years and years now, and you would have to be borderline negligent as a dev not to realize that. A benefit of playing with proprietary frameworks is that the corporations that own them tend to be pretty up-front about their future. Around 2002 I was learning faux-OO VBScript/ASP (lol), but I quickly recognized that path was a dead end. Developers cannot afford to fall asleep at the switch. Anyone who was surprised by the death of ASP or FoxPro wasn't at all serious to begin with.
any enterprises relying on openMosix to run their operations are in a pretty bad spot right now, i agree. their enterprise quality support has evaporated.
of course, this would be a completely different story if it were a close-source program they were relying on... because... ?
companies go out of business, too. and when their close-source programs are no longer supported, *no one* has the ability to pick up where they left off.
To put it bluntly, CSS projects that lose their core development teams don't exactly fair any better do they?
Probably they do. How much of the original development team do you think is still left for things like Windows NT(/Vista), Office, Solaris, NeXTSTEP(/OSX), etc ?
OSS projects tend to "die" when they aren't popular or "interesting" anymore - and the OSS world can be fickle. CSS projects, tend only to die when they aren't *profitable* any more.
It's a hell of a lot easier to hire more programmers for your niche-but-highly-profitable CSS product than it is to get OSS programmers working on a codebase that is no longer popular or "interesting".
Having read the comments I think people didn't actually read had been put on the announcement page, mostly about SSI losing some of its value in the wake of faster and bigger machines.
To proclaim this is an object of example for the failure of OSS projects - my god, what a leap of stupidity that is. In reality, i'd be claiming the exact opposite in that it was one of the few SSI's to get into real world situations and be used quite heavily - which means it was actually very successful. It's a project that made it through a complete life cycle, birth, success and death. I would say its probably dying slightly before its time, but the authors reasons are quite sound in reality.
This is something you just don't often see in the CSS world - companies make something and want/need to make money off it (indefinitely if possible), so not only do they bring a new version with more bells and whistles every year (even when the prior version only had 10% of its bells and whistles used) they're continuously pushing to continue making money off the product, and that often means "never expire the product, morph it if we must, but every coder hour is less profit - sales are dropping, NEW VERSION TIME!". Wow, that was even less cynical than I normally am!
"has had clustering for ~15 years"
In Soviet Russia, MOSIX Opens You!
I always laugh when people talk about "clusters" in which the members have no independent I/O path to the disk drives. Back in the days when I worked with VMS clusters (1985!), we had independent CI and later SCSI connections from each CPU to the disk farm. Even the disk controllers were redundant with failover. If any machine and any disk controller was up, you still had access to everything. There were even some military-grade installations where the cluster members were a few miles apart and connected by fiber. Nothing short of an ICBM would take down the cluster, and even then it would need multiple warheads to wipe out all the locations. Anything less, and the whole thing would still run as if nothing happened.
Installing software on one system meant it was installed everywhere because all of the machines booted from the same system disk. The remote help desk consisted of a person who would occasionally deal with telecomm issues and the very rare swapout of nearly-indestructible VT-100 terminals.
In today's world, I see too many "imitation" clusters in which a single failure takes down the whole thing. It's hard to believe that Digital lost the war to Intel and Microsoft.
IT was a fabulous career choice back in the 1980's. The high cost of everything forced people to make serious commitments to vendors and [gasp!] employees who ran the data center. Today's world of disposable commodity hardware/software/people may be faster and cheaper, but the bugs and downtime would be unacceptable by 1985 standards. Here in modern times, we expect much more than 1980's IT could deliver. But we certainly don't expect with the same consistency.
By that time, though, I'd already come to be uncomfortable with OpenMosix for two reasons:
- The develpers seemed to be completely uninterested in security issues. This is something that was less of a concern in The Good Old Days, but really should be on the frontest of burners now.
- The OpenMosix kernel code was so large and stuck its tentacles into so many places, there was no way it was ever going to make it into the mainstream kernel. This meant that, if any changes were necessary, we were either at the mercy of the OpenMosix developers or we were going to have to maintain them ourselves.
All of that being said, I loved OpenMosix when it worked. It's a great idea. I came out of a VAX/VMS cluster background, and OpenMosix was a serious step in the direction of resurrecting that functionality in open source. I'd like to see someone take over OpenMosix, make security a priority, and work to break it into small, digestible lumps that could slowly be merged into the mainline kernel.The main reason projects like this are floundering is that the ROCKS project is becoming the defacto standard for cluster setups.
Also, companies like IBM and HP love to push their own proprietary setups.
As well, there are some good commercial products that add lots of well supported tools.
For example MOAB
Maurice W. Hilarius Voice: (778) 347-9907
Maintaining out-of-tree patches is painful. I was part of a small team doing exactly that, with extremely filthy hacks into the scheduler even. I know of what you speak, from personal experience. Dealing with old kernels is icky too.
That all comes under desire though, not ability. ("desire" as in "I'd like to do this", not "I'd like somebody else to do this")
I've known quite a few people with the ability. I expect that any of them, including myself, would actually maintain Mosix if either:
a. we had strong personal reasons to want Mosix
b. we got paid decently
For those of us with the ability, all it takes is the desire -- which I'm not seeing. Mosix just isn't worth the trouble.