gpt4 book ai didi

apache-nifi - NIFI - 从开发到测试到生产

转载 作者:行者123 更新时间:2023-12-04 06:56:43 29 4
gpt4 key购买 nike

随着流程在开发、测试和生产阶段的进展,我们正在努力找出更新处理器配置的最佳方法。当流部署到特定环境时,我们真的希望避免在处理器中操纵主机、端口等引用。至少在我们的例子中,我们将有不同的主机用于 ElasticSearch、PostGres 等。其他人是如何处理这个的?

我们考虑过的事情:

  • 使用表达式语言从属性文件中提取配置。这对于启用了 EL 的处理器非常有用,但对于未启用 EL 的处理器则不然。
  • 操纵流xml并覆盖主机、端口等配置。有点担心无意中破坏了 xml 以及它在 NIFI 版本之间的可移植性。

  • 任何提示或建议将不胜感激。很有可能存在我们忽略的明显解决方案。

    编辑:

    我们将使用 Byran 建议的模板。它们肯定会满足我们的需求,并且似乎是我们在众多环境中控制配置的好方法。

    https://github.com/aperepel/nifi-api-deploy

    最佳答案

    这个讨论经常出现,这里肯定有改进的余地......

    您是正确的,目前一种方法是将环境相关的属性值提取到 bootstrap.conf 中,然后通过表达式语言引用它们,以便 flow.xml.gz 可以从一个环境移动到另一个环境。正如您所提到的,这只适用于支持表达式语言的属性。

    为了在 future 更容易实现这一点,有一个名为变量注册表的想法的功能提案:

    https://cwiki.apache.org/confluence/display/NIFI/Variable+Registry

    您可能想要查看的一种有趣方法是使用模板。有一个 GitHub 项目可用于帮助解决此问题:

    https://github.com/aperepel/nifi-api-deploy

    关于apache-nifi - NIFI - 从开发到测试到生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36600840/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com