Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Automated Standard EKS deployment

This repository contains Terraform scripts and Kubernetes resources to automate the deployment of a standard EKS cluster along with related resources and applications. It simplifies the provisioning and management of the EKS cluster, providing a quick way to get started with Kubernetes on AWS.

Overview

The deployment set up the following resources:

  • VPC: A Virtual Private Cloud for isolating your cluster.
  • EKS Cluster: Managed Kubernetes service that makes it easier to deploy, manage, and scale containerized applications.
  • EKS Node Group: A group of worker nodes that register with the Kubernetes control plane.
  • ArgoCD: Continuous Delivery tool for Kubernetes.
  • AWS-LB Ingress Controller: Manages AWS Load Balancers for ingress traffic.
  • External-DNS: Automatically manages external DNS records based on ingress and service resources.

Prerequisites

  • AWS Account with necessary permissions
  • Terraform v1.5+ installed
  • kubectl v1.27+ installed
  • AWS CLI configured with access credentials

Deploy Infrastructure

Update needed delcarations in variables.tf

cd terraform

terraform init
terraform plan -out plan.out
terraform apply plan.out

Note: You may have to apply twice

Deploy K8s resources

Update declarations in the following files with your account information:

  • alb-controller.yaml

  • cluster-autoscaler.yaml

  • external-dns.yaml

  • ingress-argo.yaml

cd ../k8s

cat *.yaml | kubectl apply -f -

Note: It may take around 5-10 minutes before all k8s deployments and resources are deployed.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages