HDFS中DataNode的配置主要涉及存储路径、端口、线程数等参数,以下是关键配置说明及操作示例:
数据存储路径
hdfs-site.xml
dfs.datanode.data.dir
<property>
<name>dfs.datanode.data.dir</name>
<value>/data1/hdfs/dn,/data2/hdfs/dn</value> <!-- 多磁盘路径 -->
</property>
磁盘故障容忍度
dfs.datanode.failed.volumes.tolerated
1
,允许1块磁盘故障。端口配置
dfs.datanode.address
(默认0.0.0.0:50010
)dfs.datanode.http.address
(默认0.0.0.0:50075
)性能调优参数
dfs.datanode.max.transfer.threads
(默认4096
,高并发场景可调整为8192
)dfs.datanode.balance.bandwidthPerSec
(默认1MB/s
,调大可加速数据均衡)修改配置文件
在DataNode节点的$HADOOP_HOME/etc/hadoop/hdfs-site.xml
中添加或修改上述参数,例如:
<configuration>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/hdfs/dn1,/data/hdfs/dn2</value>
</property>
<property>
<name>dfs.datanode.max.transfer.threads</name>
<value>8192</value>
</property>
</configuration>
创建存储目录并授权
# 创建目录
sudo mkdir -p /data1/hdfs/dn /data2/hdfs/dn
# 授权给HDFS用户(通常为hdfs)
sudo chown -R hdfs:hadoop /data1/hdfs/dn /data2/hdfs/dn
sudo chmod 700 /data1/hdfs/dn /data2/hdfs/dn
重启服务生效
# 在DataNode节点执行
$HADOOP_HOME/sbin/hadoop-daemon.sh stop datanode
$HADOOP_HOME/sbin/hadoop-daemon.sh start datanode
验证配置
http://namenode:50070
)查看DataNode状态,确认新配置的存储路径和节点状态正常。hdfs dfsadmin -report
查看DataNode详情,包括存储路径和磁盘使用情况。hdfs
)拥有,否则会导致服务启动失败。参考来源: