使用 pd-recover 恢复 pd 多数节点故障的场景
作者: 信仰在空中飘扬原文来源:https://tidb.net/blog/b6835782
1. 实验环境:
A 机房: 2 个 pd , B 机房: 1 个 pd
将三个 pd 节点其中两个 kill 掉 (模拟 A 机房挂掉),然后删除数据目录, 使用剩下的一个 pd-server 通过 pd-recover 来恢复服务
2. 实验流程:
故障后的状态如下图
a. 使用 tiup 下载 pd-recover 软件
复制代码
b. 获取 cluster-id & idAllocator
复制代码
– 去每个 pd 日志目录下获取 idallocator
复制代码
c. 停止旧的 pd 集群的数据目录 (包括还存活的那个 pd 节点)
复制代码
e. 创建新的集群
模拟的情况是 A 机房挂了, 此处假设在 B 机房有相同的 tiup 备份数据
重新启动 pd 节点: tiup cluster start tidb-louis_cluster -N 192.168.149.156:2391
f. 使用 pd-recover
复制代码
g. 强制删除故障的两个节点
复制代码
k. 重启整个集群
复制代码
此时集群使用一个 pd 节点提供服务
此处只是模拟两个 pd 节点故障的恢复场景,最终目的是 在 A 机房挂掉后,使用 pd-recover 恢复 pd 服务,
使用 tikv-clt 强制恢复剩下的一个 tikv 节点对外提供服务,后续整体的测试流程完善后再上传。
版权声明: 本文为 InfoQ 作者【TiDB 社区干货传送门】的原创文章。
原文链接:【http://xie.infoq.cn/article/04cb5caacd7e4b732fccab959】。文章转载请联系作者。
评论