tiup 如何为现有节点添加机器监控

使用tiup部署集群的时候没有添加monitored段,如下:

monitored:
node_exporter_port: 11000
blackbox_exporter_port: 12000
deploy_dir: /tidb-deploy/deploy/monitored-11000
data_dir: /tidb-data/data/monitored-11000
log_dir: /tidb-data/monitored-11000/log

现在想给集群得所有节点添加上机器的监控,有什么方式可以实现呢?

是指的这个手工部署监控么?

https://docs.pingcap.com/zh/tidb/stable/deploy-monitoring-services

这样应该可以,但是这样太麻烦啦,tiup不知道能不能像ansible一样,对现有节点deploy部分组件

比如我在ansible的配置文件添加如下配置
[monitored_servers]
monitor-1 ansible_host=xxx
monitor-2 ansible_host=xxx
monitor-3 ansible_host=xxx

然后 ansible-playbook -i inventory.ini -l monitor-1,monitor-2,monitor-3 deploy.yml 就可以给对应机器部署监控了

现在tiup想尝试这么搞发现不知道怎么搞

你那边是什么版本?

tiup v1.5.3
tidb 4.0.13

是升级的时候没有添加监控么?还是全新部署的时候没有加监控?

全新部署忘了加,当时第一次使用tiup,没有关注这个

那是否在这里修改配置参数就可以了?

https://docs.pingcap.com/zh/tidb/stable/maintain-tidb-using-tiup#修改配置参数

试过了,加上这段后,reload的时候失败

提示什么错误?

把monitored的配置单独写一个yaml文件然后用tiup scale-out试试看能行不

先用默认端口试一下

这个最开始就试了,不行的

父级目录已经创建好了,也给了tidb用户的权限了

可以尝试下从现有的部署架构相同的其他集群上,将 blackbox_exporter 和 node_exporter 的完整的二进制文件、配置文件、目录以及 /etc/systemd/system 目录下自启的 service 文件拷贝到指定的路径里,然后在集群的配置文件添加最上面的 monitored 部分内容(直接修改 .tiup/storage/cluster/clusters/{cluster-name}/meta.yaml ),最后重新 reload 一遍,我没实际测试过,如果是测试环境的话你可以尝试下能否成功;生产环境还是直接手工部署监控吧,参考:https://docs.pingcap.com/zh/tidb/stable/deploy-monitoring-services#tidb-集群监控部署

官方是不是开发个tiup部署exporter的功能,这样就更方便了

可以去 github 上提交一个需求 :smiley:

后面我抽空测试了下,发现使用 tiup ( v1.6.0 )部署新集群未指定 monitored 配置时,集群会使用默认端口部署 blackbox-exporter & node_exporter ,在集群成功启动之后,可以通过 scale-out 方式部署 prometheus/grafana/altermanager 组件 。

2 个赞

:+1::+1::+1: