For teams building and deploying containerized applications using Docker, selecting the right orchestration engine can be a challenge. The decision affects not only deployment and management, but how applications are architected as well. DevOps teams need to think about details like how data is persisted, how containerized services communicate with one another, load balancing, service discovery, packaging and more. It turns out that the choice of orchestration engine is critical to all these areas.
While Rancher has the nice property that it can support multiple orchestration engines concurrently, choosing the right solution is still important. Rather than attempting to boil the ocean by looking at many orchestrators, we chose to look at two likely to be on the short list for most organizations – Kubernetes and Docker Swarm. Read more
Note: Since publishing this post, we’ve created a guide comparing Kubernetes with Docker Swarm. You can read the details in the blog post here..
Over the last six months, Rancher has grown very quickly, and now includes support for multiple orchestration frameworks in addition to Cattle, Rancher’s native orchestrator. The first framework to arrive was Kubernetes, and not long after, Docker Swarm was added. This week, the team at Rancher added support for Mesos. For this article, I’m going to focus on Cattle, Swarm, and Kubernetes, and as I gain experience with Mesos, I’ll share my thoughts in another post.
Rancher’s support for these different orchestration platforms is delivered by creating isolated “environments.” When a user or admin creates an environment, they select the orchestration platform he or she wants to use, and which users will have access to the new cluster. Rancher works with Active Directory, LDAP and GitHub, so you can grant different access privileges to teams or individual on a per cluster basis.
Once you’ve created the environment, Rancher prompts you to add “hosts,” which are just Linux physical or virtual machines that running Docker and Rancher’s agent, which is a container. As soon as the first hosts are added, Rancher begins deploying the orchestration framework you’ve chosen, and you can start using your new environment.
Each of these orchestration platforms has a different set of capabilities. For this article, I won’t try to provide a list pros and cons for each, or a long table comparing features. They are all changing very quickly, so anything I write would be out of date within a month or two. Instead, I’ll share some of my personal experiences with all three, and the scenarios in which I use each of the three frameworks. Rancher makes it so easy to deploy each of these that I highly recommend you try them out for yourself and determine which fits your project best. Read more