Skip to content

Repository files navigation

☁️ Cloud-Native Platform Engineering on AWS

A production-inspired Platform Engineering project demonstrating Infrastructure as Code (IaC), GitOps, Kubernetes, and Observability on AWS.


📖 Project Overview

Modern Platform Engineering focuses on building and maintaining the internal platforms that enable developers to ship software quickly, reliably, and securely.

This project demonstrates a production-inspired cloud-native platform built on AWS using Infrastructure as Code, GitOps, Kubernetes, and modern observability tools.

The platform provisions infrastructure with Terraform, deploys containerized applications to Amazon EKS through ArgoCD and Helm, stores container images in Amazon ECR, and provides centralized monitoring and logging using Prometheus, Grafana, and Loki.

The objective is to showcase end-to-end platform engineering practices, including reproducible infrastructure provisioning, declarative application delivery, and operational visibility across a Kubernetes environment.


🏗 Architecture

Platform Architecture


⭐ Key Highlights

  • Provisioned AWS infrastructure using Terraform
  • Built a production-inspired Amazon EKS Kubernetes platform
  • Implemented GitOps deployment workflows using ArgoCD
  • Packaged and deployed applications with Helm
  • Containerized a Spring Boot microservice using Docker
  • Stored container images in Amazon ECR
  • Implemented centralized metrics collection using Prometheus
  • Built Grafana dashboards for platform observability
  • Centralized Kubernetes logs using Loki
  • Designed a reproducible and cloud-native deployment workflow

🛠 Technology Stack

Category Technology
Cloud AWS
Infrastructure as Code Terraform
Containerization Docker
Container Registry Amazon ECR
Container Orchestration Amazon EKS (Kubernetes)
GitOps ArgoCD
Package Management Helm
Monitoring Prometheus
Visualization Grafana
Logging Loki
Backend Spring Boot
Language Java 21
Build Tool Maven

🚀 Platform Workflow

Developer
      │
      ▼
Spring Boot Application
      │
      ▼
Docker Build
      │
      ▼
Amazon ECR
      │
      ▼
Update GitOps Repository
      │
      ▼
ArgoCD
      │
      ▼
Helm
      │
      ▼
Amazon EKS
      │
      ▼
Running Application
      ├────────► Prometheus (Metrics)
      ├────────► Loki (Logs)
      ▼
Grafana (Dashboards)

📂 Repository Structure

.
├── docs/
│   ├── architecture/
│   └── screenshots/
├── src/
├── Dockerfile
├── pom.xml
├── README.md
└── ...

⚙️ Features

Infrastructure

  • Infrastructure provisioning using Terraform
  • Amazon VPC networking
  • Amazon EKS cluster deployment
  • Managed Kubernetes worker nodes
  • Remote Terraform state management

GitOps

  • Declarative Kubernetes deployments
  • Continuous synchronization using ArgoCD
  • Helm-based application releases

Application Platform

  • Dockerized Spring Boot microservice
  • Container image management with Amazon ECR
  • Kubernetes-native deployments

Observability

  • Metrics collection with Prometheus
  • Dashboard visualization using Grafana
  • Centralized logging with Loki

📸 Screenshots

Architecture

Architecture


ArgoCD

ArgoCD


Grafana Dashboard

Grafana


Prometheus Targets

Prometheus


Loki Logs

Loki


Amazon EKS Cluster

Amazon EKS


Amazon ECR Repository

Amazon ECR


🧠 Challenges & Lessons Learned

Building this platform involved solving several real-world platform engineering challenges, including:

  • Configuring IAM permissions for the Amazon EBS CSI Driver
  • Troubleshooting Kubernetes Persistent Volume provisioning
  • Resolving ArgoCD synchronization issues
  • Fixing Docker image architecture incompatibilities between Apple Silicon and Amazon EKS
  • Managing Helm chart configurations for GitOps deployments
  • Integrating Prometheus, Grafana, and Loki into the Kubernetes platform
  • Understanding Kubernetes networking and service discovery
  • Debugging cloud-native infrastructure deployments

These challenges provided practical experience with production-inspired cloud infrastructure, Kubernetes operations, and modern platform engineering workflows.


🎯 Skills Demonstrated

  • Platform Engineering
  • DevOps
  • Cloud Infrastructure
  • Amazon Web Services (AWS)
  • Kubernetes
  • Amazon EKS
  • Infrastructure as Code (IaC)
  • Terraform
  • GitOps
  • ArgoCD
  • Helm
  • Docker
  • Amazon ECR
  • Monitoring & Observability
  • Prometheus
  • Grafana
  • Loki
  • Spring Boot
  • Java
  • Linux
  • IAM
  • Kubernetes Networking
  • Troubleshooting

🛣 Roadmap

✅ Completed

  • Infrastructure provisioning with Terraform
  • Amazon EKS Kubernetes cluster
  • Dockerized Spring Boot application
  • Amazon ECR integration
  • Helm-based application deployment
  • GitOps workflow using ArgoCD
  • Prometheus monitoring
  • Grafana dashboards
  • Loki centralized logging

🚧 Planned Enhancements

  • GitHub Actions CI/CD pipeline
  • Automated image deployment
  • Container image security scanning
  • Kubernetes policy enforcement
  • Multi-environment deployments (Dev / Stage / Prod)
  • Secrets management
  • Ingress Controller
  • Horizontal Pod Autoscaler (HPA)
  • AI-assisted operational workflows

📚 Future Learning Goals

This project will continue evolving with additional production-grade capabilities, including automated CI/CD, platform security, Kubernetes policy management, and multi-environment deployment strategies.


👨‍💻 Author

Rahul Motghare

Platform Engineer • DevOps Engineer • Cloud Infrastructure


⭐ Support

If you found this project interesting, feel free to explore the repository, review the architecture, or connect with me on LinkedIn.

About

Production-inspired Platform Engineering project on AWS using Terraform, Amazon EKS, ArgoCD, Helm, Prometheus, Grafana, Loki, and Spring Boot.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages