Hadoop中如何将namenode和secondary namenode分开在不同服务器上。

半城伤御伤魂 提交于 2019-12-06 06:07:04

在一套已经搭建好的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属性,但是我的简单测试显示并不需要修改他们。

如有问题以后再补充。


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!