EKS Anywhere guide

EKS Anywhere is an offering in the Amazon Web Services (AWS) that makes it possible to run AWS’s Kubernetes distribution, Elastic Kubernetes Service (EKS), on privately owned (self-hosted) infrastructure.

EKS itself is a cloud-based Kubernetes service that originally could deploy clusters only on infrastructure that was hosted in the AWS cloud. By introducing EKS Anywhere as an EKS deployment option, AWS opened up important new possibilities for EKS users.

Deploying an EKS Anywhere cluster on AWS EKS. Source: https://aws.amazon.com/blogs/aws/amazon-eks-anywhere-now-generally-available-to-create-and-manage-kubernetes-clusters-on-premises/

In most respects, the experience of using EKS Anywhere is identical to using the conventional deployment option for EKS. You get the same management tooling and features, and the same integrations between EKS and external services. The only real difference is where the host infrastructure resides.

As of late 2021, EKS Anywhere is only compatible with private servers managed via VMware vSphere. But AWS has announced forthcoming support for running EKS Anywhere on privately owned bare-metal servers, too. When that support arrives, it will be possible to deploy EKS Anywhere on virtually any server in your organization’s data center, regardless of how the server is provisioned or configured.

The main advantages of EKS Anywhere

By allowing EKS clusters to operate on private infrastructure, EKS Anywhere addresses challenges that, in some use cases, pose substantial barriers to using standard EKS:

  • Security: Because applications and data that reside within EKS Anywhere clusters are hosted on private servers instead of the public cloud, EKS Anywhere can isolate workloads to a greater extent than standard EKS.
  • Compliance enhancements: Along similar lines, EKS Anywhere can be useful for companies that, due to compliance mandates, need to keep data or applications out of the public cloud.
  • Centralized management: Using EKS Anywhere, you can take advantage of the same administrative tools (namely, those built into EKS) to deploy and manage Kubernetes clusters on both private infrastructure and the AWS public cloud. In other words, you get a centralized management platform – EKS – for managing Kubernetes clusters in both settings, which eliminates the need to juggle separate tools for the public and private portions of your infrastructure.
  • Cost: AWS does not charge customers to use EKS Anywhere. Businesses will have to bear the cost of acquiring and managing the host hardware, but they do not have to pay AWS for the EKS Anywhere software. (AWS offers an optional paid support service for EKS Anywhere.) Standard EKS requires customers to pay AWS for the infrastructure they use.

These advantages make EKS Anywhere an excellent option for EKS use cases that require a higher degree of security and privacy than businesses can achieve when deploying workloads directly in the public cloud. In some situations, it may also be less costly to manage Kubernetes via EKS Anywhere instead of standard EKS, especially if you already have a large private server environment in place.

Potential drawbacks of EKS Anywhere

It’s important to note that EKS Anywhere isn’t the right solution for every Kubernetes use case. As noted above, it currently requires certain configurations for private infrastructure, which limits its flexibility. It also currently lacks support for features like air-gapping (meaning disconnecting your Kubernetes clusters entirely from the Internet), which is important for use cases that require the highest degree of security isolation. And it increases the infrastructure management burden on IT teams, because they become responsible for setting up and managing their own servers instead of using managed infrastructure in the public cloud.

EKS Anywhere vs. EKS on Outposts

Note, too, that EKS Anywhere is not the only way to run EKS clusters on private infrastructure. AWS also supports EKS via Outposts, the AWS hybrid cloud framework. Using Outposts, you can deploy and manage Kubernetes clusters via EKS in a manner similar to using the EKS Anywhere deployment option.

However, in most respects Outposts is more restrictive than EKS Anywhere, especially because it requires very specific hardware that must be purchased from AWS. Running EKS via Outposts will also typically cost more than using EKS Anywhere. Unless you already have an Outposts environment set up, EKS Anywhere is a simpler way to deploy EKS on private infrastructure.

Getting the most from EKS Anywhere

On its own, EKS Anywhere offers convenience and flexibility that standard EKS lacks in some respects. But there are additional steps that users can take to get even more value from EKS Anywhere.

Bake EKS Anywhere into your DevOps strategy

EKS Anywhere can manage applications deployed into Kubernetes clusters, but that’s only one component of a DevOps pipeline.

To make EKS Anywhere as efficient as possible, consider taking advantage of integrations with other DevOps tools, like Artifactory. Using that approach, you can continuously develop, build and deploy applications into EKS Anywhere, which maximizes the efficiency and velocity that the platform enables.

Simplify your licensing

Another opportunity that EKS Anywhere enables is the ability to consolidate software licenses. For example, you can purchase a single license for Artifactory and EKS Anywhere in the AWS Marketplace, eliminating the need to manage separate licenses for each part of your DevOps pipeline.