【问题标题】:Enabling HA namenodes on a secure cluster in Cloudera Manager fails在 Cloudera Manager 中的安全集群上启用 HA 名称节点失败
【发布时间】:2017-07-13 23:27:47
【问题描述】:

我正在运行一个 CDH4.1.2 安全集群,它在单个 namenode+secondarynamenode 配置下运行良好,但是当我尝试从 Cloudera Manager 界面启用高可用性(基于仲裁)时,它在第 10 步(共 16 步)中死机,“启动将转换为活动模式 namenode ([my namenode's hostname]) 的 NameNode"。

深入研究角色日志文件会出现以下致命错误:

Exception in namenode joinjava.lang.IllegalArgumentException: Does not contain a valid host:port authority: [my namenode's fqhn]:[my namenode's fqhn]:0 at
org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:206) at
org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:158) at
org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:147) at
org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.start(NameNodeHttpServer.java:143) at
org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:547) at
org.apache.hadoop.hdfs.server.namenode.NameNode.startCommonServices(NameNode.java:480) at
org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:443) at
org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:608) at
org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:589) at
org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1140) at
org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1204)

我该如何解决这个问题?

【问题讨论】:

    标签: hdfs cloudera high-availability


    【解决方案1】:

    看来你有两个问题:

    1. NameNode 的 IP 地址解析为“我的 namenode 的 fqhn”,而不是常规主机名。检查您的 /etc/hosts 文件以解决此问题。
    2. 您需要配置 dfs.https.port。使用 Cloudera Manager 免费版,您必须必须将适当的配置添加到安全阀以启用安全性。作为其中的一部分,您需要配置 dfs.https.port。

    鉴于即使在非 HA 模式下也会遍历此代码路径,我很惊讶您能够在启用 HA 之前让您的安全 NameNode 正确启动。如果您还没有,我建议您先启用安全性,测试所有 HDFS 角色是否正确启动,然后启用 HA。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多