Tools and Mini Projects on emphasis on AWS EKS
-
This is not a beginner repo but will help someone who tries to perform/install/operate different tools and technologies.
-
The below is a list of tasks we will perform in this project in the best order.
- Current repo has:
- ArgoCD
- Flux
- Autoscaler
- App deployment
- Create cluster with eksctl (infrastructure with aws cli)
- Craete cluster with terraform
- Helm:
- Prometheus
- Grafana
- Metrics-server
- Nginx-ingress controller
- Cert-manager to auto provision and auto renew certificates for TLS traffic to your services
- HPA for the application
- Ingress for the application
- PVCs for:
- Application
- DB
- Grafana
- Prometheus
- Service for the application
- Road Map: (will be added to the below list)
- Termination handler for spot instances
- Local node DNS cache
- Argo Flux
- Vault
- Consul
- Packer
- Rancher
- Create cluster:
- Create via /eksctl: infrastructure via aws cli manual/script
- Create via /terraform: infrastructure via terraform
- Autoscaler:
- Deploy the autoscaler for k8s ASGs
- Deployments:
- Deploying a sample guestbook app
- Deploying redis master
- Deploying redis slave
- Services:
- Deploying the guestbook service
- Deploying the redis master service
- Deploying the redis slave service
- Persistent Volume:
- Deploying a Persistent Volume Claim for the application
- Deploying a Persistent Volume Claim for the redis master
- Deploying a Persistent Volume Claim for the redis slave
- Helm:
- Deploying nginx ingress controller to expose an LB outside
- Deploy metrics-server for HPA and future monitoring tool usage
- Deploy cert-manager to secure your server using let's encrypt free certificates and auto renew them
- Deploy Prometheus to scrape cluster's and app metrics
- Deploy Grafana to visualize the metrics from prometheus
- HPA:
- Deploy the HPA for our app after the metric-server has been initialized and is running
- ArgoCD:
- Deploy ArgoCD into the cluster
- Deploy your application config file
- Review the ArgoCD UI to examine the pipeline
- Added a helm chart sync demo for metrics-server in /helm folder with instructions
- Flux
- Deploy flux to your cluster for managing the CD pipe