Hi Mark, In 1.x the primary node is elected automatically by voting through ZooKeeper, this gives automatic failover should the primary node go down.
In general, the primary node is typically used to schedule source processors in cases where it wouldn't make sense to retrieve the same data on all nodes in the cluster. The classic case is the List + Fetch pattern... For example, if you setup ListHDFS -> FetchHDFS and schedule this on every node, all nodes in your cluster would be listing and fetching the same data, when you most likely only want the data fetched once. The pattern being referenced in the documentation is to use a site-to-site connection back to itself which is better described here (pulling with redistribution scenario): https://community.hortonworks.com/articles/16120/how-do-i-distribute-data-across-a-nifi-cluster.html Flow files are never moved between nodes automatically by NiFi, only by something explicit in the data flow. Thanks, Bryan On Fri, Mar 17, 2017 at 10:45 AM, Mark Bean <[email protected]> wrote: > Can the Primary Node be manually selected by a user? I believe this > capability was available in 0.x, but I'm not sure it exists in 1.x. > > Also, when a processor is configured to run only on the Primary Node, how > are the processor's output flowfiles distributed (i.e. load balanced) > across the cluster? The documentation says this occurs "with the proper > dataflow configuration". What are the requirements and options to properly > configure this scenario? > > Similarly, when a processor which accepts input (e.g. PutFile) is > configured to run only on the Primary Node, what occurs behind the scenes? > Is the flowfile physically transferred from the repositories on non-Primary > Nodes to the appropriate Primary Node? > > Thanks, > Mark
