At DockerCon EU 2015, InfoQ sat down with the Rancher Labs team and asked about the company’s thoughts on the current state of Platform as a Service (PaaS), container-based application platforms, and surrounding issues such as networking and storage.
Rancher Labs have created RancherOS, a minimalist operating system (OS) built to explicitly run Docker, and also Rancher, an open source platform for building a private container service, much like Engine Yard’s Deis PaaS and VMware’s Photon platform. InfoQ sat down with Rancher Labs CEO, Sheng Liang, and asked about the Rancher platform, common container platform issues such as networking and storage, and how a container platform will fit into a standard development workflow.
InfoQ: Hello Sheng, thanks for agreeing to talk to InfoQ today. Could you introduce yourself and explain a little about Rancher please?
Liang: Of course. My name is Sheng Liang and I’m the co-founder and CEO of Rancher Labs, a company dedicated to developing the next generation of cloud software targeting containerized workload. Public container services like Amazon’s ECS and Google Container Engine are becoming quite popular. Many organizations are looking for ways to run their containerized workload in similar ways. Our flagship product is Rancher, the first open source platform to enable organizations launch a private container service. Our second product is RancherOS, an extremely lightweight (< 30MB) Linux distribution for running Docker containers.
InfoQ: Many people will know Rancher because of RancherOS. What made you move into the PaaS market?
Liang: Yes, RancherOS has generated a lot of interest among the Docker community because it is the smallest, the most secure, and the most efficient way to run Docker containers. But we have always had the Rancher product from the very beginning. Rancher enables organizations to build private container services. Strictly speaking, container services are different from traditional PaaS. Container services have some of the same benefits of PaaS, like automated application management and infrastructure independence, but they are less opinionated and easier than adopt than PaaS.
InfoQ: What do you see as unique to your offering? How does Rancher compare with, say, Deis, Kubernetes (GKE), Amazon ECS or Mesos?
Liang: Rancher is unique in that we offer a Docker-centric software stack for building container services. We believe much of Docker’s value lies in its superb developer experience and wide-spread developer adoption. While many other tools attempt to wrap Docker and present an alternate developer experience, we take care to preserve the native Docker experience, which includes the Docker CLI, Docker API, Docker Swarm, Docker Machine, and Docker Compose.
We build value add underneath and around Docker. A side benefit of preserving the native Docker experience is that Rancher can support and add value to any frameworks that are built on Docker, including frameworks such as Kubernetes. In fact, Rancher includes a Kubernetes distribution and is an excellent platform for running Kubernetes applications.
InfoQ: Storage and networking are two general issues with container-based PaaS offerings, and this is a big concern for many enterprises that are migrating workloads. How does Rancher handle these challenges?
Liang: Rancher focuses on providing a highly-optimized and portable implementation of storage and networking. The Docker runtime is a portable execution engine. Rancher additionally makes the surrounding storage and networking infrastructure portable. Rancher consumes Linux servers, which are universally available from any clouds, virtualization clusters, or bare metal servers. Rancher then implements its own SDN layer that enables containers on multiple hosts and clouds to communicate with each other, while maintaining network separation among containers that belong to different environments and different users.
Rancher includes two pieces of storage technologies to support persistent storage and stateful workload: Convoy is a storage driver for Docker volumes enabling persistent storage systems like NAS or SAN to be accessed by containers. In addition, we recently announced Persistent Storage Services, which enables Software Defined Storage systems such as Gluster and Nexenta to be deployed alongside application containers. With Persistent Storage Services, users can run stateful applications without requiring NAS and SAN.
InfoQ: Do you intend to offer tooling around continuous delivery/build pipeline for Docker and Rancher (perhaps via Jenkins, Go CD, or TeamCity)?
Liang: Our current plan is to provide an excellent runtime environment for containerized applications and support popular container orchestration frameworks like Swarm and Kubenetes. Because many of the CI/CD tools already integrate with Docker CLI, Swarm, and Kubenetes, no additional integration with Rancher is required.
InfoQ: We see that Rancher is currently in Beta. Is there a timeline for a GA release?
Liang: Yes. We plan to ship GA release of Rancher early next year.
InfoQ: Thanks again for your time, is there anything else you would like to share with the InfoQ readers?
Liang: It was a pleasure to speak with you. We at Rancher Labs really appreciate the opportunities the Docker community has created. Containers enable us to take another look at the entire infrastructure and management stack, and give us a way to utilize public clouds, private clouds, virtualized clusters, and bare metal servers all as commoditized resource pools.
Cloud computing has never been so exciting. Because of the power of containers, many of the ideals of cloud computing, like true workload portability, commodity infrastructure, automated application deployment and management, and application-defined infrastructure are closer to reality than ever before.
Additional information on Rancher can be found on the company’s website, and installation instructions for installing the Rancher Platform can be found in the Rancher GitHub repository. Questions and feedback can be provided via the Rancher forums or the #rancher IRC channel.