HDFS容量究竟来自何处?以及在节点内部“横向”扩容

  1. 今天在Ambari web界面中注意到警告:
    这里写图片描述
  2. 我去,使用了92%,这还得了?还让不让人学习了?
  3. 最开始我认为是以前朋友将namenode节点也设置为了datanode节点的原因,导致namenode“压力”大。但是细一看,不对啊,也不可能才52.7GB总容量啊,开玩笑呢。
  4. 于是乎怀疑Ambari。。。就去“亲生的”50070一看:
    这里写图片描述
  5. 纳闷了,怎么这么少?然后查看了各个机器的硬盘信息
    这里写图片描述
    这里写图片描述
    发现两个容量小的节点的HDFS容量值和根挂载点的容量相同这里写图片描述
  6. 然后看了看hdfs-site的dfs.datanode.data.dir配置,确实是挂载在/下的。
  7. 考虑修改上述配置项时,看到博文说到:

如果因为设计问题,需要对dfs.data.dir重新指定,则在指定好后,一定要对集群进行重新格式,并且要保证格式化成功,才能保证后续服务的正常启动。这样一来,就会把原有的数据格式化掉

不知道是否说的正确【应该是不正确,hadoop不至于这么傻吧】,为了减少折腾,我还是不修改好了,试下给root扩容吧。


2019/5/20补充:
更简单的办法是设置多个dfs.data.dir
8.

总体过程:

把/home内容备份,然后将/home文件系统所在的逻辑卷删除,扩大/root文件系统,新建/home ,恢复/home内容

1.查看分区信息
df -h
使用vgdisplay可以查看未使用的空间
2.备份home分区文件
tar cvf /tmp/home.tar /home
3.终止使用/home文件系统的进程,卸载/home
fuser -km /home/
umount /home

4.删除/home所在的lv【后来我才知道,可以使用lvreduce -L释放指定大小的空间。但是提示可能会损坏数据
lvremove /dev/mapper/VolGroup-lv_home
这里写图片描述
5.扩展/root所在的lv,增加2048G
lvextend -L +2048G /dev/mapper/VolGroup-lv_root
这里写图片描述
6.扩展/root文件系统
xfs_growfs /dev/mapper/VolGroup-lv_root
报错:这里写图片描述
看来我这里不是XFS文件系统
这里写图片描述
df可以使用参数T查看文件系统类型:
这里写图片描述
centos7之前的版本默认文件系统是EXT4【可扩可缩】,之后是XFS【目前只能扩容】
对于EXT4以及3,2。应该使用resize2fs:
resize2fs /dev/mapper/VolGroup-lv_root【如果改变的容量大,需要些时间】
真的太慢了,要不是我机智的刷新50070端口,我就会认为远程网络不通杀进程了
这里写图片描述
这里写图片描述
这里写图片描述
7.查看未用空间
vgdisplay
这里写图片描述
8.重新创建home lv
lvcreate -L 1617G -n /dev/mapper/VolGroup-lv_home
8. 创建文件系统并挂载
mkfs.ext4 /dev/mapper/VolGroup-lv_home
这里写图片描述
mount /dev/mapper/VolGroup-lv_home /home
df -h检查一波
这里写图片描述
9.home文件恢复
tar -xvf /tmp/home.tar -C /home/
cd /home/home/
mv * …/

最终结果:

  1. 容量
    这里写图片描述
  2. 集群状态:【淡定,毕竟之前有卸载/home】
    这里写图片描述
  3. 重启服务,多谢老天保佑,全部成功!
    这里写图片描述
    目前集群运行正常

如果想移除一个datanode节点:

1.)/etc/hadoop/)下新建excludes文件,并写入待删除DataNode的ip或域名
2.)修改hdfs-site中的dfs.hosts.exclude属性,value值填写1.)中的exclude文件的绝对路径
3.)在NameNode上刷新所有DataNode
移除ataNode之后:系统会重新均衡block,你也可以执行脚本手动均衡:sbin/start-balancer.sh

参考

  1. Linux公社
  2. cnblogs
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值