All resources applied to the Kubernetes cluster provisioned with Terraform are declared in this repository.
Each application/tool is defined as an ArgoCD application.
ArgoCD receives webhook requests about updates in this repo, and applies changes in Kubernetes.
CV:
- ArgoCD - GitOps
- Cert Manager - Provisions Letsencrypt certificates used by ingress
- Elastic Cloud on Kubernetes (ELK stack) - Search, log aggegation
- Fluentd - Getting logs from containers to Elasticsearch
- ingress-nginx - Load balancer, nginx reverse proxy
- kube-prometheus-stack - Monitoring, alerts
- metrics-server - Get metrics from pods, nodes, etc.
- mysql - Database, usually I tend to use managed databases
- sealed-secrets - Store secrets in repo. Decode in Kubernetes.