希望tiup能在集群新建,扩缩容等集群节点变更的时候提供钩子功能,方便及时更新类似cmdb,告警采集等信息。
不知go中有没钩子
给你挪到产品需求分类中去
prometheus 不是已经接入了这些信息么?
tiup 是个命令行操作,你需要通过监控手动命令获取相关的信息么?
顶楼上,对接prometheus,在prometheus上执行query所获得的状态变更,更灵活一些。再一个,可能不用钩子,写个shell脚本是不是也就办了。
我是想将所有的集群监控汇总到一套监控系统,tidb本身的prometheus采集指标并没有带上集群信息,而是通过告警rules里显示制定了集群名称,这不通用。
tiup目录下是有meta文件,这是每个集群最完整的topo信息,如果这个变更能及时的修改cmdb,告警元数据等信息,那么变更结束后就不会有短时间的类似tidb down,tikv down的告警出来。
tiup集成一个hook并不是很麻烦的事情。
类似shell脚本等,在tiup变更结束后还是有时间差的。这段时间有可能会产生缩容节点的告警出来。因为判断实例是否down,是通过blackbox exporter的tcp ping判断的。
你可以参考一下这个…
官网上也有 API 打通的方案
https://docs.pingcap.com/zh/tidb/stable/grafana-monitor-best-practices#技巧-7使用-prometheus-的-api-接口获得表达式的结果
好的,我看下,多谢。
不好意思,我看了下文档,第一个文档是写了如何将多个集群共用一套prometheus和grafana,这个我已经实现了。但是文档里并没有写如何自动化更新prometheus文件。共用一套监控系统得确保元数据或者配置文件是实时并准确的。目前我能想到的比较好的方式是,tiup变更集群拓扑之后调用钩子重新解析meta文件,生成最新的拓扑信息。因为后续的变更我们也想白屏化。
第二个文档,我通过自定义prometheus里的rules实现了。这个问题不大。
现在我可以通过&& 命令去实现。
嗯嗯,现在我可以暂时通过&& 命令去实现。