In case you have not noticed, containers and Docker is on every vendor, provider or system integrator communication lately. Maybe it is even going to catch up with the cloud hype that started circa 2009:
- Red: Cloud computing
- Blue: Docker
source: Google trends August 12th, 2015
At least the ramp up since 2014 is clearly here and the slope similar to that of cloud computing. Naturally, just like when cloud computing started booming, many venture in the sector bringing alternatives, variants or new ideas to the domain.
Introducing Rancher
Amongst them on this container initiative, is Rancher. The Rancher Labs team behind it is not new in the field, in fact they played the game before rather quite successfully, as Shannon Williams and Darren Shepherd were also in the cloud computing vessel when it launched. They initiated Cloud.com the company behind what is now the most mature orchestration tool for infrastructure: Apache Cloudstack.
They set out to build what is apparently 2 products:
- Rancher: an infrastructure platform to run Docker in production
- RancherOS: a minimalist OS to run Docker
Rancher
Rancher is all about managing more than one container which is the obvious deployment scenario when shooting for a micro services architecture. With Rancher, you get in fact several components:
- A user interface: that help you visualize your containers and the infrastructure they are running onto.
- An orchestration engine (Cattle): that will take care of deploying and managing workloads across a potentially heterogeneous infrastructure.
More than a deployment tool
The difference with other initiatives is that this is only the tip of the iceberg. Orchestration and user interface are the “easy” parts when talking containers. Do not mistake me when I say easy, what Rancher is today is quite an achievement but the sum of innovation is fairly low, and the success is more in the right combination of components.
Where Rancher stands out is when it comes to solving the uneasy parts of the equation like:
- Networking
- Storage
Instead of building their engine on top of different technologies, Rancher integrates its own layers on non trivial parts such as network between containers. While solving these problems, Rancher strictly complies with the Docker API all the way. This means that even if you use Rancher you can still interface with Docker and Rancher will notice instead of giving up on you.
Rancher and Exoscale
This rather long introduction for Rancher leads us to an integration between Rancher and Exoscale. With the latest builds or source from Github you can now build your container hosting infrastructure completely or partly on top of Exoscale. This integration, because Rancher uses standard interfaces, was done with minimum efforts from both companies: Docker Machine had already support for Exoscale compute which eased the process greatly.
Looking ahead
There seems to be a good foundation here for great integrations to come. For example, as we are ourselves moving more and more forward with the use of Apache Mesos at least for internal workloads, there are hints of successful combination of Mesos and Rancher. Both implementations of a Mesos executor and most importantly scheduler are being worked on which could help tremendously managing all these moving parts.