{"id":20607,"date":"2021-03-25T06:33:18","date_gmt":"2021-03-25T06:33:18","guid":{"rendered":"http:\/\/www.devopsschool.com\/blog\/?p=20607"},"modified":"2025-01-23T12:45:31","modified_gmt":"2025-01-23T12:45:31","slug":"kubernetes-as-a-service-with-comparison-of-eks-vs-aks-vs-gke","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/kubernetes-as-a-service-with-comparison-of-eks-vs-aks-vs-gke\/","title":{"rendered":"Kubernetes as a service with comparison of EKS vs AKS vs GKE"},"content":{"rendered":"\n<p>This blog is still in progress. I am still working on it. Howee]ver, I have consolidated all the comparison available on the internet at one place in image format. Please refer it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"Feature-Comparison\">Feature Comparison<\/h2>\n\n\n\n<p>In this section, we compare the key features of the three providers. Following this table, we\u2019ll provide a deeper analysis of each feature.<\/p>\n\n\n\n<figure id=\"tablepress-6\" class=\"wp-block-table\"><table><thead><tr><th>&nbsp;<\/th><th><strong>Amazon EKS<\/strong><\/th><th><strong>Microsoft AKS<\/strong><\/th><th><strong>Google GKE<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Supported Kubernetes version(s)<\/strong><\/td><td>1.18<br>1.17<br>1.16<br>1.15<\/td><td>1.20<br>1.19<br>1.18<br>1.17<\/td><td>1.17<br>1.16<br>1.15<br>1.14<\/td><\/tr><tr><td><strong>Service Launch Date<\/strong><\/td><td>June 2018<\/td><td>June 2018<\/td><td>August 2015<\/td><\/tr><tr><td><strong><a href=\"https:\/\/www.cncf.io\/certification\/software-conformance\/\" target=\"_blank\" rel=\"noopener\">CNCF Kubernetes Conformance<\/a><\/strong><\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><strong>Control-plane Upgrade<\/strong><\/td><td><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/update-cluster.html\" target=\"_blank\" rel=\"noopener\">Manual<\/a><br>User must also manually update the system services that run on nodes (e.g., kube-proxy, coredns, AWS VPC CNI)<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/upgrade-cluster\" target=\"_blank\" rel=\"noopener\">Manual<\/a><br>All system components update with cluster upgraded<\/td><td><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/concepts\/cluster-upgrades\" target=\"_blank\" rel=\"noopener\">Automatic<\/a>&nbsp;(default) or&nbsp;<a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/upgrading-a-cluster\" target=\"_blank\" rel=\"noopener\">Manual<\/a><\/td><\/tr><tr><td><strong>Node Upgrade<\/strong><\/td><td><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/update-cluster.html\" target=\"_blank\" rel=\"noopener\">Manual<\/a><br>EKS will drain and replace nodes<\/td><td>Automatic or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/upgrade-cluster#:%5c~:text=Upgrade%20an%20AKS%20cluster,-With%20a%20list&amp;text=During%20the%20upgrade%20process%2C%20AKS,the%20old%20node%20is%20deleted\" target=\"_blank\" rel=\"noopener\">manual<\/a><br>AKS will drain and replace nodes<\/td><td>Automatic&nbsp;(default)<br>GKE drains and replaces nodes<\/td><\/tr><tr><td><strong>Node OS<\/strong><\/td><td>Linux:<br><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/launch-workers.html\" target=\"_blank\" rel=\"noopener\">Amazon Linux 2<\/a>&nbsp;(default)<br>Ubuntu (Partner AMI)<br><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/launch-node-bottlerocket.html\" target=\"_blank\" rel=\"noopener\">Bottlerocket<\/a><br>Windows:<br><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/windows-support.html\" target=\"_blank\" rel=\"noopener\">Windows Server 2019<\/a><\/td><td>Linux:<br><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/concepts-clusters-workloads#nodes-and-node-pools\" target=\"_blank\" rel=\"noopener\">Ubuntu<\/a><br>Windows:<br><a href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/announcing-the-general-availability-of-windows-server-containers-and-private-clusters-for-azure-kubernetes-service\/\" target=\"_blank\" rel=\"noopener\">Windows Server 2019<\/a><\/td><td>Linux:<br>Container-Optimized OS (COS) (default)<br>Ubuntu<br>Windows:<br><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/creating-a-cluster-windows\" target=\"_blank\" rel=\"noopener\">Windows Server 2019<\/a><br><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/creating-a-cluster-windows\" target=\"_blank\" rel=\"noopener\">Windows Server version 1909<\/a><\/td><\/tr><tr><td><strong>Container Runtime<\/strong><\/td><td>Docker (default)<br><a href=\"https:\/\/aws.amazon.com\/bottlerocket\/\" target=\"_blank\" rel=\"noopener\">Containers (through Bottlerocket)<\/a><\/td><td>Docker (default)<br><a href=\"https:\/\/azure.microsoft.com\/en-ca\/updates\/azure-kubernetes-service-aks-support-for-containerd-runtime-is-in-preview\/\" target=\"_blank\" rel=\"noopener\">Containerd<\/a><\/td><td>Docker (default)<br>Containerd<br><a href=\"https:\/\/cloud.google.com\/blog\/products\/gcp\/open-sourcing-gvisor-a-sandboxed-container-runtime\" target=\"_blank\" rel=\"noopener\">GVisor<\/a><\/td><\/tr><tr><td><strong>High Availability Cluster<\/strong><\/td><td>Control plane is&nbsp;deployed&nbsp;<a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/disaster-recovery-resiliency.html\" target=\"_blank\" rel=\"noopener\">across multiple Availability Zones<\/a>&nbsp;(default)<\/td><td>Control plane components&nbsp;<a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/concepts\/types-of-clusters#single-zone_clusters\" target=\"_blank\" rel=\"noopener\">will be spread between&nbsp;the number of zones defined by the Admin<\/a><\/td><td>Zonal Clusters:<br><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/concepts\/types-of-clusters#single-zone_clusters\" target=\"_blank\" rel=\"noopener\">Single Control Plane<\/a><br>Regional Clusters:<br>Three Kubernetes control planes quorum<\/td><\/tr><tr><td><strong>Control Plane SLA<\/strong><\/td><td><a href=\"https:\/\/aws.amazon.com\/eks\/sla\/\" target=\"_blank\" rel=\"noopener\">99.95%<\/a><\/td><td><a href=\"https:\/\/techcommunity.microsoft.com\/t5\/apps-on-azure\/aks-introduces-uptime-sla\/ba-p\/1350832\" target=\"_blank\" rel=\"noopener\">99.95%<\/a><\/td><td><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/sla\" target=\"_blank\" rel=\"noopener\">99.95%<\/a><\/td><\/tr><tr><td><strong>Pricing<\/strong><\/td><td><a href=\"https:\/\/aws.amazon.com\/eks\/pricing\/\" target=\"_blank\" rel=\"noopener\">$0.10\/hour (USD)<\/a>&nbsp;per cluster + standard costs of EC2 instances and other resources<\/td><td><a href=\"https:\/\/azure.microsoft.com\/en-ca\/pricing\/details\/kubernetes-service\/\" target=\"_blank\" rel=\"noopener\">Pay-as-you-go<\/a>: Standard costs of node VMs and other resources<\/td><td><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/pricing\" target=\"_blank\" rel=\"noopener\">$0.10\/hour (USD)<\/a>&nbsp;per cluster + standard costs of GCE machines and other resources<\/td><\/tr><tr><td><strong>GPU support<\/strong><\/td><td><a href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2018\/08\/amazon-eks-supports-gpu-enabled-ec2-instances\/\" target=\"_blank\" rel=\"noopener\">Yes (NVIDIA)<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/gpu-cluster\" target=\"_blank\" rel=\"noopener\">Yes (NVIDIA)<\/a><\/td><td><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/gpus\" target=\"_blank\" rel=\"noopener\">Yes (NVIDIA)<\/a><\/td><\/tr><tr><td><\/td><td>Required install device plugin<\/td><td>Required install device plugin<\/td><td>Required install device plugin<br>Compute Engine A2 VMs<\/td><\/tr><tr><td><strong>RBAC<\/strong><\/td><td><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/managing-auth.html\" target=\"_blank\" rel=\"noopener\">Yes<\/a><\/td><td><a href=\"https:\/\/azure.microsoft.com\/en-us\/blog\/azure-kubernetes-service-aks-ga-new-regions-new-features-new-productivity\/\" target=\"_blank\" rel=\"noopener\">Yes<\/a><\/td><td><a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/role-based-access-control\" target=\"_blank\" rel=\"noopener\">Yes<\/a><\/td><\/tr><tr><td><strong>Control Plane: Log Collection<\/strong><\/td><td>Optional<br>Default: Off<br>Logs are sent to AWS CloudWatch<\/td><td>Optional<br>Default: Off<br>Logs are sent to Azure Monitor<\/td><td>Optional<br>Default: Off<br>Logs are sent to Stackdriver<\/td><\/tr><tr><td><strong>Container Performance Metrics<\/strong><\/td><td>Optional<br>Default: Off<br>Metrics are sent to&nbsp;<a href=\"https:\/\/docs.aws.amazon.com\/AmazonCloudWatch\/latest\/monitoring\/Container-Insights-metrics-EKS.html\" target=\"_blank\" rel=\"noopener\">AWS CloudWatch Container Insights<\/a><\/td><td>Optional<br>Default: Off<br>Metrics are sent to&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/insights\/container-insights-overview\" target=\"_blank\" rel=\"noopener\">Azure Monitor<\/a><\/td><td>Optional<br>Default: Off<br>Metrics are sent to&nbsp;<a href=\"https:\/\/cloud.google.com\/monitoring\/api\/metrics_kubernetes\" target=\"_blank\" rel=\"noopener\">Stackdriver<\/a><\/td><\/tr><tr><td><strong>Node Health Monitoring<\/strong><\/td><td><a href=\"https:\/\/aws.amazon.com\/premiumsupport\/knowledge-center\/eks-node-status-ready\/\" target=\"_blank\" rel=\"noopener\">No Kubernetes-aware support<\/a>; if node instance fails, the AWS autoscaling group of the node pool will replace it<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/node-auto-repair\" target=\"_blank\" rel=\"noopener\">Auto repair<\/a>&nbsp;is now available.&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/insights\/container-insights-analyze\" target=\"_blank\" rel=\"noopener\">Node status monitoring is available<\/a>. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/aks\/cluster-autoscaler\" target=\"_blank\" rel=\"noopener\">autoscaling rules<\/a>&nbsp;to shift workloads.<\/td><td>Node&nbsp;<a href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/how-to\/node-auto-repair\" target=\"_blank\" rel=\"noopener\">auto-repair enabled<\/a>&nbsp;by default<\/td><\/tr><tr><td><strong>Serverless Compute<\/strong><\/td><td><a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/fargate.html\" target=\"_blank\" rel=\"noopener\">AWS Fargate<\/a><\/td><td>Azure Container Instances<\/td><td>Cloud Run for Anthos<\/td><\/tr><tr><td><strong>On-Prem Services<\/strong><\/td><td>Via&nbsp;<a href=\"https:\/\/docs.aws.amazon.com\/eks\/latest\/userguide\/eks-on-outposts.html\" target=\"_blank\" rel=\"noopener\">AWS Outposts<\/a><\/td><td>Yes<\/td><td>Via&nbsp;<a href=\"https:\/\/cloud.google.com\/anthos\/gke\/docs\/on-prem\/overview\" target=\"_blank\" rel=\"noopener\">Anthos GKE On Prem<\/a>&nbsp;through Google\u2019s&nbsp;<a href=\"https:\/\/cloud.google.com\/anthos\/multicluster-management\/connect\" target=\"_blank\" rel=\"noopener\">Connect<\/a>&nbsp;service for multicluster management, in a&nbsp;<a href=\"https:\/\/www.vmware.com\/products\/vsphere.html\" target=\"_blank\" rel=\"noopener\">vSphere 6.5 or 6.7&nbsp;environment<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Strengths and Weaknesses of AKS, EKS, GKE<\/strong><\/h2>\n\n\n\n<p>In alphabetical order, here is a quick summary of AKS, EKS and GKE. It is not an exhaustive list and could be debated as some strengths or weaknesses you might view as a strength for your individual application.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>AKS Strengths<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>If you are a .NET or Microsoft shop, AKS has first class support for Windows.<\/li><li>Configuring the virtual network and subnet is simple.<\/li><li>Robust command line support using the az cli.<\/li><li>Integrated logging and monitoring solution.<\/li><li>Azure Active Directory integration for cluster authentication.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>AKS Weaknesses<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>AKS is relatively new compared to GKE and EKS. As a result many features are still in alpha or beta.<\/li><li>At Fairwinds, we are proponents of infrastructure as code, making use of Terraform a lot. The Azure Terraform provider doesn\u2019t fully support all of the Azure APIs, so there are some gotchas. The az command line tool can be used to supplement Terraform.<\/li><li>You are limited on your selection of underlying operating systems you can run. The only choices are Linux (Ubuntu) and Windows Server. The virtual machines do not support customization directly and there is no ability to provide a cloud init or user data script.&nbsp;<\/li><li>You have to run a default node pool when deploying a cluster, it always has to be there and you can\u2019t change server types once deployed.<\/li><li>Support for multiple node pools is a preview feature.<\/li><li>Node updates are not automatic, compared to GKE auto-updates.<\/li><li>Nodes do not automatically recover from kubelet failures, compared to GKE auto-recovery.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>EKS Strengths<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>AWS is very mature and tools like Terraform integrate nicely. Amazon has published and maintains a very robust set of EKS Terraform modules with many features. If you only need to interact with EKS, there is an official command line tool,&nbsp;eksctl.<\/li><li>EKS nodes are more customizable. You can use your own machine images (AMIs). This allows you to customize your operating system and configure servers for your exact needs. You still have the option for using a pre-set AMI, but sometimes these AMIs will not be viable due to security compliance regulations.<\/li><li>AWS is the most widely used and offers many additional cloud services. Most Kubernetes tooling (DNS management, certificate management, etc.) fully support AWS integration. Kubernetes on AWS is widely documented and offers a large community of users.<\/li><\/ul>\n\n\n\n<p><strong>EKS Weakness&nbsp;<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>While it is simple to create an EKS cluster, adding and customizing node pools can be complex.<\/li><li>Node updates are not automatic, compared to GKE auto-updates.<\/li><li>Nodes do not automatically recover from kubelet failures, compared to GKE auto-recovery.<\/li><li>Pod density and CNI limitations based on instance type and subnet sizes.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>GKE Strengths<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>GKE makes it really easy to deploy a Kubernetes cluster. The command line tool, and web console are both very friendly.<\/li><li>Updating the cluster version and node pools is a simple one click process. The version can also be set to automatically update when possible.<\/li><li>Node pools can be configured to self heal, preventing manual intervention when the underlying kubelet has issues.<\/li><li>GKE cherry picks bug and CVE fixes into the version of Kubernetes they ship. The downside to this is if a user is running the GKE version of 1.15.9 and they wanted to look at the Kubernetes code, they couldn\u2019t be completely sure that code wasn\u2019t altered.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>GKE Weaknesses<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>You cannot customize your server configuration. You have to use one of the two server types they offer: Container OS or Ubuntu. You don\u2019t get to pick the versions or kernel versions. If you want a deeper level of customization on your underlying hardware, you cannot do that with GKE.<\/li><li>GKE runs managed cluster-addons (kube-dns, ip-masq-agent, etc\u2026) that are not overly configurable to the end user. They cannot be modified to use node selectors or tolerations. Any changes made to these addons are reverted.<\/li><li>While not a huge weakness, GKE has the concept of Zonal vs Regional clusters. By default, a cluster&#8217;s control plane (primary) and nodes all run in a single compute zone that you specify when you create the cluster. This cannot be changed after the cluster is created. If you need a production ready GKE cluster, be sure to create a Regional cluster.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"914\" height=\"358\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-2.jpg\" alt=\"\" class=\"wp-image-20609\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-2.jpg 914w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-2-300x118.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-2-768x301.jpg 768w\" sizes=\"auto, (max-width: 914px) 100vw, 914px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"708\" height=\"390\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-3.jpg\" alt=\"\" class=\"wp-image-20610\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-3.jpg 708w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-3-300x165.jpg 300w\" sizes=\"auto, (max-width: 708px) 100vw, 708px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"530\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-1.png\" alt=\"\" class=\"wp-image-20608\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-1.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-1-300x207.png 300w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1430\" height=\"589\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4.png\" alt=\"\" class=\"wp-image-20611\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4.png 1430w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4-300x124.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4-1024x422.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-4-768x316.png 768w\" sizes=\"auto, (max-width: 1430px) 100vw, 1430px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"936\" height=\"775\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-5.png\" alt=\"\" class=\"wp-image-20612\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-5.png 936w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-5-300x248.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-5-768x636.png 768w\" sizes=\"auto, (max-width: 936px) 100vw, 936px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"803\" height=\"396\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-6.jpg\" alt=\"\" class=\"wp-image-20613\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-6.jpg 803w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-6-300x148.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-6-768x379.jpg 768w\" sizes=\"auto, (max-width: 803px) 100vw, 803px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"664\" height=\"182\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-7.png\" alt=\"\" class=\"wp-image-20614\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-7.png 664w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-7-300x82.png 300w\" sizes=\"auto, (max-width: 664px) 100vw, 664px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"666\" height=\"658\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-8.png\" alt=\"\" class=\"wp-image-20615\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-8.png 666w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-8-300x296.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-8-80x80.png 80w\" sizes=\"auto, (max-width: 666px) 100vw, 666px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"856\" height=\"323\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-9.png\" alt=\"\" class=\"wp-image-20616\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-9.png 856w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-9-300x113.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-9-768x290.png 768w\" sizes=\"auto, (max-width: 856px) 100vw, 856px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"682\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-10.png\" alt=\"\" class=\"wp-image-20617\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-10.png 1000w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-10-300x205.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-10-768x524.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1300\" height=\"650\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-11.png\" alt=\"\" class=\"wp-image-20618\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-11.png 1300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-11-300x150.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-11-1024x512.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-11-768x384.png 768w\" sizes=\"auto, (max-width: 1300px) 100vw, 1300px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"995\" height=\"458\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-13.png\" alt=\"\" class=\"wp-image-20619\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-13.png 995w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-13-300x138.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-13-768x354.png 768w\" sizes=\"auto, (max-width: 995px) 100vw, 995px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"827\" height=\"588\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-14.png\" alt=\"\" class=\"wp-image-20620\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-14.png 827w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-14-300x213.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/03\/Kubernetes-as-a-service-comparison-EKS-AKS-GKE-14-768x546.png 768w\" sizes=\"auto, (max-width: 827px) 100vw, 827px\" \/><\/figure>\n\n\n<div class=\"epyt-gallery\" data-currpage=\"1\" id=\"epyt_gallery_35296\"><iframe loading=\"lazy\"  id=\"_ytid_53102\"  width=\"760\" height=\"427\"  data-origwidth=\"760\" data-origheight=\"427\" src=\"https:\/\/www.youtube.com\/embed\/?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=1&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;theme=dark&#038;color=red&#038;controls=1&#038;disablekb=0&#038;\" class=\"__youtube_prefs__  no-lazyload\" title=\"YouTube player\"  data-epytgalleryid=\"epyt_gallery_35296\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><div class=\"epyt-gallery-list\"><div>Sorry, there was a YouTube error.<\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>This blog is still in progress. I am still working on it. Howee]ver, I have consolidated all the comparison available on the internet at one place in image format. Please&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4859],"tags":[],"class_list":["post-20607","post","type-post","status-publish","format-standard","hentry","category-kubernetes"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20607","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=20607"}],"version-history":[{"count":4,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20607\/revisions"}],"predecessor-version":[{"id":24472,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20607\/revisions\/24472"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=20607"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=20607"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=20607"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}