Marathon 0.15: better stability, more metrics and improved web interface
For more than five years, DC/OS has enabled some of the largest, most sophisticated enterprises in the world to achieve unparalleled levels of efficiency, reliability, and scalability from their IT infrastructure. But now it is time to pass the torch to a new generation of technology: the D2iQ Kubernetes Platform (DKP). Why? Kubernetes has now achieved a level of capability that only DC/OS could formerly provide and is now evolving and improving far faster (as is true of its supporting ecosystem). That’s why we have chosen to sunset DC/OS, with an end-of-life date of October 31, 2021. With DKP, our customers get the same benefits provided by DC/OS and more, as well as access to the most impressive pace of innovation the technology world has ever seen. This was not an easy decision to make, but we are dedicated to enabling our customers to accelerate their digital transformations, so they can increase the velocity and responsiveness of their organizations to an ever-more challenging future. And the best way to do that right now is with DKP.
Marathon is the native container-orchestration and application platform for the Mesosphere Datacenter Operating System, and today we're proud to announce Marathon 0.15. The new release, which comes just two weeks after the release of Marathon 0.14, includes a number of new features and improvements around monitoring, user interface and performance.
Under the hood
Integration of Mesos fetcher cache
The v2 REST API now supports the Mesos fetcher cache. This allows users to configure a list of resource URIs that will be copied into the task sandbox prior to running the task, from either a local or external location.
We've added a number of important new metrics, including the number of tasks currently running and staged; the number of status updates that are queued and processing; and the number of app configuration updates that are queued and processed.
Task state tracking redesign
TaskTracker, the component that holds the task states, now uses an actor-based implementation, making Marathon more stable and predictable.
Optimized /v2/tasks (TXT)
Since some service discovery solutions poll this endpoint, performance is important: We've improved request rates by about 30 percent.
Changes to the threading model
We switched to a model with some fixed-size thread pools and thread pools that will only grow if too many threads have become blocked, reducing the number of threads under load.
Marathon now uses Accord, a modern approach to model validation that will produce better error messages.
Marathon web interface improvements
Perform actions directly from the Applications list
A new contextual dropdown menu in the Applications list gives access to the most useful actions (scale, destroy, suspend, etc.) without having to enter the detailed view of the application. You can also now perform, scale and delete operations on entire Groups.
The feedback dialogs have been completely redesigned to be clearer and more useful, with three color-coded severity levels: info, warning, and error. In addition, the action button labels have been rephrased for improved usability. Buttons that may lead to dangerous actions (such as "force scale") are also not preselected by default anymore.
The application details page now shows the health status breakdown.
We recommend using Marathon 0.15 with Mesos version 0.26.0. For more information and downloads, check out the following resources:
Docker, with tag v0.15.0