Manager诊断树——挂载链断裂问题排查方案

  原理, 故障排查指南
内容纲要

概要说明

第一,什么是挂载链

首先阅读文档:

TDH 5.x / TDH 6.x数据盘挂载原理

其中pod的/vdir目录 、到物理机的根目录的/transwarp目录、再到物理机的/mnt下的数据磁盘目录 ,这个过程一般就称为挂载链

后面那一步是用类似这样的mount –bind这样的操作:

mount --bind /mnt/disk1/hadoop/data /transwarp/mounts/hdfs1/mnt/disk1/hadoop/data

第二,什么是挂载链断裂

当服务的数据盘损坏、重新挂载等操作之后,应确保bind mount的重新正确建立,请参考这个帖子http://support.transwarp.cn/t/tdh5-x/2097。

如果bind mount建立不正确,会导致容器里写的数据实际写入了主机的根分区。

详细说明


1、挂载链断裂问题排查方法

TDH集群中,findmnt 命令可以看到实际的挂载信息

举个例子:

下图中,findmnt | grep kmq 命令可以看到,kafka的数据目录/transwarp/mounts/kafka1/mnt/disk2/hadoop/kmq 被挂到了 /dev/mapper/centos-root上,也就是根分区上

表明kafka的挂载链出了问题
file

再比如findmnt | grep search 可以看到,search的挂载链也有问题

file

正常情况下应该是挂载到数据盘上:
file

2、挂载链断裂问题解决方案

1、停止所有挂载链有问题的服务;

2、查看哪些目录是误挂载到根目录,备份这些目录的数据;

3、umount掉这些错误的挂载链;

4、manager界面配置一下挂载有问题的服务,然后还需要检查下fstab文件;

5、确认各个节点数据目录挂载链更新正确的情况下,把原有备份数据拷贝进各自目录;

6、界面启动服务;

第五步中,目前yarn/search/slipstream/kafka/inceptor/hdfs/txsql 等这些服务都可以采用下面的方案来直接将备份的数据恢复:

PS: 应该用cp -rp
![Uploading file…]()

holodesk目前不确定是否可以这样操作

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。