TiDB 监控节点扩缩容操作(是否保留历史数据)
作者: Liuhaoao 原文来源:https://tidb.net/blog/adb8242d
最近在扒官方文档的时候,发现只有扩缩容 tikv/pd/tidb/tiflash/ticdc 的步骤,并没有讲扩缩容 Prometheus/alertmanger/grafana 的操作步骤,就想到凭借自己的经验写一篇文章出来,供大家参考。由于本人学识浅薄,难免会有疏漏或错误的地方,还望各位路过的大佬不吝赐教 (抱拳!)
缩容监控节点,会涉及到一个问题:是否保留监控数据。至于监控数据存存放位置、怎么保留这部分内容我先单独拿出来讲讲,以防后续在看具体操作步骤的时候会有很凌乱的感觉。
1、监控数据存放位置查看方法:
数据存放位置(因为我集群是默认部署,所以存放位置也是默认位置。如果自定义部署目录的话,数据存放位置也会变,不同的集群会有很大的区别,所以这里主要是讲方法):
1.1、查看 Prometheus 部署路径:
1.2、进入 Prometheus 部署目录,可以看到一个 scripts 目录,存放了 Prometheus 启动脚本:
1.3、查看脚本,可以看到其中有 –storage.tsdb.path 这一项,对应的目录就是监控数据存放地址:
还有一种方法也可以查看监控历史数据存放位置:
在进程中查看
对应目录为监控历史数据存放位置
2、备份历史数据
2.1、进入该目录(这一步也是决定缩容监控节点后历史监控数据是否保留的操作),备份历史监控数据:
2.2、因历史数据量较大(默认保留 30 天的历史数据:–storage.tsdb.retention=“30d”,因为我的测试集群新搭建不久,也没什么数据量,所以数据并不是很多),所以进行压缩:
2.3、将压缩文件拷贝到备份目录,至此完成 Prometheus 历史数据备份:
-————————————————————– 割 ————————————————————-
上边完成了 Prometheus 历史数据存放位置及备份的讲解,接下来就该进入正题:缩容监控节点操作
1、查看集群现有节点,确认需要缩容节点(自己部署用于测试的小集群,受限于硬件资源,只能单节点部署):
2、确认需缩容的节点信息:
172.21.0.8:9093、172.21.0.8:3000、172.21.0.8:9090 三个节点
3、缩容前备份数据(参考文章开头的操作步骤)(如无需保留历史数据,则忽略这一步操作)
4、执行缩容操作:
5、查看缩容后集群节点信息,尝试访问 grafana,确认缩容符合预期:
可以看到集群中现在只有 tidb、tikv、pd 节点,监控节点已经缩容掉
尝试访问 grafana:
可以看到 grafana 已经无法访问,至此缩容操作完成
-————————————————————– 割 ————————————————————-
至于扩容集群监控节点,与其他扩容操作步骤类似,区别就在于多了导入监控数据这一步
扩容集群监控节点:
1、编辑扩容文件:
2、执行扩容命令:
3、扩容已经完成,查看集群扩容后节点信息:
监控节点已扩容完成
尝试访问 grafana:
grafana 已经能够访问,但是只有集群监控节点扩容完成后的监控数据,并没有历史监控数据,这时候就需要我们文章开头备份的集群历史监控数据了
4、将备份的集群历史数据导入新部署的集群监控:
因为我们只需要集群的历史数据,所以将备份中历史数据文件导入新集群的监控数据存放目录即可
4.1、将备份历史数据解压缩:
4.2、将数据文件拷贝到新集群的监控数据存放目录
5、reload 集群,使新集群加载导入的历史数据文件
6、尝试访问 grafana 监控,时间选择 7day,检验历史数据文件导入是否生效
历史数据导入成功,至此扩容集群监控节点及历史数据导入完成
回顾整个缩容过程,最容易出现问题的步骤就是不会考虑到保留历史数据,这一步其实是很重要重要的,比如说集群需要调整 new_collations_enabled_on_first_bootstrap 这个参数,只能考虑重新部署集群(version<=6.0),这时候就需要在销毁集群前将历史监控数据备份,集群重新部署完成后将历史监控数据再恢复,如果没有备份历史监控数据,就可能会有问题。就备份历史数据而言,其实操作起来很容易,只需将数据备份,导入到监控数据存放目录,然后 reload 即可。
以上就是缩容监控节点及历史监控数据备份恢复的操作步骤,希望对大家有所帮助。
版权声明: 本文为 InfoQ 作者【TiDB 社区干货传送门】的原创文章。
原文链接:【http://xie.infoq.cn/article/c32f1941f4ae05b45af1ec023】。文章转载请联系作者。
评论