Mesosphere to Incorporate Kubernetes into DC/OS

The announcement that Mesosphere is going to incorporate Kubernetes into DC/OS has generated a fair amount of buzz in the industry, with the consensus landing largely on the side that this is a sign that Mesosphere is ceding to Google’s open source software. I have a different perspective – namely, that this move is a sign that Mesosphere is focusing on their end users, and committing to providing the most flexible options to best suit their needs. As more companies move to the cloud from on-premises, or from an individual cloud provider to a multi-cloud environment, containers remain the current best level of abstraction.

Containers run just about everywhere, which helps to avoid certain levels of lock-in, and as much as it’s possible, they future-proof applications. Once you master managing and deploying containers, your deployment process becomes the best thing it could ever be…boring! No engineer wants an unpredictable, possibly chaotic deployment. Boring deployments are the best deployments, which is why it’s crucial to use the best tools possible.

Before you can start deploying containers in production, you need a container orchestrator that meets your needs. Container orchestration is what makes running containers in production useful. Orchestration tools are responsible for managing various aspects of a container’s lifecycle, including scheduling, deployment, updates, failover, health checks, and beyond. This move to incorporate Kubernetes has potential implications for any enterprise using or planning to use containers in production.

Let’s look at the products in question. DC/OS has an existing container orchestrator called Marathon, and it offers support for both Mesos and Docker containers. Marathon supports Docker and Mesos containers. While you’re probably familiar with Docker containers, you might not know about Mesos containers. Mesos containers started out before Docker, and are based on some of the same underlying technologies.
They use control groups and namespaces to manage non-Docker based applications. They are a great choice for apps that aren’t already using Docker. An example of this might be some operations tools, shell scripts, Go based application binaries, etc. Even outside of Docker containers, Marathon is still a great orchestrator for running any legacy applications, ops tools, or any other non-Docker based process.

Like Marathon, Kubernetes supports Docker, however, it also supports other containers. Kubernetes supports containers based on the OCI (Open Container Initiative) model. This means there’s support for Docker, containerd, rkt, Windows containers, and anything else based on OCI. Besides all of the technical aspects that make Kubernetes a great option, it also has an ever-growing community. Part of that community comes in the form of developers contributing to the project, and continuously adding new features. And the other part are the operations engineers that work with it every day. Having such an active community is an important part of any open source project. The addition of Kubernetes makes DC/OS all that much more appealing from my perspective.

Right now you can deploy all kinds of different applications using the DC/OS Catalog, which was called the Universe before version 1.10. Being able to deploy applications such as Cassandra, Spark, MySQL, Elasticsearch and more with the push of a button is powerful. Once Kubernetes is added it will allow you to choose the best container orchestration system for the given task. All this flexibility, combined with the ease of use of DC/OS makes it a solid choice when selecting a container orchestrator.

One of the things I like best about DC/OS is that both the CLI and UI are simple and intuitive. I’m curious to see how Kubernetes will be integrated. If it becomes a first class citizen and gains the level of polish that the rest of DC/OS has, then it’ll add a lot of value to DC/OS.
However, full integration would mean that all of Kubernetes features are available, including Windows containers. As of 1.9 DC/OS doesn’t support Windows so it’ll be interesting to see if the integration of Kubernetes pushes DC/OS forward, or holds Kubernetes back. In addition, if this means that the developers at Mesosphere will start contributing to Kubernetes, it will serve both tools well.
There are already close to 1400 contributors according to Github. I’d imagine that the added expertise from the Mesosphere developers will not only add value to Kubernetes but also show Mesosphere’s commitment to using and enhancing the best technologies available.

It’s still too early to tell what this will actually look like when implemented, but if you’re currently looking into container orchestration tools, keep an eye on how this shapes up. Both DC/OS and Kubernetes are enterprise-ready systems, so the combination has the potential to serve the widest audience possible. I can’t wait to test it out for myself, and when I do, I’ll be back to share my thoughts.

Written by

Ben Lambert

Ben is a software engineer with years of experience building web and mobile apps. He learned about DevOps some time ago, and hasn’t stopped talking about it since. In addition to DevOps, he’s passionate about information security, as well as virtual and augmented reality systems. When he’s not working he’s hiking, camping, or creating video games.

