【问题标题】:How to set individual data node directories on individual data nodes in Hadoop?如何在 Hadoop 中的各个数据节点上设置各个数据节点目录?
【发布时间】:2016-08-23 01:46:51
【问题描述】:

我正在学习 Hortonworks 的基础知识并运行一个具有以下规格的小型集群:

  • 3 个 Amazon EC2 节点(每个都是数据节点和名称节点)
  • 通过 Ambari 设置
  • Node1 在 /mnt/vol1(已安装的硬盘驱动器)上有额外的存储空间

现在,当将 /mnt/vol1 添加到 dfs.datanode.data.dir(通过 Ambari)时,每个节点都会获得 vol1 目录的副本,即使它们不存在。块是否也会存储在其他数据节点上的这些目录中?我怎样才能只为单个数据节点而不是其他数据节点添加额外的存储空间?

【问题讨论】:

    标签: hadoop hdfs amazon hortonworks-data-platform ambari


    【解决方案1】:

    Ambari 中有一个 Config Groups 的概念。默认情况下,集群中的所有节点都只是一个配置组的一部分。因此,组中的任何配置都将适用于所有节点。在这种情况下,如果您将dfs.datanode.data.dir 设置为/mnt/vol1,Ambari 将在每个节点上检查此目录。如果存在,则数据节点的数据将存储在该目录中。否则,将其忽略。

    因此,在您的情况下,对于 Node1,使用此目录,但对于其他节点,由于此目录不可用,因此不会使用它。如果dfs.datanode.data.dir 配置中没有提到其他目录,我猜如果您的复制因子设置为 3,您可能会看到复制不足。

    本质上,您可以做的是为安装了存储卷的机器设置两个配置组,然后将dfs.datanode.data.dir 设置为/mnt/vol1,并为其他两个节点设置另一个配置组,然后提供适当的此属性中的值。这应该可以解决您的问题。

    查看以下链接,了解与配置组相关的更多信息:

    https://developer.ibm.com/hadoop/2015/11/10/override-component-configurations-with-ambari-configuration-groups/

    https://docs.hortonworks.com/HDPDocuments/Ambari-2.1.1.0/bk_Ambari_Users_Guide/content/_using_host_config_groups.html

    【讨论】:

      猜你喜欢
      • 2021-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-02
      • 1970-01-01
      • 2020-07-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多