8.1 增加节点

8.1.1 启动一个新的系统,禁用selinux、禁用firewalld,命名

[root@node4 ~]# echo node4 >/etc/hostname

[root@node4 ~]# getenforce

Disabled

[root@node4 ~]# systemctl stop firewalld

[root@node4 ~]# systemctl disable firewalld

8.1.2 设置设置ssh免密码登录

[root@nn01 ~]# cd .ssh/

[root@nn01 .ssh]# ssh-copy-id -i id_rsa.pub node4

8.1.3 在所有节点增加新新节点的主机信息/etc/hosts

[root@node4 ~]# vim /etc/hosts

192.168.0.10 nn01

192.168.0.11 node1

192.168.0.12 node2

192.168.0.21 node3

192.168.0.22 node4

192.168.0.18 node5

8.1.4 安装java openjdk运行环境

[root@node4 ~]# yum install -y java-1.8.0-openjdk-devel

8.1.5 拷贝namnode的/usr/local/hadoop到本机

[root@node2 local]# scp hadoop node4:/usr/local/

8.1.6 修改namenode的slaves文件增加该节点,并同步到所有节点

[root@node4 hadoop]# vim /usr/local/hadoop/etc/hadoop/slaves

node1

node2

node3

node4

8.1.7 在该节点启劢Datanode

[root@node4 hadoop]# ./sbin/hadoop-daemon.sh start datanode

8.1.8 设置同步宽带,并同步数据

[root@node4 hadoop]# ./bin/hdfs dfsadmin -setBalancerBandwidth 67108864

[root@node4 hadoop]# ./sbin/start-balancer.sh

8.1.9 查看集群状态

[root@nn01 hadoop]# ./bin/hdfs dfsadmin -report

[root@nn01 hadoop]# for i in node{1..4};do echo $i ; ssh $i jps ;done

node1

1476 NodeManager

1368 DataNode

1628 Jps

node2

1605 Jps

1478 NodeManager

1370 DataNode

node3

1483 NodeManager

1611 Jps

1375 DataNode

node4

1026 NodeManager

923 DataNode

1133 Jps

8.2 HDFS修复节点

–修复节点比较简单,与增加节点基本一致

–需要注意新节点的ip与主机名,要与损坏节点一致

–启动服务

./sbin/hadoop-daemon.sh start datanode

–数据恢复是自动的

–我们上线以后会自动恢复数据,如果数据量非常巨大,可能需要一定的时间