A production-ready microservices application deployed on AWS using Infrastructure as Code (Terraform), configuration
management (Ansible), container orchestration (Kubernetes), and automated CI/CD (Jenkins for CI, Ansible for CD).
Overview
The vProfile application is a Java-based web application deployed as microservices on a Kubernetes cluster running on AWS EC2 instances. The infrastructure is fully automated using Terraform for provisioning and Ansible for configuration management. The application uses MySQL for data persistence, RabbitMQ for message queuing, and Tomcat for serving the web application.
Key Features
Infrastructure as Code: Complete AWS infrastructure provisioned with Terraform
Automated Configuration: Ansible playbooks for Kubernetes cluster setup and application deployment
Container Orchestration: Kubernetes cluster with StatefulSets, Deployments, and Services
CI/CD Pipeline: Jenkins for Continuous Integration (building Docker images), Ansible for Continuous Deployment (deploying to Kubernetes)
Security: Encrypted sensitive data, security groups, private subnets, and IAM roles
Monitoring: Grafana dashboards for cluster and application monitoring
High Availability: Load balancing, auto-scaling, and persistent storage