Thanos Deployment¶
Thanos Deployment Overview
We use kube-thanos to deploy Thanos components in this project.
Warning
When deploying Thanos in Kubernetes, Ruler would hit "too many open files" error. The reason is minikube's default fs.inotify.max_user_instances is 128, which is too small. Hence we need to increase it.
First, ssh into minikube VM:
Inside minikube VM, check the current value of fs.inotify.max_user_instances, fs.inotify.max_user_watches, and file-max
Output should be like below:
Increase fs.inotify.max_user_instances to 1024 by running the following command:
After that, you can exit minikube VM:
This shell script will install Thanos components in thanos namespace. Specifically, it will install:
- Prometheus Operator
- Cert Manager
- OpenTelemetry Operator
- Jaeger v2 using OpenTelemetry Operator for tracing
- Thanos components using kube-thanos jsonnet (excdpt Thanos Ruler)
- Prometheus Alertmanager and Thanos Ruler using Prometheus Operator