CDH环境下HDFS挂载多硬盘

本文详细记录了解决CDH环境下HDFS服务未能正确挂载所有硬盘的问题过程,包括调整目录权限、清理目录及热加载配置,最终实现HDFS服务稳定运行。

最近在公司实习,使用CDH搭环境,添加HDFS服务发现没有挂载全部的硬盘,查看节点硬盘挂载情况发现:
在这里插入图片描述
硬盘被挂载到了所以目录下,而CDH使用了root用户,所以挂载到/home目录下的硬盘就没有被hdfs检查到,无法挂载到HDFS上。
HDFS可以挂载多目录,所以在hdfs目录下创建dfs目录:

mkdir -p /home/dfs

并将/home/dfs配置到dfs.datanode.data.dir中:
在这里插入图片描述
注意,这里我是将之前的HDFS服务删除了,然后添加目录重新添加HDFS服务,启动服务的时候会格式化HDFS,后来才知道支持热加载:Hadoop集群hdfs添加磁盘操作,是我太狭隘了,人家毕竟这么大一个平台,怎么会不支持热加载,热扩容?
第一次启动失败:
日志也没有明显的错误,查询半天后发现,启动HDFS服务的用户是hdfs,可以在HDFS服务启动时的临时目录里看到配置文件的用户都是hdfs:

cd /var/run/cloudera-scm-agent/process/611-hdfs-DATANODE
ll

在这里插入图片描述
所以,改一下每个节点/home/dfs目录的用户和组试试:

chown 777 -R /home
chown hdfs:hdfs -R /home/dfs

再启动一次,还是失败,再查,看看datanode启动日志吧:
在这里插入图片描述
尼玛,找到问题了,上一次启动时由于NameNode启动了,会分配Cluster ID,但是DataNode没有启动成功,就不会分配ID。这一次启动时,系统发现NameNode有Cluster ID就不再分配,而DataNode没有ID就分配一个,两个ID不一样,就不行了。
所以将/dfs/nn和/dfs/dn以及/home/dfs/dn目录都要清空!
再一次启动,搞定!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值