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

Reply via email to