-
Developer Workstations
- Developers commit code to a GitHub repository.
-
Continuous Integration
- Jenkins pulls the latest code from GitHub.
- Builds and tests the application.
- Creates Docker images and pushes them to Amazon ECR.
-
Infrastructure as Code
- Terraform provisions AWS infrastructure:
- VPC
- IAM Roles and Policies
- EKS Cluster
- RDS
- Terraform provisions AWS infrastructure:
-
Continuous Deployment
- Jenkins deploys Docker images to EKS.
- Istio manages traffic between microservices.
-
Service Mesh
- Istio provides traffic management, security, and observability.
- Ingress Gateway manages external access.
-
Monitoring and Logging
- Prometheus collects metrics.
- Grafana visualizes metrics.
- Fluentd centralizes logging.
- Alertmanager integrates with Prometheus for alerting.
-
Continuous Feedback
- Alertmanager sends notifications.
- Jenkins provides feedback to developers.
- GitHub: Version control and source code repository.
- Jenkins: CI/CD server for automation.
- Docker: Containerization tool.
- Terraform: Infrastructure provisioning.
- Amazon ECR: Docker image repository.
- Amazon EKS: Kubernetes service.
- Istio: Service mesh management.
- Prometheus & Grafana: Monitoring stack.
- Fluentd: Centralized logging solution.
- Alertmanager: Manages alerts.
- Amazon CloudWatch: Logging and monitoring service.