添加和删除hadoop集群中的节点
1:添加节点
A:新节点中添加账户,设置无密码登陆
B:Name节点中设置到新节点的无密码登陆
C:在Name节点slaves文件中添加新节点
D:在所有节点/etc/hosts文件中增加新节点(所有节点保持一致)
E:在新节点中执行
1 2 | ./bin/hadoop-daemon.sh start datanode ./bin/hadoop-daemon.sh start tasktracker均衡个数据节点中的数据./bin/start-balancer.sh |
注意
1 2 3 4 5 6 7 8 9 10 11 12 13 | 1)如果不balance,那么cluster会把新的数据都存放在新的node上,这样会降低mapred的工作效率 2)设置平衡阈值,默认是10%,值越低各节点越平衡,但消耗时间也更长 ./bin/start-balancer.sh -threshold 5 3)设置balance的带宽,默认只有1M/s <property> <name>dfs.balance.bandwidthPerSec</name> <value>1048576</value> <description> Specifies the maximum amount of bandwidth that each datanode can utilize for the balancing purpose in term of the number of bytes per second. </description> </property> |
删除节点
A:修改Name节点的hdfs-site.xml增加
1 2 3 4 | <property> <name>dfs.hosts.exclude</name> <value>/soft/hadoop/conf/excludes</value> </property> |
B:修改Name节点的mapred-site.xml增加
1 2 3 4 5 | <property> <name>mapred.hosts.exclude</name> <value>/soft/hadoop/conf/excludes</value> <final> true </final> </property> |
C:新建excludes文件,文件里写要删除节点的hostname
D:Name节点执行
1 2 | hadoop mradmin –refreshNodes hadoop dfsadmin –refreshNodes<br>(task进程可以kill进程ID) |
查看关闭进程
1 | hadoop dfsadmin -report |
当节点处于Decommissioned,表示关闭成功。
注意
1:如果刚删除的节点要再添加到集群要先删除excludes文件,执行 hadoop dfsadmin –refreshNodes
2:节点的状态可以通过http://NameNodes:50070查看
3:如果数据较大则关闭的时间可能会很长
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步