Hadoop 2.7.5 Yarn HA冲突和Bug

时间:2018-01-27 13:48:39

标签: hadoop yarn

我已经建立了一个Hadoop HA集群,包括namenode和resourcemanager的备用节点,这样在节点A和节点B中,namenode和resourcemanager进程都将启动,一个节点角色作为备用节点。 当我关闭活动节点(A或B)时,另一个将是活动节点(已测试)。如果我只是启动一个节点(A或B),那么namenode进程就可以了,但是resourcemanager进程没有响应!我检查了日志,它是以下内容:

2018-01-27 17:01:43,371 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: namenode/192.168.1.210:8020. Already tried 68 time(s); retry policy is RetryPolicy[MultipleLinearRandomRetry[500x2000ms], TryOnceThenFail]

节点A/192.168.1.210是未启动的节点。它在连接到节点A的循环上存储,而namenode进程在节点B上处于活动状态。 我设置以下属性来减少(500 * 2000)(refrenced here)

        <property>
        <name>yarn.resourcemanager.fs.state-store.retry-policy-spec</name>
        <value>1000,10</value>
        <!-- <value>2000,10</value> also checked -->
        </property>

但是对资源管理器的行为没有影响! 这是一个错误还是我错了!?

1 个答案:

答案 0 :(得分:0)

自Hadoop 2.8添加属性yarn.node-labels.fs-store.retry-policy-spec以控制该情况。添加以下属性解决了问题:

    <property>
    <name>yarn.node-labels.fs-store.retry-policy-spec</name>
    <value>1000, 10</value>
    </property>

现在它尝试10次,睡眠1000毫秒,然后切换到另一个名字节点