TiDB在更新版本的时候初始化Prometheus的配置文件失败
作者:互联网
一、背景是更换版本了之后,按照正常扩容节点也会报错。
我们安装的TiDB版本是v4.0.0,因为环境还在试用阶段,所以会经常增删节点。原因是我们违背官方说明,强行用机械盘上了,跑不过单机的mysql,所以加了很多tikv节点,一共8个。每次都很顺利,而且在grafana也会调整展示增删的节点。这次因为性能和PD面板功能的原因,我升级到了v4.0.7版本,
tiup cluster upgrade lgdb v4.0.7
升级的时候也没有报错。但是我在扩容PD的时候就报错了,
tiup cluster scale-out lgdb scale-out-pd.yaml
因为处理问题的时候比较紧急,这博文是事后写的,所以无法截图保留。扩容的配置文件。
cat scale-out-lg-pd.yaml pd_servers: - host: 10.3.22.128
我以为有报错是不成功的,又执行了一下扩容命令,报的是端口冲突的错误,然后我觉得可能扩容成功的了。就查看了一下集群状态。
tiup cluster display lgdb
发现节点有了,只是在grafana那里没有展示。后来我又扩展了tikv,也是报同样类似的错误:init config failed,下图是我Google的历史记录,不过完全没有参考。
二、重现错误。
尽管该集群是使用,我也不能耽搁其他同事的使用,我就又搭了一个环境来复现这种错误。
tiup cluster deploy tidb v4.0.0 ./topology.yaml --user tidb --skip-create-user
仍然是v4.0.0版本,然后升级到v4.0.7版本。然后改名,
tiup cluster rename tidb njdb
终于也报 init config failed 了,同时也有结论了,果然是版本引起无法初始化Prometheus的配置文件。然后我可以在测试的TiDB集群上调试,寻找最合理的及决方案。
三、问题的解决。
首先避免不了一通百度、Google,完全没有相关描述,倒是有人遇到同样的问题,但是没人回答,后来我回答了。首先在Prometheus节点上的日志,也只是说 init config failed ,并没有说明原因。就到看节点的配置文件。什么重启节点,重启集群,修改中控机的配置文件……全部都试过了,还是没用。也想到了回退版本,幸好没有用到。最后在看官方文档,无意中发现tiup客户端需要更新。然后我就更新了tiup客户端。
tiup update cluster
然后执行重载配置,
tiup cluster reload njdb
终于成功了。
标签:配置文件,tiup,v4.0,cluster,Prometheus,版本,TiDB,节点 来源: https://www.cnblogs.com/hodge01/p/14511058.html