At Mesosphere, we're big fans of containerizing the applications that run on our cluster for many reasons. Using containers makes it easy to deploy our services at scale, provides inherent isolation between services running on the same host and gives us much better utilization than using virtual machines to share our cluster. The latest release of Chronos provides the ability to launch Docker instances into an Apache Mesos cluster for batch processes, allowing developers to now run scheduled analytics using containers.
Mesos and Marathon have both had native Docker support for a couple of months now and have quickly become the most robust way to deploy containerized services in your datacenter. However, until now, there was no easy way to run containerized batch jobs in a distributed fashion in your datacenter.
With the release of Chronos 2.3.0 and Mesos 0.21.0, you can now easily schedule Docker containers to run ETL, batch and analytics applications in your datacenter. Chronos provides a distributed and fault-tolerant scheduler that runs on top of Apache Mesos. Jobs can be created via a graphical user interface or via an expressive REST API.
Launching jobs inside containers with Chronos allows you to distribute your job processing in a simple way that doesn't require manual setup on your cluster nodes. Chronos also allows easy creation of a dependency graph between scheduled jobs so that jobs that depend on the output of previous jobs only run if the previous job is successful.
Launching a Docker container is as simple as performing a POST request to the Chronos scheduler. Our newly updated tutorial demonstrates step-by-step how to accomplish this and our latest screencast provides a video walk through. Check out the full screencast below.
With Chronos and Marathon, you can now use Mesos to orchestrate all of your container infrastructure - from batch jobs to long running services! Download the latest Chronos and Mesos packages today.