HDFS HA硬件配置

翻译自:https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_hag_hdfs_ha_hardware_config.html

要使用Quorum-based的存储部署HA群集,您应该准备以下内容:

  • NameNode hosts - 指运行活动和备用NameNode的主机。它们应该具有相同的硬件配置。
  • JournalNode hosts - 指是运行JournalNodes的主机。Cloudera建议您在“master”主机或NameNode,Standby NameNode,JobTracker等主机上部署JournalNode,以便JournalNodes的本地目录可以使用这些机器上可靠的本地存储。
  • 如果共同位于同一个主机上,则每个JournalNode进程和每个NameNode进程应该有它自己的专用磁盘。您不应将SAN或NAS存储用于这些目录。
  • 必须至少有三个JournalNode守护进程,因为edit log的修改必须写入大多数JournalNode。这将允许系统容忍单个主机的故障。您也可以运行三个以上的JournalNodes,但为了增加系统可以容忍的故障数量,您应该运行奇数个JournalNode(三个,五个,七个等等)。请注意,在运行N个JournalNodes时,系统最多可以承受(N-1)/ 2个故障并继续正常运行。如果必需的quorum不可用,NameNode将不会格式化或启动,您将看到类似如下的错误:
12/10/01 17:34:18 WARN namenode.FSEditLog: Unable to determine input streams from QJM to [10.0.1.10:8485, 10.0.1.10:8486, 10.0.1.10:8487]. Skipping.
java.io.IOException: Timed out waiting 20000ms for a quorum of nodes to respond.

注意:在HA群集中,备用NameNode也同时会执行名称空间状态的检查点,因此不需要在HA群集中运行Secondary NameNode,Checkpoint Node或BackupNode。因此,如果要将没有启用HA的HDFS群集重新配置为启用HA,则会出现错误。

总结:

  1. JournalNode应该配置奇数个, 至少三个, 否则会不能运行。
  2. JournalNodes使用的是本地存储,其部署主机可以与master namenode jobTracker相同,但要区分到不同的磁盘上。

你可能感兴趣的:(HDFS HA硬件配置)