Related Posts

— February 7, 2019

Measuring DevOps Success: What, Where, and How

The DevOps methodology relates technical and organization practices so it's difficult to simply ascribe a number and say "our organization is a B+ on DevOps!" Things don't work that way. A better approach identifies intended outcomes and measurable characteristics for each outcome. Let'...

Read more
  • DevOps
— February 5, 2019

2019 DevOps and Automation Predictions

2019 DevOps and Automation PredictionsWe recently released our 2019 predictions for cloud computing and are doing the same here for DevOps and automation predictions.2018 was a great year for software, and DevOps falls somewhere on the slope of enlightenment on the Gartner Hype Cy...

Read more
  • DevOps
— January 17, 2019

Testing Through the Deployment Pipeline

Automated deployment pipelines empower teams to ship better software faster. The best pipelines do more than deploy software; they also ensure the entire system is regression-free. Our deployment pipelines must keep up with the shifting realities in software architecture. Applications a...

Read more
  • DevOps
— December 27, 2018

DevOps and Agile: Understanding the Relationship

Agile development used to be front and center in the conversation about software development. Now, DevOps has taken over the conversation. How do agile and DevOps relate? Both ideas began as ways to improve different aspects of software development. Agile embraced the changing nature of...

Read more
  • DevOps
— December 12, 2018

Getting Started With Site Reliability Engineering

Much has been written and discussed about SRE (Site Reliability Engineering) from what it is, how to do it, and how it's the same (or different) as DevOps. Google coined the term, defined the profession, and wrote the book on it. Their "Site Reliability Engineering" book covers the idea...

Read more
  • DevOps
  • SRE
— December 6, 2018

What DevOps Means for Risk Management

What Does DevOps Mean for Risk Management?Adopting DevOps makes the unfamiliar uneasy in two areas. One, they see an inherently risky choice between speed and quality and second, they are concerned that the quick iterations of DevOps may break compliance rules or introduce security vu...

Read more
  • DevOps
— October 25, 2018

How DevOps Transforms Software Testing

Testing is arguably the most important aspect of software development. Whether manual or automated, testing ensures the software works as expected. Broken software causes production outages, unsatisfied customers, refunds, decreased trust, or even complete financial collapse. Testing mi...

Read more
  • DevOps
— August 8, 2018

From Monolith to Serverless – The Evolving Cloudscape of Compute

Containers can help fragment monoliths into logical, easier to use workloads. The AWS Summit New York was held on July 17 and Cloud Academy sponsored my trip to the event. As someone who covers enterprise cloud technologies and services, the recent Amazon Web Services event was an insig...

Read more
  • AWS
  • AWS Summits
  • Containers
  • DevOps
  • serverless
Albert Qian
— August 6, 2018

Four Tactics for Cultural Change in DevOps Adoption

Many organizations approach digital transformation and DevOps adoption with the belief that simply by selecting and using the right tools, they will achieve higher levels of automation and gain massive efficiencies as a result. While DevOps adoption does require new tools and processes,...

Read more
  • DevOps
— July 24, 2018

Get Started with HashiCorp Vault

Ongoing threats of data breaches and cyber attacks remain top of mind for every team responsible for securing cloud workloads and applications, especially with the challenge of managing secrets including passwords, tokens, API keys, certificates, and more. Complexity is especially notab...

Read more
  • DevOps
  • HashiCorp Vault
— June 11, 2018

Open Source Software Security Risks and Best Practices

Enterprises are leveraging a variety of open source products including operating systems, code libraries, software, and applications for a range of business use cases. While using open source comes with cost, flexibility, and speed advantages, it can also pose some unique security chall...

Read more
  • DevOps
— June 5, 2018

What is Static Analysis Within CI/CD Pipelines?

Thanks to DevOps practices, enterprise IT is faster and more agile. Automation in the form of automated builds, tests, and releases plays a significant role in achieving those benefits and creates the foundation for Continuous Integration/Continuous Deployment (CI/CD) pipelines. However...

Read more
  • DevOps