Aleks 2020-08-19
1、首先克隆一个新的虚拟机,里面的hadoop等环境都配好了
之后修改ip通过 root进行登录,在原本好的虚拟机上进行分发操作
之后再发java
发环境变量
在新的虚拟机上进行:
这是重新运行环境变量
之后进入hadoop删除data和logs让他变成一个全新的机器
就会发现
datanode会主动Namenode请求。这样服役新的节点就做完了
添加到白名单的主机节点,都允许访问NameNode,不在白名单的主机节点,都会被退出。
配置白名单的具体步骤如下:
(1)在NameNode的/opt/module/hadoop-2.7.2/etc/hadoop目录下创建dfs.hosts文件
/opt/module/hadoop-2.7.2/etc/hadoop
添加如下主机名称(不添加hadoop105)
hadoop102
hadoop103
hadoop104
(2)在NameNode的hdfs-site.xml配置文件中增加dfs.hosts属性
<property>
<name>dfs.hosts</name>
<value>/opt/module/hadoop-2.7.2/etc/hadoop/dfs.hosts</value>
</property>
(3)配置文件分发
(4)刷新NameNode
Refresh nodes successful
(5)更新ResourceManager节点
17/06/24 14:17:11 INFO client.RMProxy: Connecting to ResourceManager at hadoop103/192.168.1.103:8033
(6)在web浏览器上查看
4. 如果数据不均衡,可以用命令实现集群的再平衡
starting balancer, logging to /opt/module/hadoop-2.7.2/logs/hadoop-atguigu-balancer-hadoop102.out
Time Stamp Iteration# Bytes Already Moved Bytes Left To Move Bytes Being Moved
在黑名单上面的主机都会被强制退出。
1.在NameNode的/opt/module/hadoop-2.7.2/etc/hadoop目录下创建dfs.hosts.exclude文件
[ hadoop]$ pwd
/opt/module/hadoop-2.7.2/etc/hadoop
添加如下主机名称(要退役的节点)
hadoop105
2.在NameNode的hdfs-site.xml配置文件中增加dfs.hosts.exclude属性
<property>
<name>dfs.hosts.exclude</name>
<value>/opt/module/hadoop-2.7.2/etc/hadoop/dfs.hosts.exclude</value>
</property>
3.刷新NameNode、刷新ResourceManager
Refresh nodes successful
17/06/24 14:55:56 INFO client.RMProxy: Connecting to ResourceManager at hadoop103/192.168.1.103:8033
4. 检查Web浏览器,退役节点的状态为decommission in progress(退役中),说明数据节点正在复制块到其他节点,如图3-17所示
图3-17 退役中
图3-18 已退役
stopping datanode
stopping nodemanager
6. 如果数据不均衡,可以用命令实现集群的再平衡
starting balancer, logging to /opt/module/hadoop-2.7.2/logs/hadoop-atguigu-balancer-hadoop102.out
Time Stamp Iteration# Bytes Already Moved Bytes Left To Move Bytes Being Moved
注意:不允许白名单和黑名单中同时出现同一个主机名称。
小文件的归档操作:
3.案例实操
(1)需要启动YARN进程
[ hadoop-2.7.2]$ start-yarn.sh
(2)归档文件
把/user/atguigu/input目录里面的所有文件归档成一个叫input.har的归档文件,并把归档后文件存储到/user/atguigu/output路径下。
[ hadoop-2.7.2]$ bin/hadoop archive -archiveName input.har –p /user/atguigu/input /user/atguigu/output
(3)查看归档
[ hadoop-2.7.2]$ hadoop fs -lsr /user/atguigu/output/input.har
[ hadoop-2.7.2]$ hadoop fs -lsr har:///user/atguigu/output/input.har
(4)解归档文件
[ hadoop-2.7.2]$ hadoop fs -cp har:/// user/atguigu/output/input.har/* /user/atguigu