Azure Service Fabric vs Azure Container Services

mvark picture mvark · Jan 24, 2017 · Viewed 22.7k times · Source

I understand that both Azure Service Fabric and Azure Container Services can be used to host microservices through containers.

In what scenarios is it practical & cost effective to use one over the other? What are some strong use cases for Azure Service Fabric and Azure Container Services models of hosting

I read this comparison but did not find it comprehensive

Update: A comparison table like one in this diagram would help keep the points "sticky" & memorable while deciding which option to use

Acronyms used in the table - AF - Azure Functions, ASF - Azure Service Fabric, ASE - App Service Environment, ACS - Azure Container Service, VMSS - Virtual Machine Scale Set

The “rank” should not be misconstrued as good or bad

Answer

hB0 picture hB0 · Feb 19, 2017

Beside the link you pasted for "Choosing between Azure Container Service, Azure Service Fabric and Azure Functions" - Following is what I have found out.

Azure Service Fabric (ASF) is more of a PaaS offering while Azure Container Service (ACS) is more like an IaaS offering.

  • ASF gives you its own specific programming model, which if you follow then you will be able to take advantage of ASF features. That is why there is an ASF SDK for C#/Java you need to use. However ASF additionally allows guest executables and orchestrating Docker containers (not sure how much will they be leveraged compared to ACS or will they be at par).
  • At the moment ASF is Windows only (ASF on Linux preview now available @ Feb 2017) (it smells vendor tie-in)
  • ASF offers you Actor model which is good for IoT solution (maybe quicker to implement than to DIY on ACS)

  • ACS in this sense is more open; it provides only container based model and heavily relies and support docker ecosystem. And once its a container its pretty much technology agnostic. This could also be the reason for Microsoft's push for Windows Nano which is a basis for the windows based (server level) containers (my opinion). So with ACS you can either have Windows or Linux containers or both.

  • ACS also allows you to use the open source, industry famous container orchestrators including Docker Swarm, DC/OS-Mesos. While ASF provides sort of its own orchestration. In other words ASF provides more integrated, easier to use feature rich model but ACS gives you much more openness and flexibility.

MS guys in some conference also mentioned that it could be considered that ASF is more of a Microsoft oriented shop while ACS is more oriented towards open source technologies.