Edit Content

EKS using Terraform and Github Actions for helm deployments

This project delivers a fully automated Kubernetes infrastructure and deployment pipeline on AWS. It focuses on Infrastructure as Code (IaC), secure secret management, and streamlined CI/CD workflows to ensure scalable, production-ready application delivery.

Project Overview

Cloud-native Infrastructure: The foundation was built using Amazon EKS (Elastic Kubernetes Service), utilizing managed Node Groups to ensure high availability and automated scaling of compute resources.

Traffic Management & Connectivity: Implemented the AWS Load Balancer Controller (ALB) to manage external traffic. This allowed for seamless Ingress management, routing traffic from the Application Load Balancer directly to Kubernetes services.

Secure Secret Management: To move away from hardcoded configurations, AWS Secrets Manager was integrated. This ensured that sensitive credentials are stored securely and injected into the cluster dynamically.

CI/CD Pipeline Automation: Application delivery was fully automated using GitHub Actions and Helm. This setup allows for automated linting, packaging, and upgrading of Kubernetes releases, ensuring consistent deployments across environments.

Key Features & Workflow:

1

Infrastructure as Code (IaC):

– Terraform scripts provisioned the EKS cluster, VPC networking, and IAM roles.
– Ensured version-controlled, reproducible, and auditable infrastructure changes.

2

Automated Application Deployment:

– Leveraged Helm Charts to standardize and package application configurations.
– Simplified complex deployments into repeatable releases with easy rollback capabilities.

3

Continuous Delivery with GitHub Actions:

– Automated workflows trigger on code pushes to build images and update the cluster.
– Reduced manual intervention and deployment time while increasing reliability.

4

Advanced Ingress Routing:

– Configured ALB Ingress Controller to handle SSL termination and path-based routing.
– Optimized cloud architecture by managing external access through a unified gateway.

5

Secure State & Data Management:

– Integrated AWS Secrets Manager for encrypted, centralized credential storage.
– Utilized Amazon DynamoDB for state locking and application data persistence.

Summary

Developed a robust, end-to-end Kubernetes ecosystem on AWS. By combining Terraform for infrastructure, Helm for package management, and GitHub Actions for CI/CD, the project achieved a “Push-to-Deploy” workflow. The integration of AWS Secrets Manager and ALB Ingress ensured the environment met enterprise-grade security and scalability standards.

Category

Tech Stack

ALB IngressAmazon EKSAWS Secrets ManagerDynamoDBGitHub ActionsHelmTerraform