重新启动NiFi节点作为新节点加入群集

时间:2019-10-01 09:32:26

标签: kubernetes cluster-computing apache-nifi

我目前正在Kubernetes上将Apache NiFi作为StatefulSet运行。我正在测试以查看如果我杀死一个Pod,但Pod(NiFi节点)重新加入集群时遇到的问题,群集如何恢复。

该节点将作为一个 additional 节点重新加入,而不是以其原始身份出现。例如,如果我有一个3节点的NiFi群集并杀死并重新启动一个Pod / NiFi节点,我最终将得到一个4节点的群集,其中一个已断开连接。

之前:

Before

之后:

After

我相信NiFi节点是在配置文件中以某种方式标识的,该配置文件在被杀死时不会持久存在。到目前为止,我正在使用持久卷来持久存储以下配置文件:

  • state-management.xml
  • authorizers.xml

我没有持久化nifi.properties(它是在启动时动态生成的 而且我看不到任何可以唯一标识该节点的东西。

所以我想,问题是如何在服务器上唯一标识节点以及将节点存储在哪里?

编辑:我正在使用外部Zookeeper。

先谢谢您

哈里

1 个答案:

答案 0 :(得分:1)

每个节点将群集的状态存储在本地状态管理器中,默认情况下,该状态将被写入nifi-home / state / local中的预写日志。您很有可能会丢失正在重新启动的节点上的状态/本地目录。