NOTE: CloudFoundry-Mesos was a proof of concept and is no longer maintained.
Mesosphere is all about promoting user choice on our Datacenter Operating System (DCOS), which is why we’re proud to be working with networking giant Huawei to bring the popular Cloud Foundry platform-as-a-service (PaaS) project to the DCOS and Apache Mesos.
Cloud Foundry, as most readers probably know, is the open source PaaS system created by VMware in 2011 and now led by Pivotal along with a large user community. While the popularity of many PaaS offerings has faded over the past few years—partially as a result of developer excitement over Docker and containers, in general—Cloud Foundry is still thriving, especially among enterprise developers.
The power of PaaS environments such as Cloud Foundry is that they manage the whole application lifecycle—from packaging to deployment to execution. Typically, a developer will hand over the source code and Cloud Foundry decides the best way to package it (using appropriate buildpacks, etc.) and then deploy and run it. With technologies like Docker Swarm and Kubernetes, on the other hand, packaging becomes the developer’s responsibility.
In a nutshell, Cloud Foundry’s secret sauce is its ability to abstract the entire application lifecycle in such a manner that, once the application is built and deployed, it can move between cloud providers. However, such an opinionated PaaS environment comes at the price of being dependent upon the rigidity of Cloud Foundry platform.
The goal of CloudFoundry-Mesos, which was originally developed by Huawei, is to make Cloud Foundry applications more scalable and to allow them to share cluster resources with other datacenter applications. Huawei is building out its cloud services division and, ultimately, wants to run all supported environments—Cloud Foundry, Kubernetes, Hadoop, Spark and other data systems—on top of Mesos.
The way CloudFoundry-Mesos works right now—in its very early stages—is to replace the native Cloud Foundry Diego scheduler with a Mesos framework, CloudFoundry-Mesos. Doing this does not affect the user experience or performance of other Cloud Foundry components, but would let Cloud Foundry applications share a cluster with other DCOS services without worrying about resource contention.
As CloudFoundry-Mesos matures, it will give DCOS users yet another option for running their cloud-native, microservice-based applications in a single, reliable environment (we already support a number of PaaS projects, including Yelp’s recently open-sourced PaaSta, as well as container-orchestration systems such as Kubernetes). Different teams, developers and business units all have their own requirements, and we can give them the freedom to choose their application runtimes, databases and other components without having to worry about managing a new infrastructure rollout, as well.
Check back for updates as the CloudFoundry-Mesos project progresses, and follow or contribute to it on GitHub here.