AWS Elastic Kubernetes Service (EKS)

From wikieduonline
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]

See also: eksctl create cluster

Costs

EKS is not included in AWS Free Tier, usually running an EKS cluster is more expensive than ECS for small deployments. Google Kubernetes Engine (GKE) offers free trial Kubernetes service. AWS charges $0.10 per hour for each EKS cluster (aprox $72 per month).

Activities

Related

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: