HDFS集群扩容步骤指南
core-site.xml
、hdfs-site.xml
),确保网络设置(IP地址、主机名、防火墙)允许与NameNode及其他DataNode通信。hadoop-3.x/etc/hadoop
目录下编辑dfs.hosts
(白名单)文件,添加新节点的主机名或IP;若需控制退役节点,可编辑dfs.hosts.exclude
文件。修改后需同步到所有节点,并更新hdfs-site.xml
中的dfs.hosts
和dfs.hosts.exclude
参数指向对应文件。hdfs datanode
命令,启动DataNode服务。该服务会自动向NameNode注册。http://namenode_host:9870/dfshealth.html#tab-datanode
)或命令hdfs dfsadmin -report
查看集群状态,确认新节点已成功加入(显示为“Live”状态)。根据集群需求调整以下配置项(编辑hdfs-site.xml
),优化NameNode与DataNode的性能:
dfs.replication
:设置文件副本数(默认3,可根据集群规模调整);dfs.namenode.handler.count
:NameNode的线程池大小(默认10,建议设置为100+,提升NameNode处理请求的能力);dfs.datanode.handler.count
:DataNode的线程池大小(默认10,建议设置为100+,提升DataNode与客户端及其他节点的通信能力);dfs.blocksize
:HDFS块大小(默认128M,大文件场景可设置为256M,提升并行处理效率)。hdfs balancer
命令,启动数据平衡器。该工具会将数据从存储利用率高的DataNode迁移到利用率低的节点,直至所有节点的存储使用率差异在阈值范围内(默认10%)。-threshold
参数,如hdfs balancer -threshold 5
(阈值设为5%)。hdfs balancer -status
命令,查看平衡进度(显示“Balancing is not running”表示完成)。hdfs dfsadmin -report
,确认新节点的磁盘空间使用率、数据块数量等指标正常。hdfs fsck /
命令检查集群数据完整性,确保无数据块丢失或损坏。hadoop fs -put
和hadoop fs -get
命令),确认其性能符合预期。