How I Built a Secure Terraform Module to Deploy EKS on AWS (and Launched It as a Product)



This content originally appeared on DEV Community and was authored by Michael KARENGERA

I recently found myself rebuilding the same EKS infrastructure for every new project — IAM roles, node groups, tagging, GitOps setup… all from scratch.

So I decided to turn it into a product.

What It Does:

  • Provisions a secure EKS cluster with managed node groups
  • Modular IAM roles with AWS-managed policies
  • Multi-AZ subnet support
  • Comes with a clean starter example
  • CI/CD- and GitOps-ready layout

What’s Included:

  • eks module (EKS + node group)
  • iam module (secure roles)
  • Add-ons in development (ALB Ingress, Cluster Autoscaler)

Try It:

Starter GitHub repo:

https://github.com/Eng-Mike/terraform-aws-eks-secure

Full Production-Ready Version (Gumroad):

https://karengera.gumroad.com/l/terraform-eks-eks-secure

Why I Built It:

  • I needed a secure and repeatable way to deploy EKS for clients.
  • Every project had slightly different IAM, node configs, and tagging needs.
  • I wanted to give back to the community while learning how to launch a real micro-product.

📈 What’s Next:

  • CI/CD add-on (GitHub Actions)
  • Monitoring templates (Prometheus + Grafana)
  • ArgoCD GitOps deployment pattern

Let me know what you’d want to see added!

Built by Michael Karengera — DevOps Engineer & automation lover 🇨🇦


This content originally appeared on DEV Community and was authored by Michael KARENGERA