AirBNB Opensources Chronos, a Cron Replacement 72
First time accepted submitter victorhooi writes "AirBNB has open-sourced Chronos- a scheduler built around Apache Mesos (a cluster manager). The scheduler is distributed and fault-tolerant, and allows specifying jobs in ISO8601 repeating notation, as well as creating dependent jobs. There's also a snazzy web interface to track and manage jobs, as well as a RESTful API."
It's under the Apache License as seems to be the fashion with businesses releasing software nowadays. It looks like it might be useful if you have to manage a lot of machines with interconnected recurring processes; I know I wish this had existed a few years ago.
Re:Unnecessary. (Score:5, Insightful)
"distributed and fault-tolerant" and "dependent jobs"
All things cron doesn't do.
Re:Unnecessary. (Score:4, Insightful)
Which is exactly why its not a cron replacement. Anybody who think this == cron had NO clue of what they were doing when they were using cron, and still doesn't.
... cron on steroid ? (Score:2)
Which is exactly why its not a cron replacement.
Would "Cron on Steroid" satisfy you?
Re: (Score:1)
Re: (Score:2)
This is basic set theory.
If ProductB does *at least* everything ProductA does then it can be a ProductA replacement.
If ProductB does more things, that's not relevant to its use as a replacement.
Only if ProductA has features that ProductB cannot duplicate does ProductB fail to be a possible replacement.
So what features does cron have that this does not?
Re: (Score:1)
I know, chronos is so great, it will launch your app even if the machine is down itself! It'll supply the power that comes stored in a special file to do it.
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
Because anything new is bad.
Keep it simple, stupid (Score:5, Insightful)
Re: (Score:3, Interesting)
Here are some even simpler and securer alternatives:
http://code.dogmap.org/runwhen/
"runwhen is a set of utilities for running commands at particular times. With these tools, you can perform calculations on time values in various ways, and use those calculated times to determine how long a process should sleep before performing some task."
http://ohse.de/uwe/uschedule.html
http://untroubled.org/bcron/
"This is bcron, a new cron system designed with secure operations in
mind. To do this, the system is divided in
Re: (Score:2)
I'll give you simpler (potentially), but could you explain why you say these are more secure?
Re: (Score:2)
KISS is no guarantee of security. In what way are they simpler and thus more secure. While complexity introduces more opportunity for insecurity, inverse is not necessarily true. If you are just asserting that simple software is somehow better then you need to back that up.
The statement made was that the examples listed above were more secure, which implies familiarity with them. If you are just talking in generalities that isn't actually very useful.
Re: (Score:2)
Please remember the first rule of skepticism, the person to make the claim is the one who should justify it. Simply telling me to go look at bcron's implementation page doesn't do that. Especially since four different schedules were mentioned.
You (I presume you) are telling me that Chronos is insecure, you need to actually prove that. What are the vulnerabilities, or are you just speaking in vague generalities based on some philosophical belief?
Re: (Score:2)
OK Fair enough, though you could have been more clear. That being said, you still haven't actually justified your statement why any of the things you mentioned are more secure than cron.
Nothing to do with OpenGL (Score:2)
Re: (Score:2)
I wonder what the Khronos Group would have to say about the name of this project.
They might snicker at the latinization of the name of the Greek god?
Where do I start ... (Score:5, Interesting)
b) If anything, it's actually the Khronos group which should be cowering in shame, since they are misspelling the name Kronos.
c) Latin doesn't even have a 'ch' diphthong, except when transliterating Greek words (http://en.wikipedia.org/wiki/Ch_%28digraph%29#Latin)
d) The latinization of Kronos would have been Cronus, not Chronos.
e) Strictly speaking, Kronos is a Titan, not a Greek God (except in the looser definition of Titans as deities in general)
Fail.
Re: (Score:2)
Re: (Score:2)
Nothing.
Chronos, and Apache License thoughts (Score:2, Informative)
Chronos looks very yummy. Over the years I've deployed a number of schedulers (launchd on OS X and Quartz come to mind) but cron always comes back because it's so available and flexible. While it has many shortcomings, it's reliable and easy to grasp. Chronos, with the ISO 8061 job scheduling syntax will have an edge over the nasty mess of launchd, and the cron-like extensions and idiosyncrasies in Quartz. The first glance at the GitHub pull shows clean code. I'm looking forward to taking it through it
Re:Chronos, and Apache License thoughts (Score:5, Insightful)
It's not a matter of fashion, it's a practical reality. No sane business wants to be the who defends the GPL in court. It'll be expensive and messy, and if the result goes against GNU/GPL "accepted wisdom", it will be a PR nightmare.
Nonsense. The GPL is rock solid.
You know how you can tell? It survived the heyday of Microsoft's monopoly without a court challenge.
If Microsoft was afraid to tangle with the GPL at the height of its power, you better believe smaller fish will have an even harder time of it.
No sane business wants to find out what the term "punitive damages" means when trying to violate the GPL for commercial gain.
Re: (Score:2)
GPL is not a TOS -- if you reject the GPL but redistribute anyway, you've violated your federal Copyright laws which are often very nasty.
Copyright is the GPL's enforcement as you have none of the rights the GPL gives you without agreeing to it.
Re: (Score:3)
Well, even If he doesn't, I do!
Re: (Score:2)
No, but a lawyer should consult with a software engineer before setting out to design software, rather like a software engineer should consult with a lawyer before setting out to apply legal constraints to his creation.
Re: (Score:2, Interesting)
I believe I understand the GPL, all I had to do is to read it. People try to mystify you as "you have to be a lawyer" to read a license if its more than 2 lines. Well nope. The GPL is very clear and uses simple words. It has nothing to do with the gibberish from EULAs, and I guess, that's on purpose.
Re: (Score:2)
You have to be a lawyer to know what the ramifications are, whether it holds up in court, and whether it means what you think it means.
Common sense and the law only overlap some of the time.
Re: (Score:2, Insightful)
What are you talking about? The GPL is both remarkable and robust because it is written in plain english not in twisted legalese. It is easily understandable by developers who take the time to sit down and read it. I encourage you to do that now, maybe you'll change your tune.
Re: (Score:1)
Did they ever straighten out that whole linking ambiguity?
Re: (Score:2)
Since my genuine question wasn't answered, but was modded down, (doubtless by some Stallmanite zealot) I'm just gonna go ahead and assume that's a "No."
Not exactly a great example of the GPL's "robustness" there.
Re: (Score:2)
I've met quite a few developers who seem incapable of understanding literate text, so I can't say your assertion is necessary.
That said, the GPL is quite easily readable. For people who don't understand some of its implications, there's lots of online examples to Google just like learning how to program in the first place.
Re: (Score:1)
You know how you can tell? It survived the heyday of Microsoft's monopoly without a court challenge.
That's kinda like saying that I can smoke weed legally because I haven't been busted yet.
Re: (Score:2)
That's kinda like saying that I can smoke weed legally because I haven't been busted yet.
More like saying you can smoke weed without legal worries because the US government hasn't busted anyone yet.
Re: (Score:3, Insightful)
Stop spouting nonsense. Using GPL software such as a cron scheduler would in no way result in a company going to court.
Re: (Score:2)
True. For example: While Apple developed launched and uses it pretty exclusively, they haven't removed cron from OS X. And if you put something in the cron tab, it'll run as expected.
Re: (Score:2)
s/launched/launchd/
I love autocorrect... except when I don't.
Re: (Score:2)
While Apple developed launchd and uses it pretty exclusively, they haven't removed cron from OS X.
That's rather moot as Apple's cron isn't covered by GPL. They use vixie cron which is BSD licensed.
Re: (Score:3)
Thanks all for your comments.
I'm not arguing for or against the *GPL licenses myself. All I'm saying is that I've experienced enough funding or acquisition due diligence processes to have heard from the acquiring/funding party's counsel that *GPL code must either be replaced with a viable alternative, or that the deal might be called off. Other people have had other experiences, and of course there are companies (e.g. Percona, Red Hat) who are doing well with it.
The ventures in which I've been involved (o
Re: (Score:2)
By the way -- I don't think legal/business concerns are about the solidity of the license. The concerns are about the aspects that could be hostile to business and investment.
Remember that not everyone wants to make their bacon by offering consulting or other professional services.
Some people want to build and offer finished, successful products that some enterprising licensor may feel are worth pursuing in court over some obscure clause, very much like patent trolls and other IP holders of dubious value g
Re: (Score:2, Informative)
Like you said, it's case-to-case. And until *GPL is contested in court we won't know for sure.
At Very Large Retailer I engaged Bruce Perens and his team (circa 2006) and we went through education. It paid off. Irrational fear of the GPL was squelched.
At other deals, especially startups, i try to advise them to find the best tech first, then worry about the license, and whenever possible to just avoid *GPL in their products to preempt potential issues. They will have a full plate if they end up in a fund
Re: (Score:3)
And until *GPL is contested in court we won't know for sure.
Come on, this is ridiculous. The GPL has been found perfectly enforcable [wikipedia.org] in many cases in many jurisdictions, with some eventually going to courts. The reason that most cases are settled out of court comes from the fact that defending a GPL violation is such a hopeless endeavor in most situations.
Re: (Score:2)
I'm not arguing for or against the *GPL licenses myself. All I'm saying is that I've experienced enough funding or acquisition due diligence processes to have heard from the acquiring/funding party's counsel that *GPL code must either be replaced with a viable alternative, or that the deal might be called off.
While I understand that this can happen, it effectively means you are advocating against using the GPL not based on the actual content of the license, but because of the (quite likely irrational) behavior of a third party.
Re: (Score:2)
While I understand that this can happen, it effectively means you are advocating against using the GPL not based on the actual content of the license, but because of the (quite likely irrational) behavior of a third party.
If it makes business sense to use *GPL I'll be the first one to advocate it. If there's no reason for it, and an Apache licensed component is available, I'll advocate that. It all depends on the business model and whom I'm advising. If I advise against using code under any particular license is precisely because the license content could have an adverse effect on the business.
I've licensed my own code under GPLv2 when it made sense, under Apache at times, and under BSD most of the time. If we're talking
Re: (Score:2)
The GPL has been already effectively tested in court, repeatedly. Unfortunately, intellectual property lawyers are scared of the GPL. I discussed it with one 8 days ago: they consider it dangerously viral. I'm trying to arrange a lunch so we can sit down and go over the details of it, so they can understand why I much prefer to use it and I can give examples of companies who pretend to be open source but drive engineer like me nuts when their commercial versions of their "open source" tools break and we can
Re: (Score:3)
I can't easily re-use the work on other projects because I've _already signed_ intellectual property licenses with a previous company under an Apache license
Out of interest, can you link to the clause in the APL2 license that causes this difficulty? It's not something I heard before and something I hadn't considered.
Re: (Score:2)
Re: (Score:2)
Seems like Chronos is yet another 'Let's re-invent the wheel' project to create a scheduler'. Projects such as Grid Engine do the same thing, and have been doing it very well for a very long time. There are also API interfaces to Grid Engine such as DRMAA (www.drmaa.org) so you can incorporate it into your applications as well.
Grid Engine is not longer open source or free. They're charging $500/processor (!) for the latest version and have hidden the previously free versions. You might be able to find the earlier versions in other places on the net, but not through Oracle.
But since Grid Engine is not written in Java.....the Java guys have to go and write yet another scheduler....that does less, is less scalable, etc...
As you mention above Grid Engine supports DRMAA, so it works very well with Java from the controller side. The tasks need to be in scripts though, which is a pain.
Freshmeat? (Score:1)
Seriously, why isn't this on freshmeat instead of /.? How the fawq is this news??
Re: (Score:2)
Just renamed to freecode ... but yes, its pretty useless now compared to when it was freshmeat.
Control-M (Score:2)
I'm curious to see how this stacks up against BMC's control-m product. These schedulers are useful when managing 1000's of machines running interdependent jobs.