AWS Elastic Kubernetes Service (EKS)

From wikieduonline
Revision as of 09:44, 22 July 2021 by Welcome (talk | contribs) (→‎Costs)
Jump to navigation Jump to search

AWS Elastic Kubernetes Service (EKS) is a managed Kubernetes solution for running containers available in AWS cloud platform since June 2018 [1]. EKS can be managed using Jenkins X software [2]. Other AWS services for running containers are ECS or Fargate.

By default EKS provides 3 master nodes and 3 etcd nodes, but are invisible to you and Amazon is responsible of AutoScaling them when needed.

helm repo add eks https://aws.github.io/eks-charts


Creation your first EKS Cluster [3]

0) Prerequisites: kubectl and aws-iam-authenticator (a tool to authenticate to Kubernetes using AWS IAM credentials)[4]
On MacOs: brew install aws-iam-authenticator and brew install kubernetes-cli
1) Create a new service role
2) Create a new VPC for you new EKS Cluster using this CloudFormation template from AWS: https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html
3) Create EKS Cluster from AWS Webconsole, user used for creating EKS Cluster will be the initial administrator.
4) Create Worker Nodes using AWS Cloudformation template https://github.com/awslabs/amazon-eks-ami/blob/master/amazon-eks-nodegroup.yaml
5) Install Kubernetes dashboard[5]

Costs

EKS is not included in AWS Free Tier, usually running an EKS cluster is more expensive than ECS for small deployments. GKE offers free trial Kuberntes service.

Activities

See also

  • https://en.wikiversity.org/wiki/DevOps/Kubernetes/EKS
  • https://aws.amazon.com/blogs/opensource/continuous-delivery-eks-jenkins-x/
  • https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html
  • https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html
  • https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
  • Advertising: