HDFS多目录配置

1. NameNode多目录配置

(1)NameNode的本地目录可以配置成多个,且每个目录存放内容相同,增加了可靠性

 

 

(2)具体配置如下

 1)在hdfs-site.xml文件中添加如下内容

 

 

<property>
     <name>dfs.namenode.name.dir</name>
     <value>file://${hadoop.tmp.dir}/dfs/name1,file://${hadoop.tmp.dir}/dfs/name2</value>
</property>

 

注意:因为每台服务器节点的磁盘情况不同,所以这个配置配完之后,可以选择不分发

 

 2)停止集群,删除三台节点的data 和 logs中所有数据

    rm -rf data/ logs/

 

 3)格式化集群并启动

    bin/hdfs namenode -format

    sbin/start-dfs.sh

 

 4)查看结果

 

 

 

2.DataNode多目录配置

(1)DataNode可以配置成多个目录,每个目录存储的数据不一样(数据不是副本)

 

 

 

(2)在hdfs-site.xml文件中添加如下内容

<property>
     <name>dfs.datanode.data.dir</name>
     <value>file://${hadoop.tmp.dir}/dfs/data1,file://${hadoop.tmp.dir}/dfs/data2</value>
</property>

 

 

 

 

 

3.集群数据均衡之磁盘间数据均衡

 

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性)

 

 

(1)生成均衡计划(我们只有一块磁盘,不会生成计划)

    hdfs diskbalancer -plan主机名

 

(2)执行均衡计划

    hdfs diskbalancer -execute 主机名.plan.json

 

(3)查看当前均衡任务的执行情况

    hdfs diskbalancer -query 主机名

 

(4)取消均衡任务

    hdfs diskbalancer -cancel 主机名.plan.json

 

posted @ 2022-07-29 20:02  小王同学学编程  阅读(260)  评论(0编辑  收藏  举报
levels of contents