【问题标题】:NiFi DistributedMapCacheServer and flowfiles on different nodesNiFi DistributedMapCacheServer和不同节点上的流文件
【发布时间】:2020-04-21 22:47:00
【问题描述】:

您好,我正在使用 NiFi DistributedMapCacheServer 来跟踪我的流程中已处理的文件。问题是我们在集群中工作,为了利用它,我们在队列中使用负载平衡,因此流文件不在同一个节点上。一旦他们到达使用 DistributedMapCacheClient 的 Put/GetDistributedMapCache 并使用其中一台主机的固定名称,它仅在到达的 Flowfile 与 DistributedMapCacheClient 中指定的节点位于同一节点上时才有效 - 对于我们得到的其他节点: FetchDistributedMapCache[id=d4713096-5ae5-1cb4-b777-202948e39e50] Unable to communicate with cache when processing StandardFlowFileRecord[uuid=5b1e8092-5bc5-4213-97a3-fa023691973f,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1587393798960-14, container=default, section=14], offset=983015, length=5996],offset=0,name=bf15d684-4100-4aa5-9fb5-fa0ddb21b140,size=5996] due to No route to host: java.net.NoRouteToHostException: No route to host

有没有办法设置 DMC 服务器/客户端在这种情况下工作,或者我可以以某种方式将所有流文件路由到明确给定的节点?

【问题讨论】:

    标签: apache-nifi


    【解决方案1】:

    这意味着您在 DistributedMapCacheClient 中为服务器位置指定的主机名/IP 地址无法被集群中的其他节点访问。由于您有集群,因此您的节点必须能够通信,因此您只需将其设置为正确的值。

    【讨论】:

    • 我很确定我的主机名和 IP 都很好(我都试过了)可以说它是 pp2xodr01nfi002.xxx.xxx.xxx。我认为问题可能是一些防火墙规则,但端口 4557 是打开的:` sudo lsof -i -P -n java 24073 nifi 2865u IPv4 2479691 0t0 TCP *:4557 (LISTEN) `
    • 是的 - 必须是网络配置。如果我更改为理论上被阻止的端口 4558,我会有相同的行为 - 仅处理来自指定节点的流文件,其他人会抛出错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    相关资源
    最近更新 更多