如何在AWS EMR中启动辅助Namenode

问题描述 投票:2回答:1

我们一直在运行生产等级系统,我们希望自动在AWS EMR中启动辅助名称节点。以下是未运行辅助名称节点守护程序的jps的输出

[root@ip-10-2-23-23 ~]# jps
6241 Bootstrap
7041 ResourceManager
10754 RunJar
6818 WebAppProxyServer
10787 SparkSubmit
7619 JobHistoryServer
6922 ApplicationHistoryServer
3661 Main
4877 Main
6318 NameNode
8943 LivyServer
4499 Jps
5908 Bootstrap
4791 Main
10619 StatePusher
9918 HistoryServer

辅助namenode需要进行namenode检查点并定期创建fsImage。我没有为Namenode配置任何HA。

我们手动运行以创建FsImage的命令是

hdfs secondarynamenode -checkpoint

如何在AWS EMR中启动辅助名称节点或有任何配置?

Hadoop版本:Hadoop 2.8.3-amzn-0

hdfs amazon-emr
1个回答
1
投票

AWS EMR不在EMR上运行辅助Namenode进程,因此不会创建FSImage,每小时运行一次cron来创建FSImage解决了磁盘使用率过高的问题,因为FSImage合并了快照(Namenode元数据)以创建新的较小尺寸的FsImage。对于Namenode,FSImage创建是一项代价高昂的操作,它使用实例资源。如果有太多的快照未决合并,Namenode可能永远无法从这个繁琐的过程中恢复,所以最好经常通过cron创建FSImage。在标准的Hadoop系统中,这个工作是通过在单独的实例上运行辅助Namenode来完成的,但是EMR没有两个主人的概念所以主节点总是单点故障。

hdfs secondarynamenode -checkpoint

解决此问题的其他方法是在MapR等自定义Hadoop上运行EMR。

© www.soinside.com 2019 - 2024. All rights reserved.