使用MiNiFi

时间:2018-07-23 20:32:35

标签: apache-nifi apache-minifi

我在使用NiFi…MiNiFi时遇到了一些挑战。我们使用MiNiFi将日志从远程系统运送到NiFi实例,再从那里运到Kafka和Elasticsearch。我们可以在没有https的情况下成功完成此操作。但是,最近,我受命使用https安全地进行此操作。

使用证书,我可以连接到NiFi UI,挑战在于MiNiFi无法连接到远程NiFi上的RPG,并且出现错误“无法通过URI https://xxxx.com:9443/nifi与远程NiFi通信由于:收到致命警报:handshake_failure“ 。我怀疑这是由于下面的错误

2018-07-23 16:27:23,083信息[main] o.apache.nifi.controller.FlowController由于nifi.remote.input.socket.port是启用了未启用RAW套接字站点到站点功能未设置

2018-07-23 16:27:23,083信息[main] o.apache.nifi.controller.FlowController由于启用了'nifi.remote.input,因此未启用HTTP(S)站点到站点功能。 http.enabled'属性为true

我试图在MiNiFi的nifi.properties文件中设置这些属性,但是每次重新启动时,该文件始终会被覆盖并加载默认值。 请问,您对解决此问题有任何想法吗?

如何在启动时在config.yml文件或任何其他地方引导这些设置?

1 个答案:

答案 0 :(得分:0)

您需要在从NiFi导出到MiNiFi的原始流程中进行设置。根据提供的nifi.properties文件自动生成MiNiFi实例的config.yml。该文件是通过使用MiNiFi Converter Toolkit转换导出的模板XML文件生成的。

有关更多信息,您可以观看these videos或阅读Getting Started Guide

您将要在config.yml中查找以下内容:

Security Properties:
    keystore: /tmp/ssl/localhost-ks.jks
    keystore type: JKS
    keystore password: localtest
    key password: localtest
    truststore: /tmp/ssl/localhost-ts.jks
    truststore type: JKS
    truststore password: localtest
    ssl protocol: TLS
    Sensitive Props:
        key:
        algorithm: PBEWITHMD5AND256BITAES-CBC-OPENSSL
        provider: BC

Remote Processing Groups:
- name: http://localhost:8080/nifi
  url: http://localhost:8080/nifi
  comment: ''
  timeout: 30 sec
  yield period: 10 sec
  Input Ports:
  - id: AUTOGENERATED_NIFI_PORT_ID_HERE
    name: MiNiFi-input
    comment: ''
    max concurrent tasks: 1
    use compression: false
    Properties: # Deviates from spec and will later be removed when this is autonegotiated      
        Port: 1026      
        Host Name: localhost