I may be confused about the core concepts of either docker or rancher, but it is my understanding that Docker provides the engine / platform and means for orchestration, but they do not involve themselves in orchestrating things and they don’t necessarily have a built in UI for the engine.
While docker load balances based on the DNS name - it is most certainly not anything even remotely similar to Ranchers haproxy implementation. Of course rancher wouldn’t run without docker, and my understanding is that rancher is something that narrows the gap between the management of your orchestration tool and the actual core of the docker. Rancher makes docker usable without forcing uou to fully understand how to configure each device layer, they just make it easier… Can you setup haproxy on docker yourself? Of course yes! But is it easier with rancher? Heeeeeellll yeah!!!
I really don’t see that docker engine should be able to do things that rancher does (i.e. Intelligent load balancing, auto deploy some containers if some conditions are met for making it easier to use if there was an LB setup, or automate ways for cross-node storage volume management etc. ), docker builds and provides and awesome platform that connects the dots, but rancher makes connecting dots easier. Cant really see that one of the two companies were trying to work towards the same goal. One is a engine, and another one is making it easier to use it and remove the gap between having to know all different orchestration techniques and platforms and making it all unified - create a catalog item and re-use it. Well… Sort of. For some funny reason k8s takes in different catalog format, but swarm and cattle are pretty much one and the same.
Can someone from Rancher tell us if this was a design choice to support k8s format over rancher’s own catalog format for service deployment, or did something go wrong there and having same rancher catalog template for a not very apparent reason now is completely unusable for k8s ? Wouldn’t it make sense to have support of k8s and rancher catalog format for k8s deployments? Same question would probably apply to mesos? Or is some sort of conversion tool planned for some time down the road?
Anyhow, that’s my take on things. And swarm is just one of “plugins” that can be used with rancher, there’re also k8s and mesos that are integrated and saying that swarm with the new release is going to become better than all is probably a bit of a stretch, after all - all 3 of them are trying to solve different problems - and meant for somewhat different things, i.e. Mesos - convert your data center to a global pool of resources, k8s is more of a granular resource management, swarm is just getting into the field but very capable of utilizing all the features of the docker engine itself, and rancher is mostly a layer on top of them all with their own Cattle orchestration, that is just easier for new docker users to understand, but as a benefit - it can give a bit more transparency into things, since everything ends up being in a single place, may be not most reliable on a larger scale, but easier)
After all - it’s very difficult to say that Docker is much better than deploying on bare metal, both mechanisms are trying to solve different issues and offer two ways of going about it, and both ways are great, personally - I’m very hesitant in converting 100% of our infrastructure into docker based environment and we have plenty of services that continue to run on bare metal, mostly due to lack of trust into something that is still very new, but I’m sure that others had already converted 100% and many of them are super happy about it
Thank you