hadoop - 如何跟踪 NiFi 中的 HDFS Active Namenode 更改事件?

标签 hadoop hdfs apache-nifi namenode

我有 HDFS 集群,其中包含 Active 和 Stanby Namenodes。 有时,当集群重新启动时,Namenode 会交换它们的角色 - Standby 变为 Active,反之亦然。

然后我让 NiFi 流和 PutParquet 处理器将一些文件写入这个 HDFS 集群。 处理器的目录属性配置为“hdfs://${namenode}/some/path”,其中 ${namenode} 变量值类似于“first.namenode.host.com:8020”。

现在,当集群重新启动并且实际的 Namenode 更改为“second.namenode.host.com:8020”时,NiFi 中的配置没有更新,处理器仍然尝试使用旧的 namenode 地址,因此抛出一些异常(我不记得实际的错误文本,但我认为这对我的问题无关紧要)。

现在的问题是:我如何在 NiFi 中跟踪此事件,以便在 HDFS 配置更改时自动更新 PutParqet 处理器配置?

NiFi版本为1.6.0,HDFS版本为2.6.0-cdh5.8.3

最佳答案

我还没有证实这一点,但我认为使用 HA HDFS(事件和备用 NN)时,您会在 *-site.xml 文件(可能是 core-site.xml)中设置 HA 属性,并引用到 Hadoop 客户端随后将解析为 NameNode 列表的“集群名称”,然后它将尝试连接到该列表。如果是这种情况,请尝试使用集群名称(请参阅集群上的 core-site.xml 文件)而不是硬编码的 NN 地址。

关于hadoop - 如何跟踪 NiFi 中的 HDFS Active Namenode 更改事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52327777/

相关文章:

python - 在 Apache Nifi ExecuteStreamCommand 中运行 python 代码

hadoop - Hadoop TestDFSIO的度量单位是什么?

hadoop - 更改 Hive 数据库位置

hadoop - HDFS是如何下载文件的?

hadoop - 替换配置单元中的 NULL

java - 在NIFI中创建自定义 Controller 服务时无法生成扩展的文档

apache-nifi - 无法启动 Nifi |数据库可能已在使用中 : "Locked by another process"

hadoop - <问> 如何备份和恢复HDFS

sql - Hive - 优化自连接

Hadoop-2.2.0 "It looks like you are making an HTTP request to a Hadoop IPC port. "