我在一个独立版本中使用了NIFI,现在我已经用HDF安装了一个集群NIFI版本,我想将我的DataFlow从我的独立版本迁移到集群版本。
做这件事最好的方法是什么?
发布于 2017-01-04 19:15:10
假设您在独立的NiFi中有活动数据,您可以:
如果您不关心独立的NiFi中发生的任何事情,那么跳过第一步。
更新:
另一个考虑因素是处理敏感属性(即处理器中的密码字段).
在nifi.properties中,属性nifi.sensitive.props.key用于加密flow.xml.gz中的敏感属性。您不会被迫填写此属性的值,如果将其保留为空白,则代码中有默认密码。
HDF的Ambari安装会迫使您为nifi.sensitive.props.key设置一个值,因此除非在两个实例上设置相同的值,否则HDF集群将尝试使用与加密值不同的密钥来解密flow.xml.gz中的值。
NiFi工具包(可以从主NiFi页面下载)提供了将flow.xml.gz的敏感属性键迁移到新值的工具。
举个例子..。
假设nifi-1是原始的NiFi实例,nifi-1的敏感属性键设置为‘password1 1’。
然后将该flow.xml.gz复制到nifi-2,而nifi-2的敏感属性键是‘password2 2’。
运行此命令将使用原始敏感属性键从nifi-1读取flow.xml.gz,并使用使用新密码加密的敏感属性写出新版本的Running 2:
./nifi-toolkit-1.2.0-SNAPSHOT/bin/encrypt-config.sh -f /path/to/nifi-1/conf/flow.xml.gz -g /path/to/nifi-2/conf/flow.xml.gz -s password2 -n /path/to/nifi-1/conf/nifi.properties -o /path/to/nifi-2/conf/nifi.properties -x
https://stackoverflow.com/questions/41468216
复制相似问题