Chapter 8. Managing scheduled tasks with Chronos
This chapter covers
- Installing and configuring Chronos
- Creating scheduled tasks
- Observing task output and alerting on failures
In a traditional Linux operating system, the Cron daemon is responsible for time-based execution of commands or scripts, commonly referred to as Cron jobs. If you consider Mesos to be the “distributed systems kernel” as it’s described on the project’s website, Chronos is the Mesos equivalent of the Cron system: it handles time-based scheduling of jobs (tasks) on a Mesos cluster. If you want to have an arbitrary command run on the Mesos cluster, you need to specify the schedule and the amount of CPU and memory the job needs.
This chapter introduces you to Chronos, a popular, open source Mesos framework originally developed at Airbnb to handle its complex data analysis pipelines. It was designed to be highly available, to automatically retry jobs when they fail, and to be as flexible as possible: that is, to be a Mesos equivalent of the Cron daemon, and not simply used for data analysis.