Skip to content

This project automates the setup of a managed Kubernetes service on AWS (EKS) using Terraform. It includes node autoscaling based on CPU and memory, facilitated by AWS CloudWatch Agent, and establishes secure cluster access via AWS IAM.

Notifications You must be signed in to change notification settings

caiolombello/eks

Repository files navigation

Managed Kubernetes on AWS

  • Deploy Karpenter for Node Memory Autoscaling
  • Autoscaling Nodes by CPU
  • Create user for AWS cluster access
  • Bottlerocket OS
  • Graviton instance type
  • KMS Encrypt EKS Secrets

Kubernetes Configuration

To apply the IAM user for Kubernetes authentication and CloudWatch Agent:

terraform -chdir=kubernetes init
terraform -chdir=kubernetes plan
terraform -chdir=kubernetes apply

Access to Cluster

Retrieve IAM data:

export aws_access_key_id=$(terraform output root_user_access_key_id)
export aws_secret_access_key=$(terraform output root_user_secret_access_key)

Get Kubeconfig:

aws eks update-kubeconfig --name eks-vertigo-devops-dev --region us-east-1

About

This project automates the setup of a managed Kubernetes service on AWS (EKS) using Terraform. It includes node autoscaling based on CPU and memory, facilitated by AWS CloudWatch Agent, and establishes secure cluster access via AWS IAM.

Topics

Resources

Stars

Watchers

Forks