添加:
1 配置新的节点
1.1创建新的节点:(slave3)
如果用的是克隆功能克隆节点的话,必须把之前集群的数据进行删除(即配置文件中配置的存放数据的目录),并且重新创建文件夹(创建文件夹的时候注意权限问题,如果使用的用户为root则创建的文件都属root。使用chown -R hadoop:hadoop hadoop2.7.7/ 递归改变hadoop2.7.7/下文件的所属者和组)
1.2修改每台机器主机名(hostname)
hostnamectl set-hostname slave3 (立即生效)
reboot (重启)
1.3在hosts下添加Ip映射
vi /etc/hosts
修改其中1台,然后scp到其它机器
scp 文件名 远程主机用户名@远程主机名或ip:存放路径
scp hosts root@slave1:/etc/
scp hosts root@slave2:/etc/
scp hosts root@slave3:/etc/
传hadoop:scp -r hadoop/ root@slave3:/usr/hadoop/
1.4配置ssh,实现无密码登录
(无密码登录,效果也就是在master上,通过ssh slave1或者ssh slave2就可以登录 对方机器,而不用输入密码。)
(1)进入:ssh localhost
(2)执行:ssh-keygen ## (一直回车即可)
(3)将master上的authorized_keys放到其它机器上
cd ~/.ssh
cat id_rsa.pub > authorized_keys
chmod 600 ./authorized_keys
(4)将master上的authorized_keys放到添加的节点上
scp authorized_keys root@slave3:/root/.ssh
(5)测试是否成功:ssh slave3
1.5测试 启动进程(子节点)
hadoop-daemon.sh start datanode
yarn-daemon.sh start nodemanager
2. 配置主节点的slaves并copy整个/usr/hadoop/目录到其它机器
vi /usr/hadoop/hadoop-2.7.7/etc/hadoop/slaves
进入:cd /usr/hadoop/hadoop-2.7.7/etc/hadoop
scp slaves root@slave1:/usr/hadoop/hadoop-2.7.7/etc/hadoop
scp slaves root@slave2:/usr/hadoop/hadoop-2.7.7/etc/hadoop
scp slaves root@slave3:/usr/hadoop/hadoop-2.7.7/etc/hadoop
3. 在主节点上进行刷新
hdfs dfsadmin -refreshNodes
4. 查看节点状态
hdfs dfsadmin -report
删除:(slave3)
1. 删除节点(主节点中)
1.1 master主机中hdfs-site.xml配置---dfs.hosts.exclude
在hdfs-site.xml文件中添加:
vi /usr/hadoop/hadoop-2.7.7/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.hosts.exclude</name>
<value>/usr/local/hadoop/hadoop-2.7.7/etc/hadoop/excludes</value>
</property>
1.2 在/usr/local/hadoop/hadoop-2.7.7/etc/hadoop 路径下创建一个excludes 文件,并输要删除节点名称如:slave3
1.3 主节点刷新所有DataNode:hdfs dfsadmin -refreshNodes
1.4 查看存活节点:hdfs dfsadmin -report
2.关闭进程(子节点中)
2.1关闭DataNode进程:hadoop-daemon.sh stop datanode
2.2关闭nodemanage:yarn-daemon.sh stop nodemanager
2.3配置文件:
从NameNode的excludes文件及slaves文件、hosts文件中去掉已经移除的主机名
vi /usr/hadoop/hadoop-2.7.7/etc/hadoop/slaves
scp slaves root@slave1:/usr/hadoop/hadoop-2.7.7/etc/hadoop
scp slaves root@slave2:/usr/hadoop/hadoop-2.7.7/etc/hadoop
vi /etc/hosts
scp hosts root@slave1:/etc/hosts
scp hosts root@slave2:/etc/hosts
vi /usr/hadoop/hadoop-2.7.7/etc/hadoop/excludes