Skip to content

Instantly share code, notes, and snippets.

@lioneltchami
Created October 7, 2024 18:24
Show Gist options
  • Select an option

  • Save lioneltchami/8a724c21823f66329d2f0679cd2c8464 to your computer and use it in GitHub Desktop.

Select an option

Save lioneltchami/8a724c21823f66329d2f0679cd2c8464 to your computer and use it in GitHub Desktop.
  1. Developer Workstations

    • Developers commit code to a GitHub repository.
  2. Continuous Integration

    • Jenkins pulls the latest code from GitHub.
    • Builds and tests the application.
    • Creates Docker images and pushes them to Amazon ECR.
  3. Infrastructure as Code

    • Terraform provisions AWS infrastructure:
      • VPC
      • IAM Roles and Policies
      • EKS Cluster
      • RDS
  4. Continuous Deployment

    • Jenkins deploys Docker images to EKS.
    • Istio manages traffic between microservices.
  5. Service Mesh

    • Istio provides traffic management, security, and observability.
    • Ingress Gateway manages external access.
  6. Monitoring and Logging

    • Prometheus collects metrics.
    • Grafana visualizes metrics.
    • Fluentd centralizes logging.
    • Alertmanager integrates with Prometheus for alerting.
  7. Continuous Feedback

    • Alertmanager sends notifications.
    • Jenkins provides feedback to developers.

Diagram Components

  • 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment