Slashdot Mirror


AirBNB Opensources Chronos, a Cron Replacement

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.

15 of 72 comments (clear)

  1. Keep it simple, stupid by manu0601 · · Score: 4, Insightful

    This is not a replacement for cron. On an isolated machine, it would be foolish to trade cron for such a complicated beast. On many nodes, I understand it has benefits.

    1. Re:Keep it simple, stupid by Anonymous Coward · · 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 into several seperate programs,
      each responsible for a seperate task, with strictly controlled
      communications between them. The user interface is a drop-in
      replacement for similar systems (such as vixie-cron), but the internals
      differ greatly."

      http://www.superscript.com/trigger/index.html
      "The trigger package contains tools for running programs on demand, invoked by external programs via data written to a fifo."

  2. Re:Unnecessary. by viperidaenz · · Score: 5, Insightful

    "distributed and fault-tolerant" and "dependent jobs"
    All things cron doesn't do.

  3. Chronos, and Apache License thoughts by ciurana · · 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 its paces on OS X and Linux.

    Unknown Lamer wrote:
    > It's under the Apache License as seems to be the fashion with businesses releasing software nowadays.

    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. The Apache License strikes a good balance between permissiveness and restrictions: less restrictive than the *GPL, less permissive than BSD or MIT. I advise various companies (startups, public, etc.) and venture funds on this regard. We recently advised someone using mongoDB (GPL3) to ensure that they built a very flexible abstraction layer between the app and the database that, by design, would allow swapping to something different (e.g. Cassandra, CouchDB, etc.) with a less restrictive license than *GPL and with similar characteristics. That single item, mongoDB's license, could be the deciding factor between getting funding/being acquired or not.

    Cheers!

    pr3d

    --
    http://eugeneciurana.com | http://ciurana.eu
    1. Re:Chronos, and Apache License thoughts by Anonymous Coward · · 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.

    2. Re:Chronos, and Apache License thoughts by Anonymous Coward · · 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.

    3. Re:Chronos, and Apache License thoughts by ciurana · · Score: 2

      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 (or the adoption projects that I've supervised, like the official use of open source software at the largest company in the world) have always had a desire to avoid the *GPL as a common denominator. It's accepted only if there is no alternative for the business, or if there is enough education among the developers that the code should not be modified and redistributed in any form, and so on and so forth. You all know how that works.

      If the *GPL works for your business model, more power to you. If you find investors/acquires willing to buy your *GPL-reliant product or service -- great! I'd love to hear about that experience too.

      Cheers!

      pr3d

      --
      http://eugeneciurana.com | http://ciurana.eu
    4. Re:Chronos, and Apache License thoughts by Anonymous Coward · · 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.

    5. Re:Chronos, and Apache License thoughts by Anonymous Coward · · 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.

    6. Re:Chronos, and Apache License thoughts by Anne+Thwacks · · Score: 2
      Do you also advocate that lawyers who can't understand source code shouldn't use software?

      Well, even If he doesn't, I do!

      --
      Sent from my ASR33 using ASCII
    7. Re:Chronos, and Apache License thoughts by hweimer · · Score: 2

      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 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.

      --
      OS Reviews: Free and Open Source Software
    8. Re:Chronos, and Apache License thoughts by Dr_Barnowl · · Score: 2

      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.

  4. Re:Unnecessary. by interval1066 · · Score: 2

    Yeah. Why use squid when you can just stuff client requests in a hash table, too...

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  5. Where do I start ... by recrudescence · · Score: 4, Interesting

    a) Chronos is actually correct (to the extent that the most accepted transliteration for the greek letter chi is 'ch' rather than 'kh') and means 'time'.
    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.

  6. Re:Unnecessary. by kangsterizer · · Score: 3, 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.