<p>What does AWS' Elastic Kubernetes Service (EKS) <strong>do exactly</strong> if so much configuration is needed in CloudFormation which is (yet) another AWS service?</p>

<p>I followed the AWS EKS Getting Started in the docs at (<a href="https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf" rel="nofollow noreferrer">https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf</a>) where it seems CloudFormation knowledge is <strong>heavily</strong> required to run EKS.<br>
Am I mistaken or something?  </p>

<p>So in addition to learning the Kubernetes .yaml manifest definitions, to run k8s on EKS, AWS expects you to learn their CloudFormation .yaml configuration manifests as well (which are all PascalCase as opposed to k8s' camelCase i might add)?  </p>

<p>I understand that EKS does some management of latest version of k8s and control plane, and is "secure by default" but other than that?  </p>

<p>Why wouldn't I just run k8s on AWS using kops then, and deal with the slightly outdated k8s versions?<br>
Or am I supposed to do EKS + CloudFormation + kops at which point GKE looks like a really tempting alternative?  </p>

<p>Update:<br>
At this point I'm really thinking EKS is just a thin wrapper over CloudFormation after searching on EKS in detail and how it is so reliant on CloudFormation manifests.<br>
Likely a business response to the alarming popularity of k8s, GKE in general with no substance to back the service.<br>
Hopefully this helps save the time of anyone evaluating the half-baked service that is EKS.   </p>

<p>To run Kubernetes on AWS you have basically 2 options:</p>

<ul>
<li>using kops, it will create Master nodes + workers node under the hood, in plain EC2 machines</li>
<li>EKS + Cloudformation workers stack (you can use also Terraform as an alternative to deploy the workers, or eksctl, that will create both the EKS cluster and the workers. I recommend you to follow <a href="https://eksworkshop.com/" rel="noreferrer">this workshop</a>)</li>
</ul>

<p>EKS alone provides only the master nodes of a kubernetes cluster, in a highly available setup. You still need to add the worker nodes, where your containers will be created.</p>

<p>I tried both kops and EKS + Workers, and I ended up using EKS, because I found it easier to setup and maintain and more fault-tolerant. </p>
