gtctl
gtctl copied to clipboard
Support to deploy prometheus stack for greptimedb observability
Background
When starting a greptimedb cluster, we always want to observe it through metrics and visualize them using Grafana. The doc shows some deploying details:
- Start the GreptimeDB;
- Start the Prometheus(maybe we can run another greptimedb instance in the future);
- Start the Grafana;
- Import the Grafana dashboard(not in the doc);
It's not convenient to deploy Prometheus and Grafana separately.
In my opinion, maybe we can integrate the process into gtctl. For example, we can add the cli options --deploy-prometheus
and --deploy-grafana
:
gtctl cluster create mydb \
--deploy-prometheus \
--deploy-grafana
After the deployment, we can open the URL link to observe the GreptimeDB.
Challenges
We can reuse the code of deploying GreptimeDB to deploy the Prometheus stack. For example:
- For bare-metal mode, we can download the binary of
prometheus
andgrafana
and then start the deployment; - For K8s mode, we can download the chart to deploy the Prometheus stack;
However, we still need to:
- Make the original code clean and have a good interface to reuse. Maybe it still has some refactoring work to do;
- Don't make the deployment too complicated to use. The whole developer experience must be as smooth as we can;
I'd like to work this issue, can you assign to me and provide more context?
@JetSquirrel That's great 😊! I appreciate you taking this on.
I have added background and challenges to the original issue. Is the entire issue clear enough for you?
@zyy17 great! I think it's enough. Thank you for providing me information. I'd like to try. Please assign to me.
@JetSquirrel already assigned. Feel free to ask if you have any questions 🤝!