【问题标题】:How to restore flows from git in NiFi Registry?如何从 NiFi Registry 中的 git 恢复流?
【发布时间】:2019-04-23 22:46:41
【问题描述】:

我在 NiFi Registry 0.3 中使用 GitFlowPersistenceProvider。今天我创建了另一个 NiFi 注册表,我想使用同一个提供程序加载前一个的所有流。不幸的是,没有任何反应 - 没有重新创建任何存储桶或流。我尝试手动创建所有存储桶,但即便如此,也没有导入任何流。

GitFlowPersistenceProvider documentation 状态:

当 NiFi Registry 启动时,此提供程序会读取 Git 提交 历史记录并查找这些 bucket.yml 文件以恢复 Buckets 和 每个快照版本的流程。

我应该怎么做才能使用 GitFlowPersistenceProvider 将现有流加载到新的 NiFi 注册表中?

【问题讨论】:

    标签: apache-nifi apache-nifi-registry


    【解决方案1】:

    很遗憾,文档并不完全准确。目前有一个默认为嵌入式 H2 的元数据数据库,但也可以是 Postgres,然后是流存储。您需要同时恢复两者才能启动具有相同数据的新实例。

    在下一个版本中有一个新功能,如果您使用完全空的数据库(即没有存储桶)和 git 流提供程序启动一个新实例,那么它将恢复所有内容。

    【讨论】:

    • 谢谢。你知道下一个版本是否会支持由当前版本的 NiFi Registry 创建的 git 存储库吗?
    • 啊,第二个问题:如果我将 nifi-registry-primary.mv.db 存储在与其他流相同的 git 存储库中,在从混帐?
    • 我不确定我是否遵循第一个问题,您的意思是 NiFi Registy 0.4.0(下一个版本)是否可以与用于 NiFi Registry 0.3.0 的 git 存储库一起使用?
    • 我从未亲自将 H2 DB 存储在 git 中,所以我不确定那里有任何问题,但我不明白为什么它不起作用。在这种情况下,您不需要从 git 加载存储桶和流,因为您已经拥有数据库。
    • 好的,是的,0.x 版本之间不应该有任何重大更改,因此您应该能够获取下一个版本 (0.4.0) 并将其指向相同的数据库和 Git 存储库。
    【解决方案2】:

    您可以通过停止 nifi-registry 0.4.0 ,删除数据库文件(如果有)然后启动 nifi 注册表以基于 git repo 重建数据库来执行相同操作。

    https://issues.apache.org/jira/browse/NIFIREG-209

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 2012-09-16
      • 2017-01-22
      • 2014-01-02
      相关资源
      最近更新 更多