There are cloud-specific container orchestration tools like AWS ECS and Azure service fabric, which allows you to deploy and scale dozens of microservices seamlessly. On the other side, we have cloud agnostic orchestration tools like Kubernetes and Docker Swarm to do the same activity.
The question is, who already is or in the path of becoming darling for architects/CTOs. Except for a few specific use cases in general, the answer is loud and clear i.e., cloud-agnostic containerization. The immediate question is, why? To answer this, let us review the story of browsers. Way back when web applications were in the primitive stage, people were in desperate need of browsers. Hence companies started developing browsers on their own. From this effort, we got browsers like Netscape Navigator and Internet Explorer(IE). Development of these browsers independently taken up the respective companies. As the popularity of browsers is increasing, there were specific lessons learned which lead to an inevitable evolution of common standards(W3C) standards.
New browsers( Firefox, chrome) started coming up by following these W3C standards, and browsers which followed their company-specific standards in the early stage found it very difficult to adapt to new standards. They kept on adding new features but not categorically in line with W3C standards. Netscape weathered out of competition long back, and IE tried to survive with the backing of strong Microsoft ecosystem support. However, even IE gave up at some stage, and it did not survive, which lead to the eventual creation of the Edge browser which follows W3C standards.
A similar sequence of events is happening now in the case of containerization tools. When Kubernetes was not very popular, Cloud providers started providing their specific tools for container orchestration. But this time, with lessons learned from browser story, most of the cloud companies started offering Kubernetes as additional service apart from their container orchestration services. This way, they are better prepared for the death of the cloud-specific containerization service. Also, they can keep their pie of the containerization business. Now all the cloud providers have the Kubernetes containerization service i.e., AWS EKS, AKS, and GKE.
The way Kubernetes architecture is evolving i.e., treating every entity as an object and standardization of administrative commands across objects, I strongly feel it is going to live long. What are your thoughts?