Terraform EKS Project | AWS Infra to Kubernetes, No kubectl apply
vijay giduthuri
0:00 / 0:00
Terraform EKS Project | AWS Infra to Kubernetes, No kubectl apply
1ย 863 ะฟัะพัะผะพััะฐ ยท 4 ะฝะตะดะตะปะธ ะฝะฐะทะฐะด
vijay giduthuri
5,04ย ััั. ะฟะพะดะฟะธััะธะบะพะฒ
1ย 863 ะฟัะพัะผะพััะฐ ยท 4 ะฝะตะดะตะปะธ ะฝะฐะทะฐะด
This is a cloud-native microservices ๐๐ฏ๐๐ง๐ญ ๐ฆ๐๐ง๐๐ ๐๐ฆ๐๐ง๐ญ & ๐ญ๐ข๐๐ค๐๐ญ ๐๐จ๐จ๐ค๐ข๐ง๐ ๐ฉ๐ฅ๐๐ญ๐๐จ๐ซ๐ฆ where customers browse events, reserve seats, pay for tickets, and cancel for a refund โ similar to BookMyShow or Eventbrite. The focus is a complete end-to-end DevOps lifecycle on ๐๐ฆ๐๐ณ๐จ๐ง ๐๐๐ ๐๐๐ซ๐ฏ๐ข๐๐๐ฌ (๐๐๐) where ๐๐ฏ๐๐ซ๐ฒ ๐ซ๐๐ฌ๐จ๐ฎ๐ซ๐๐ โ ๐๐ฅ๐จ๐ฎ๐ ๐ข๐ง๐๐ซ๐๐ฌ๐ญ๐ซ๐ฎ๐๐ญ๐ฎ๐ซ๐ ๐๐ง๐ ๐๐ฎ๐๐๐ซ๐ง๐๐ญ๐๐ฌ ๐ฐ๐จ๐ซ๐ค๐ฅ๐จ๐๐๐ฌ โ ๐ข๐ฌ ๐ฉ๐ซ๐จ๐ฏ๐ข๐ฌ๐ข๐จ๐ง๐๐ ๐ฐ๐ข๐ญ๐ก ๐๐๐ซ๐ซ๐๐๐จ๐ซ๐ฆ, with no kubectl apply and no application Helm chart.
๐๏ธ ๐๐ซ๐๐ก๐ข๐ญ๐๐๐ญ๐ฎ๐ซ๐ โ ๐ ๐๐จ๐ง๐ญ๐๐ข๐ง๐๐ซ๐ข๐ณ๐๐ ๐๐จ ๐ฆ๐ข๐๐ซ๐จ๐ฌ๐๐ซ๐ฏ๐ข๐๐๐ฌ (frontend, event, booking, payment, notification) over REST/JSON. The booking flow is a ๐ฌ๐๐ ๐ ๐ฐ๐ข๐ญ๐ก ๐๐จ๐ฆ๐ฉ๐๐ง๐ฌ๐๐ญ๐ข๐ง๐ ๐ญ๐ซ๐๐ง๐ฌ๐๐๐ญ๐ข๐จ๐ง๐ฌ โ reserve seats โ charge โ confirm โ notify โ so a declined card releases the held seats and never leaks inventory. ๐๐จ๐ฌ๐ญ๐ ๐ซ๐๐๐๐ runs as a StatefulSet on ๐๐๐ ๐ ๐ฉ๐.
โธ๏ธ ๐๐ฎ๐๐๐ซ๐ง๐๐ญ๐๐ฌ & ๐๐ง๐๐ซ๐๐ฌ๐ญ๐ซ๐ฎ๐๐ญ๐ฎ๐ซ๐ โ ๐๐ฆ๐๐ณ๐จ๐ง ๐๐๐ built from 11 Terraform modules across ๐๐๐ฏ/๐ฌ๐ญ๐๐ ๐/๐ฉ๐ซ๐จ๐: VPC over 3 AZs, public/private subnets, NAT, managed node group, single ๐๐๐ repo, and IAM roles via ๐๐๐๐. Add-ons cover ๐๐๐ ๐๐๐ and ๐ฆ๐๐ญ๐ซ๐ข๐๐ฌ-๐ฌ๐๐ซ๐ฏ๐๐ซ, with ๐๐๐ ๐๐จ๐๐ ๐๐๐ฅ๐๐ง๐๐๐ซ ๐๐จ๐ง๐ญ๐ซ๐จ๐ฅ๐ฅ๐๐ซ, ๐๐ฅ๐ฎ๐ฌ๐ญ๐๐ซ ๐๐ฎ๐ญ๐จ๐ฌ๐๐๐ฅ๐๐ซ, ๐๐ซ๐๐๐๐ข๐ค and ๐๐๐ซ๐ญ-๐ฆ๐๐ง๐๐ ๐๐ซ as Terraform-driven Helm releases. The app layer is 36 Kubernetes objects created directly by Terraform โ Deployments, StatefulSet, Services, Ingresses, PDBs and ๐๐๐๐ฌ (2โ6 pods). State is in ๐๐ ๐ฐ๐ข๐ญ๐ก ๐ง๐๐ญ๐ข๐ฏ๐ ๐ฅ๐จ๐๐ค๐๐ข๐ฅ๐ ๐ฅ๐จ๐๐ค๐ข๐ง๐ โ no DynamoDB.
โ๏ธ ๐๐/๐๐ โ ๐๐ข๐ญ๐๐ฎ๐ ๐๐๐ญ๐ข๐จ๐ง๐ฌ builds all 5 images in a ๐ฆ๐๐ญ๐ซ๐ข๐ฑ, scans them with ๐๐ซ๐ข๐ฏ๐ฒ for HIGH/CRITICAL before publishing, then pushes to ๐๐๐ tagged latest + the Git SHA, so every pod traces to an exact commit.
๐ ๐๐๐๐๐ โ ๐๐๐ซ๐ญ-๐ฆ๐๐ง๐๐ ๐๐ซ + ๐๐๐ญ'๐ฌ ๐๐ง๐๐ซ๐ฒ๐ฉ๐ญ issue free certificates via the ๐๐๐-๐๐ ๐๐ก๐๐ฅ๐ฅ๐๐ง๐ ๐, writing Route 53 records through an IRSA role โ no static keys, no exposed port 80. Traefik terminates TLS, HTTP redirects to HTTPS, certs auto-renew.
๐ ๐๐๐ โ Served on the bare apex domain ๐ฏ๐ข๐ฃ๐๐ฒ๐ ๐ข๐๐ฎ๐ญ๐ก๐ฎ๐ซ๐ข.๐ข๐ง (no subdomain), ๐๐จ๐๐๐๐๐ฒ delegated to ๐๐จ๐ฎ๐ญ๐ ๐๐. Since a CNAME is illegal at a zone apex, it uses an ๐๐๐๐๐ record pointing at the Traefik ๐๐๐ญ๐ฐ๐จ๐ซ๐ค ๐๐จ๐๐ ๐๐๐ฅ๐๐ง๐๐๐ซ.
๐ ๐๐ซ๐จ๐ฃ๐๐๐ญ ๐๐จ๐ฎ๐ซ๐๐ ๐๐จ๐๐ & ๐๐จ๐ง๐ง๐๐๐ญ ๐๐ข๐ญ๐ก ๐๐
๐ ๐๐ข๐ญ๐๐ฎ๐ ๐๐๐ฉ๐จ๐ฌ๐ข๐ญ๐จ๐ซ๐ฒ: https://github.com/vijaygiduthuri/EVE...
๐ผ ๐๐ข๐ง๐ค๐๐๐๐ง: www.linkedin.com/in/vijay-giduthuri-ab9075222
โ๏ธ ๐๐๐๐ข๐ฎ๐ฆ ๐๐ฅ๐จ๐ ๐ฌ: ย ย /ย vijaygiduthuri67ย ย
#DevOps #AWS #Terraform #InfrastructureAsCode #Kubernetes #EKS #Docker #Golang #Microservices #CICD #GitHubActions #Traefik #CertManager #Route53 #CloudNative #DevSecOps #PlatformEngineering