在一套已经搭建好的Hadoop集群中,默认将namenode和secondary namenode都在master上运行,现在介绍一种方法,将他们分开配置。
Cluster环境,具体环境参考另一篇博客《Hadoop 集群cluster搭建》。简单来说4台机器,hadoop1做master,其他三台hadoop2 hadoop3 hadoop4作为slave。现在我要将secondary namenode放到hadoop2中。
另外 hadoop版本为2.7.1。
配置:
1 在配置目录$HADOOP_HOME/etc/hadoop增加文件,名为masters。每台都配置,下同。
[appadmin@hadoop1 hadoop]$ more masters hadoop2
2 配置hdfs-site.xml
<property> <name>dfs.namenode.http-address</name> <value>hadoop1:50070</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>hadoop2:50090</value> </property>
重启即可。
从网上的资料来看,还说到了要修改core-site.xml中的fs.checkpoint.period和fs.checkpoint.size属性,但是我的简单测试显示并不需要修改他们。
如有问题以后再补充。