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

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,启动完之后去查看新磁盘挂载的目录,会发现已经有了东西

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可能有以下几个原因导致hadoopdatanode启动不了: 1. 配置文件错误:检查hadoop配置文件中datanode配置是否正确,比如datanode的端口号是否与其他节点冲突,datanode数据存储路径是否正确等。 2. 硬件故障:检查datanode所在的机器是否正常运行,是否有硬件故障,比如硬盘故障、网络故障等。 3. 权限问题:检查datanode所在的机器是否有足够的权限运行hadoop,比如是否有读写数据的权限等。 4. 资源不足:检查datanode所在的机器是否有足够的资源运行hadoop,比如内存、CPU等。 解决方法: 1. 检查配置文件,确保datanode配置正确。 2. 检查机器硬件是否正常运行,修复硬件故障。 3. 检查权限是否足够,给予足够的权限。 4. 检查机器资源是否足够,增加机器资源。 ### 回答2: Hadoop中的Datanode启动不了,这往往是由于以下原因引起的: 1. 配置问题:可能是由于配置文件中的错误导致Datanode无法启动。因此,要检查hadoop-env.sh,core-site.xml,yarn-site.xml和hdfs-site.xml等文件是否正确配置。 2. 磁盘空间问题:如果在Datanode节点上存储数据的磁盘空间已满,那么Datanode将无法启动。因此,要检查节点上的磁盘空间是否足够。 3. 网络连接问题:Datanode节点需要与其他节点通信,如果网络连接出现问题,Datanode可能无法启动。因此,需要确保网络连接畅通。 4. 权限问题:如果Datanode无法访问Hadoop文件系统,可能会导致启动失败。因此,需要确保Datanode节点有足够的访问权限。 针对以上问题,可以尝试以下解决方法: 1. 检查配置文件,确保配置文件中的细节没有错误。 2. 清理磁盘空间,释放足够的磁盘空间。 3. 检查网络连接,确保网络连接正常。 4. 更新访问权限以确保Datanode节点有足够的访问权限。 如果以上解决方法仍然无法解决问题,还可以尝试重启集群、升级Hadoop版本等方法。 ### 回答3: Hadoop是一个分布式计算框架,它的核心是分布式文件系统HDFS和分布式处理框架MapReduce。在Hadoop中,datanode是HDFS的一个重要组件,负责存储和管理数据块。如果datanode启动不了,会影响整个集群的正常运行。 引起datanode启动失败的原因很多,包括网络故障、磁盘故障、配置错误等。以下是一些常见的解决方法: 1.检查网络连接:datanode需要与其他节点进行通信,如果网络连接出现问题会导致启动失败。可以通过ping命令测试与其他节点的连接是否正常。 2.检查磁盘空间:HDFS需要足够的磁盘空间存储数据块,如果磁盘空间不足或是存在坏块会导致datanode启动失败。可以用df命令检查磁盘使用情况。 3.检查配置文件:Hadoop的各个组件需要正确的配置文件才能正常启动。例如,datanode需要配置dfs.data.dir参数指定数据存储路径。可以检查hdfs-site.xml和core-site.xml文件中的配置是否正确。 4.检查日志信息:在启动datanode时,可以查看日志信息了解启动过程中的错误信息。可以通过hadoop-daemon.sh脚本启动datanode,在启动日志中查找错误提示。 5.清除临时文件:有时由于datanode崩溃或是重启异常会导致一些临时文件残留,这些残留文件可能会影响datanode的启动。可以清除datanode工作目录下的所有临时文件再试一次启动。 总之,datanode启动失败可能是各种问题的综合表现,需要仔细检查并排除各种可能的原因。在排除错误后,应重新启动datanode并尝试监控其运行状态,以确保集群的稳定运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值