<p>I came across an open source Kubernetes project <a href="https://github.com/kubernetes/kops" rel="noreferrer">KOPS</a> and AWS Kubernetes service EKS. Both these products allow installation of a Kubernetes cluster. However, I wonder why one would pick EKS over KOPS or vice versa if one has not run any of them earlier. </p>

<p>This question does not ask which one is better, but rather asks for a comparison.</p>

<p>The two are largely the same, at the time of writing, the following are the differences I'm aware of between the 2 offerings</p>

<p>EKS:</p>

<ul>
<li>Fully managed control plane from AWS - you have no control over the masters</li>
<li><a href="https://docs.aws.amazon.com/eks/latest/userguide/managing-auth.html" rel="noreferrer">AWS native authentication IAM authentication with the cluster</a></li>
<li><a href="https://aws.amazon.com/blogs/opensource/networking-foundation-eks-aws-cni-calico/" rel="noreferrer">VPC level networking for pods</a> meaning you can use things like security groups at the cluster/pod level</li>
</ul>

<p>kops:</p>

<ul>
<li>Support for more Kubernetes features, such as <a href="https://github.com/kubernetes/kops/blob/master/docs/cluster_spec.md" rel="noreferrer">API server options</a></li>
<li>Auto provisioned nodes use the built in kops <code>node_up</code> tool</li>
<li>More flexibility over Kubernetes versions, EKS only has a few versions available right now</li>
</ul>
