【问题标题】:Where are Ambari Macros setAmbari 宏设置在哪里
【发布时间】:2025-12-02 12:35:01
【问题描述】:

在 Ambari 的 Knox 配置文件中,我们定义了:

<url>http://{{namenode_host}}:{{namenode_http_port}}/webhdfs</url>

问题是我们有 2 个名称节点,一个是主动的,一个是被动的以实现高可用性。我们活跃的namenode01 失败了,所以namenode02 变得活跃。

这导致很多脚本出现问题,因为它们被硬编码为指向namenode01。所以我们使用一个命令将namenode02 故障转移回namenode01,使用的是终端,而不是Ambari。

现在,宏 {{namenode_host}} 被定义为 namenode02 而不是 namenode01

那么,{{namenode_host}} 是在哪里定义的?

或者,我们是否需要将 namenode01 故障转移到 namenode02,然后使用 Ambari 再次故障转移到 namenode01 以更新宏?

如果我们需要使用 Ambari 对名称节点进行故障转移,我假设我们需要选择“重新启动”选项?没有直接的故障转移命令。

【问题讨论】:

    标签: ambari


    【解决方案1】:

    在此处查看问题:

    https://issues.apache.org/jira/browse/AMBARI-12763

    这是对 Ambari 的承诺,以支持 Knox 的 HA 模式。但是,如果您仍在寻找该位置,请查看在补丁中编辑的文件。该文件是设置宏的地方。不过,您必须在本地计算机上找到它。

    应该类似于params_linux.py

    【讨论】: