说在前面
- 工作环境:VMware® Workstation 12 Pro 12.5.6 build-5528349
- linux版本:CentOS-7-x86_64-Minimal-1611.iso
- JDK版本:jdk-8u65-linux-x64.tar.gz
- Hadoop版本:hadoop-2.7.6.tar.gz
hadoop中几个核心的配置如下
配置临时目录
如果没有任何配置,临时目录会保存在根目录下的 /tmp 文件夹下,每次节点进行重启后临时目录中的文件就会被删除,所以需要将临时目录配置在家目录下:
//配置core-site.xml文件
<configuration><property><name>fs.defaultFS</name><value>hdfs://s201/</value></property><!--- 配置新的本地目录 --><property><name>hadoop.tmp.dir</name><value>/home/centosmin0/hadoop</value></property>
</configuration>
节点的服役和退役
对于一些出错或者不能用的节点可以让其退役,对应的需要增加节点来服役
节点的服役
- 在dfs.include文件中包含新节点名称,该文件在nn(名称节点)的本地目录
//添加一个白名单
$> touch /soft/hadoop/etc/dfs.include.txt (s201下)s202
s203
s204
s205 //新服役节点
- 在yarn-site.xml文件中添加属性.
<property><name>yarn.resourcemanager.nodes.include-path</name><value>/soft/hadoop/etc/dfs.include.txt</value>
</property>
- 在nn(名称节点)上刷新节点
$>yarn rmadmin -refreshNodes
- 在slaves文件中添加新节点ip(主机名)
s202
s203
s204
s205 //新服役的节点
- 单独启动新的节点中的nodemananger(在 s205 下启动)
$>yarn-daemon.sh start nodemananger
节点的退役
- 添加退役节点的ip到黑名单,不要更新白名单.
$> touch /soft/hadoop/etc/dfs.hosts.exclude.txts205
- 配置yarn-site.xml
<property><name>yarn.resourcemanager.nodes.exclude-path</name><value>/soft/hadoop/etc/dfs.hosts.exclude.txt</value>
</property>
- 刷新rm节点
$>yarn rmadmin -refreshNodes
-
查看webui,节点状态在decommisstion in progress
-
当所有的要退役的节点都报告为Decommissioned,数据转移工作已经完成
-
从白名单删除节点,并刷新节点
$>yarn rmadmin -refreshNodes
- 从slaves文件中删除退役节点
黑白名单组成情况
include //dfs.include
exclude //dfs.hosts.includeinclude exclude Interpretation
No No 不能连接
No Yes 不能连接
Yes No 可以连接
Yes Yes 可以连接,将会退役状态。