如何在HBase群集设置中添加Secondary NameNode?

时间:2017-05-03 08:57:55

标签: hadoop hbase

我有一个带有3个节点的Hbase集群设置:NameNode和2个DataNode。 NameNode是一个4GB内存和20GB硬盘的服务器,而每个DataNode有8GB内存和100GB硬盘。

我正在使用 Apache Hadoop版本:2.7.2和 Apache Hbase版本:1.2.4

我见过有人提到过Secondary NameNode。

我的问题是,

  1. 在我的设置中没有Secondary NameNode有什么影响?
  2. 是否可以使用其中一个DataNode作为Secondary NameNode?
  3. 如果可能,我该怎么办? (我只在/ etc / hadoop / masters文件中插入了NameNode。)

1 个答案:

答案 0 :(得分:1)

  
      
  1. 在我的设置中没有Secondary NameNode有什么影响?
  2.   

SecondaryNamenode负责定期将命名空间图像与编辑日志合并(称为检查点)。您的设置不是高可用性设置,因此没有设置会导致编辑日志的大小变大,最终会在启动期间为NameNode增加开销。

  
      
  1. 是否可以使用其中一个DataNode作为Secondary NameNode?   

不建议在Datanode主机中运行SNN。首选运行Secondary Namenode进程的单独主机。为SNN选择的主机必须具有与NN相同的内存。

  
      
  1. 如果可能,我该怎么办? (我只在/ etc / hadoop / masters文件中插入了NameNode。)
  2.   

masters文件已不再使用。在hdfs-site.xml

中添加此属性
<property>
   <name>dfs.namenode.secondary.http-address</name>
   <value>SNN_host:50090</value>
</property>

另请注意,默认情况下,在执行start-dfs.sh的节点中启动SecondaryNamenode进程。