Revisiting Kubernetes vs. Service Fabric

Since I wrote my initial post regarding Kubernetes and Service Fabric, a few things have happened:

Specifically, in terms of where Microsoft is putting its money, I think that got brought home at Ignite 2019. You only need to sit through the major keynotes and peruse the sessions to figure out that as far as these kinds of platforms are concerned, Kubernetes has “won the day”. All things being equal, my suggestion would be to adopt Kubernetes and avoid Service Fabric. If you are starting out, this means making sure you pick a technology that is not bound to any specific OS platform (sure, Kubernetes can run Windows workloads, but it will be a while before it gets parity with Linux if it ever does). If you’re already invested in Service Fabric, put a migration plan in place to move away.

Not to say that Service Fabric is going to be sunsetted any time soon. After all, a lot of Azure services supposedly run on it. That does not preclude Microsoft from winding it down slowly as a public offering though. I would say Service Fabric is in a similar bucket as a lot of other similar platforms- Mesos, Nomad, Borg, or whatever Netflix’s proprietary thing is called. They are all solid platforms and battle tested and are in wide use by companies that built them or adopted them pre-Kubernetes. As a general consumer of tech, though, Kubernetes seems to be the better choice.

This, of course, does not mean you should couple your software to Kubernetes or any specific platform for that matter. If you build it such that you can easily port from one to another, these fluctuations in the technology landscape are a lot less painful.

Tags: kubernetes servicefabric containers microservices
Previous: Working with Windows Containers in Kubernetes
Next: The Rise of Go


comments powered by Disqus