datanode部署目录丢失

背景:hdfs的datanode的部署目录丢失情况,如何将dn节点重新加入hdfs集群

测试流程

1、将datanode的部署目录datanode 改成datanode.bak作为备份

2、启动挂了的datanode报错

FAQ-data部署目录删除恢复方式 - 图1

3、经验证,手动将丢失的目录创建出来,并拷贝其他dn的配置配置文件,需要修改地方太多,可能会有遗漏,不能保证修改后dn就正常,所以手动创建部署目录和拷贝配置文件的方案风险太大

4、直接点击删除是无法删除

FAQ-data部署目录删除恢复方式 - 图2

5、可以使用强制删除(强制删除数据目录不会被删除,需要手动将之前dn的数据目录改个名称,防止后续扩容目录重名)

数据盘所在的目录(如下图)

FAQ-data部署目录删除恢复方式 - 图3

强制删除dn(如下图)

FAQ-data部署目录删除恢复方式 - 图4

6、 登录到两台nn所在的机器

到config目录修改dfs.include.json文件,将下线dn信息去掉

cd /usr/easyops/hdfs/xxxx_namenode/config

备份文件

cp dfs.include.json  dfs.include.json.bak

修改文件,将下线dn的信息去掉 注意:两台nn节点的配置文件dfs.include.json都需要修改

vim dfs.include.json

到主nn节点执行

hdfs dfsadmin -refreshNodes

验证:到nn节点的web页面查看dn节点的信息还是否存在

FAQ-data部署目录删除恢复方式 - 图5

7、dn扩容

点击组件扩容

FAQ-data部署目录删除恢复方式 - 图6

勾选需要扩容的机器,配置组和已有的dn保持一致,点击开始安装

FAQ-data部署目录删除恢复方式 - 图7

8、等待扩容完成

FAQ-data部署目录删除恢复方式 - 图8