AWS Elastic Kubernetes Service (EKS)
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
andaws-iam-authenticator
(a tool to authenticate to Kubernetes using AWS IAM credentials)[4]- On macOS:
brew install aws-iam-authenticator
andbrew install kubernetes-cli
- On macOS:
- 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
- Read GitLab integration with EKS: https://about.gitlab.com/blog/2020/03/09/gitlab-eks-integration-how-to/
- Read: AWS EKS getting starting guide: https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html
- StackOverflow: https://stackoverflow.com/questions/tagged/amazon-eks?tab=Votes
Related
See also
eksctl [ info | create cluster | get cluster | delete cluster | version | utils describe-stacks | upgrade ]
,eksctl create cluster --help, eksctl --help
- EKS,
eksctl
, EKS add-ons, Amazon EKS cluster role, Terraform EKS, Kubernetes Autoscaler, Karpenter, Terraform module: EKS, Terraform resource: aws eks node group, Terraform data source: aws_eks_cluster, AWS Controllers for Kubernetes, AWS Load Balancer Controller, Amazon EKS Anywhere, Kustomize,aws-iam-authenticator
, ACK, tEKS, Amazon EKS authorization, Amazon EKS authentication, Nodegroup, EKS storage,aws-ebs-csi-driver, aws-efs-csi-driver, aws-load-balancer-controller, amazon-vpc-cni-k8s
, EKS security, EKS Best Practices Guides,hardeneks
, EKS versions,fargate-scheduler
,eks-connector
, Resilience in Amazon EKS, EKS control plane logging, Security groups for Pods in EKS - AWS EKS:
AWS::EKS
,aws eks [ create-cluster | list-clusters
|describe-cluster
|update-kubeconfig | list-updates | list-addons | update-cluster-version | update-nodegroup-version | get-token | create-addon ]
Advertising: