hadoop datanode数据存储多路径配置方式

本文介绍了如何修改HDFS配置,实现数据节点(Datanode)上的多磁盘数据分布。通过设置`dfs.datanode.data.dir`,可以指定多个数据目录,并使用`dfs.datanode.fsdataset.volume.choosing.policy`配置策略,根据磁盘剩余空间选择写入位置。此外,`dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold`和`dfs.datanode.available-space-volume-choosing-policy.balanced-space-preference-fraction`参数用于控制磁盘空间平衡策略。记得只在增加新磁盘的节点上分发配置文件,避免启动错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、首先修改 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>

2、修改datanode写入策略,该配置默认是轮训,我们要改为以剩余空间考虑写入某块磁盘

<property>  
	<name>dfs.datanode.fsdataset.volume.choosing.policy</name>  
	<value>org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy</value>  
</property>

当然我们配置的写入路径并不是一定的,会有两个配置决定具体的策略

dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold
该配置默认10G,具体配置值以字节为单位,表示当集群所有的存储数据磁盘中最大与最小两块盘的剩余容量在10G以内就是用轮训策略

dfs.datanode.available-space-volume-choosing-policy.balanced-space-preference-fraction
该配置默认0.75f,表示有多少比例的数据副本存放在其他剩余空间多的磁盘中

3、将配置文件分发所有结点,分发的时候注意,只有配置了新磁盘的结点才需要分发,没有新增磁盘的不要分发,不然会报一个磁盘检查错误

配置结束正常启动集群就好了,注意正常启动!!不需要格式化namenode,启动完之后去查看新磁盘挂载的目录,会发现已经有了东西

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值