Member since
04-14-2020
3
Posts
0
Kudos Received
0
Solutions
04-30-2020
01:20 PM
1 Kudo
@vivek12 Your last statement is confusing to me. Are you saying only the invokeHTTP processor is stopped after a NiFi restart? This implies that someone stopped it or the flow.xml.gz is not getting updated with that processors last known state. I'd inspect what is written in your flow.xml.gz on each node to make sure they all show the state as running. The last known state of a processor is not something that is checked as node join a cluster. Nodes joining are checked to make sure their flow.xml matches the elected cluster flow and if it does, the node can join. That node will then be told to start those components which are running in the cluster. When you restart the entire cluster each node presents its flow. First node has Flow x and gets 1 vote, next node flow is checked and it matches exactly, that flow gets 2 votes. Next node comes in and his flow is not exactly the same, so it gets 1 vote. The flow with the most votes becomes the cluster flow. If you have an even number of nodes (for example 4 nodes) and 2 node's flows get a vote and other 2 node's get a different vote. since you have 2 vs 2, NiFi will end up picking one at random. My concern here is that some node(s) have last known state as stopped while another is running. So sometimes with a complete restart of your cluster you end up starting the flow with the stopped state on this processor. The other possibility is this invokeHTTP processor is failing validation on some node on startup and resulting in processor being stopped. Have you tried copying the flow.xml.gz from one node to all the other nodes? Hope this helps, Matt
... View more