@DevOpsSummit Authors: Liz McMillan, Pat Romanski, Elizabeth White, Yeshim Deniz, Mehdi Daoudi

Related Topics: @DevOpsSummit, Java IoT, Linux Containers, Containers Expo Blog, @CloudExpo

@DevOpsSummit: Blog Post

Yet Another Cloud OS? By @TrevParsons | @DevOpsSummit [#DevOps]

Before YARN there was another resource negotiator, Mesos

Mesos, Yet Another Cloud OS?

YARN stands for Yet Another Resource Negotiator. According to Hortonworks, it is "the architectural center of Hadoop". YARN is the stack layer that allows multiple processing engines, with varying workloads (streaming, SQL, batch, machine learning etc.) to run on top of the Hadoop file system, HDFS.

Before YARN there was another resource negotiator, Mesos

(Hence the "yet another" in YARN)

Mesos was originally documented in a research paper, followed by an Apache project, and now commercialized as Mesosphere - who are building out an ecosystem around Mesos.

Is Mesos yet another cloud OS?

In fairness to Mesosphere, their marketing doesn't stray into the hyperbole of calling Mesos a Cloud OS (maybe a data center OS or a distributed systems OS). This makes sense because it would probably confuse people. However, they do talk about running your infrastructure "like one big computer" and running distributed applications "as if they were apps being launched on a laptop." It seems clear this is a hugely ambitious endeavor by a company who have the vision to match.

In the past I've compared the hype around Docker Inc. to the fuss in 2012 around the billion-dollar acquisition of Nicira by VMware.

Now it seems clear that Mesosphere is a better candidate to wear the Nicira Most Disruptive Startup crown.

If Mesos is for resource scheduling across a cluster - how does this lead to the OS analogy?

The answer starts with the description on the Apache Mesos site, where Mesos is described as a distributed systems kernel, drawing parallels to the Linux kernel (in the same way that the Linux kernel gets confused with GNU/Linux OS). Running on this kernel is a set of frameworks (daemons or services in the OS-world) that allow people to build applications. These include Marathon (distributed init), Chronos (distributed cron), and Hadoop (distributed file system).

The kernel analogy makes more sense when you view Mesos as abstracting "CPU, memory, storage and other compute resources away from machines (physical or virtual)."

Mesor Architecture

The architecture is shown above, so I won't repeat the description of how this works in terms of masters, slaves, schedulers etc. The diagram is lifted from the Apache project site with has a pretty clear description (which you can see here).

The concept of resource offers is the key to the architecture's efficiency.

By allowing the frameworks to decide which resources to consume - subject to a plugin module in the master that defines the policy for applying (fair-sharing, Dominant Resource Fairness as per the DRF paper etc.) - multiple frameworks can compete for cluster resources.

Looking forward

In my next blog post I will focus on how to write a framework, including the role of the scheduler, executor, and how they are both implemented.

There is a ton we can cover in this area. In future posts I'll dive into Google's Kubernetes (with it's promise of "elastic distributed microservices") and why the Mesosphere team were so quick to ensure it was seen as being part of the Mesos ecosystem rather than a competing framework (embrace and extend maybe?).

I'd also like to why Mesosphere is working so closely with a customer like HubSpot but don't seem to have embraced Singularity (at least not yet). Along the way we'll move from the 20,000 ft view and get stuck in the weeds: we'll explore isolation with LXC vs lmctfy, how to go about securing access to your cluster, how to write Mesos frameworks, and of course we need to look into how you make Singularity's log watcher play well with Logentries!

More Stories By Trevor Parsons

Trevor Parsons is Chief Scientist and Co-founder of Logentries. Trevor has over 10 years experience in enterprise software and, in particular, has specialized in developing enterprise monitoring and performance tools for distributed systems. He is also a research fellow at the Performance Engineering Lab Research Group and was formerly a Scientist at the IBM Center for Advanced Studies. Trevor holds a PhD from University College Dublin, Ireland.

@DevOpsSummit Stories
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
Digital transformation is about embracing digital technologies into a company's culture to better connect with its customers, automate processes, create better tools, enter new markets, etc. Such a transformation requires continuous orchestration across teams and an environment based on open collaboration and daily experiments. In his session at 21st Cloud Expo, Alex Casalboni, Technical (Cloud) Evangelist at Cloud Academy, explored and discussed the most urgent unsolved challenges to achieve full cloud literacy in the enterprise world.
Daniel Jones is CTO of EngineerBetter, helping enterprises deliver value faster. Previously he was an IT consultant, indie video games developer, head of web development in the finance sector, and an award-winning martial artist. Continuous Delivery makes it possible to exploit findings of cognitive psychology and neuroscience to increase the productivity and happiness of our teams.
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting challenge of adapting related cloud strategies to ensure optimal alignment, from managing complexity to ensuring proper governance. How can culture, automation, legacy apps and even budget be reexamined to enable this ongoing shift within the modern software factory? In her Day 2 Keynote at @DevOpsSummit at 21st Cloud Expo, Aruna Ravichandran, VP, DevOps Solutions Marketing, CA Technologies, was joined by a panel of industry experts and real-world practitioners who shared their insight into an emerging set of best practices that lie at the heart of today's digital transformation.
The standardization of container runtimes and images has sparked the creation of an almost overwhelming number of new open source projects that build on and otherwise work with these specifications. Of course, there's Kubernetes, which orchestrates and manages collections of containers. It was one of the first and best-known examples of projects that make containers truly useful for production use. However, more recently, the container ecosystem has truly exploded. A service mesh like Istio addresses many of the challenges faced by developers and operators as monolithic applications transition towards a distributed microservice architecture. A tracing tool like Jaeger analyzes what's happening as a transaction moves through a distributed system. Monitoring software like Prometheus captures time-series events for real-time alerting and other uses. Grafeas and Kritis provide security polic...