heketi集群查询不到Glusterfs集群信息

文章描述了一个Heketi集群无法查询到Glusterfs集群信息的问题,原因是heketi.db文件未在所有节点共享。在master1节点重启后,由于其他节点的db文件丢失,导致新生成的db文件缺乏卷信息。解决方案涉及备份和比较db文件,将旧的集群信息导入新的db文件,然后替换并重启服务,最终恢复了原有的卷信息和挂载设置。
摘要由CSDN通过智能技术生成

heketi集群查询不到Glusterfs集群信息
问题描述:heketi集群查询不到Glusterfs集群信息、通过命令查询不到heketi集群信息、
通过查看集群信息,没有查到、排查问题、集群三个节点 查看就master1节点挂在共享glf的卷、master2和master3节点的/var/lie/heketidb文件没有挂在文件系统。所以不能共享卷文件。导致了heketi.db文件没有共享。
master1节点挂了、pcs把集群vip和服务都再master3节点拉起来、master3节点的heketi服务的目录没有挂在共享卷,db文件没有共享,导致了master3节点找不到db文件,从而导致master3节点再/var/lib/heketidb目录下生产了新的db文件。最后排查新生成的db文件替代了旧的db文件来管理heketi集群。

中间我的操作:master1节点夯机重启之后 我没有发现2和3节点没有挂在文件  有切换成1节点,查询没有信息,重启导入了拓扑文件、重新生成了新的heketi集群信息、但是没有卷信息,只有机器id和ip以及一些基础信息(最后我查询以及询问其他人 我的这个操作不会产生影响)

解决办法:、
备份目前的db文件
然后把db文件使用命令生成对应的json文件。
heketi db export --dbfile /root/heketi.db --jsonfile /tmp/q.json   
把旧的和新的db文件都生产json文件、对比文件,查看新的db文件生成的json里没有卷信息、 生成了新的db数据库的id。最后把旧的集群信息替换到新的db文件生成的json文件中。

最后在替换完成最新的json生成db文件
heketi.db heketi db import --dbfile heketi.db --jsonfile /tmp/q.json
把新生成的db文件放到/var/lib/heketidb文件下替换旧的db文件
重启服务,使用命令heketi-cli topology info 查询到原来的数据信息

挂在目录对应的文件系统、我是Glusterfs集群生成的一个卷三副本。我是1节点挂在2节点的副本卷、2节点挂在3的、3节点挂在1节点。写入了/etc/fstab文件下,最后设置成网络设备写法是defaults,_netdev  这样就不会在主机重启之后挂在不上问题了
 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值