温馨提示×

Linux Hadoop集群如何进行扩容与缩容

小樊
69
2025-09-02 20:31:19
栏目: 智能运维

一、扩容操作步骤

  1. 准备新节点

    • 确保新节点安装JDK、Hadoop环境,配置主机名、SSH免密登录及/etc/hosts文件。
    • 将主节点Hadoop配置文件(core-site.xmlhdfs-site.xml等)同步至新节点。
  2. 添加节点到集群

    • 在主节点的slaves(或workers)文件中添加新节点主机名。
    • 若启用白名单,在hdfs-site.xml中配置dfs.hosts属性并添加新节点。
  3. 启动新节点服务

    • 在新节点执行:
      hadoop-daemon.sh start datanode  
      yarn-daemon.sh start nodemanager  
      
  4. 负载均衡(可选)

    • 在主节点执行:
      hdfs balancer -threshold 10  # 设置数据迁移阈值  
      
  5. 验证扩容

    • 通过Web界面(NameNode:http://主节点IP:9870,ResourceManager:http://主节点IP:8088)查看节点状态。
    • 使用命令hdfs dfsadmin -report确认新节点已加入。

二、缩容操作步骤

  1. 标记退役节点

    • 在主节点的hdfs-site.xml中配置dfs.hosts.exclude文件,添加需移除节点主机名。
    • 重启NameNode使配置生效:
      sbin/stop-dfs.sh && sbin/start-dfs.sh  
      
  2. 停止节点服务

    • 在待移除节点执行:
      hadoop-daemon.sh stop datanode  
      yarn-daemon.sh stop nodemanager  
      
  3. 数据迁移

    • 启动Balancer将数据从退役节点迁移至其他节点:
      hdfs balancer -threshold 10  
      
  4. 验证缩容

    • 通过Web界面或命令hdfs dfsadmin -report确认节点已移除且数据分布正常。
  5. 清理配置

    • slaves文件中删除退役节点主机名,并同步至其他节点。

三、注意事项

  • 数据安全:缩容前确保副本因子≥3,避免数据丢失。
  • 低峰操作:建议在业务低峰期执行,减少对集群性能影响。
  • 版本一致性:所有节点Hadoop版本需一致,避免兼容性问题。
  • 日志监控:操作后检查NameNode、DataNode日志,排查异常。

参考来源

0