Hang on though……
I’m really talking about Kubernetes vs Swarm as a scheduler!
Docker, Inc. just announced native integration of Kubernetes into Docker Enterprise Edition (EE). It’s not hear yet, but it’s coming. Soon. Just as well I’ve got a book on Kubernetes 😀
How will it look?
You’ll build a Swarm cluster (because this is Docker EE, we sometimes call it a UCP cluster). This is basically a cluster of Docker nodes that you schedule your apps against. But it’s enterprise-grade stuff. The whole cluster is secure. The cluster store is encrypted, all node-to-node communication is secured with mutual TLS. Gotta love that! And because it’s Docker EE, you get security scanning, image signing, granular RBAC, on-premises secure registry blah blah blah.
So Swarm is not going away! As a way to build secure enterprise-grade clusters of Docker nodes, Swarm is still the future. As a scheduler…. hmmmmmmmm….. I’m expecting a slow burn. Sure, Docker, Inc. will continue to develop and support Swarm as a scheduler, but it feels to me like Kubernetes is the future here.
So…… Once you built this uber-cool and uber-secure Docker EE cluster (Swarm cluster under-the-hood) you then start deploying your apps.
At this point you get a decision:
– Deploy as Swarm?
– Deploy as Kubernetes?
Sometimes choice is good. Sometimes it’s not so good.
So here’s some help making that decision.
The short-term decision might be “deploy as Swarm”. But it seems clear that the long-term answer to this is “deploy as Kubernetes”!
Here’s the thinking…
Short term. Kubernetes support on Docker EE is new (currently beta). Swarm is not. So for a while, Swarm will be the safer choice. Windows support is currently better on Swarm.
Long-term though….. it feels like Swarm is on a slow burn as a scheduler. It feels like Kubernetes is the better strategic choice.
What does this mean for Docker, Inc. ?
First up, I don’t speak for Docker, Inc.
That said, Docker, Inc. has always been more than just a container or container-orchestrator company. For ages, they’ve been moving towards enterprise support and a great enterprise experience. That’s not changing. In fact, this move solidifies that.
With the integration of Kubernetes into Docker EE, Docker, Inc. is bringing all the enterprise-goodness of Docker EE to the Kubernetes world. Specifically, Docker are bringing: simple installation, image scanning, signing, mutual TLS inside the UCP/Swarm cluster…
For more info and probably a more informed and balanced perspective, see Laura Frank’s post.
Plenty more to come. Wanted to keep this easily digestable.
Feel free to check my book on Kubernetes… you might be needing it soon!