[ 
https://issues.apache.org/jira/browse/NIFI-5585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeff Storck updated NIFI-5585:
------------------------------
    Description: 
Allow a node in the cluster to be decommissioned, rebalancing flowfiles on the 
node to be decommissioned to the other active nodes.  This work depends on 
NIFI-5516.

Only nodes that are DISCONNECTED can be transitioned to the OFFLOADING state.
OFFLOADING nodes will transition to the OFFLOADED state once all flowfiles have 
been rebalanced to other connected nodes in the cluster.
OFFLOADING nodes that remain in the OFFLOADING state (due to errors encountered 
while offloading) can be reconnected to the cluster by restarting NiFi on the 
node.
OFFLOADED nodes can be reconnected to the cluster by issuing a connection 
request via the UI/CLI, or restarting NiFi on the node.
OFFLOADED nodes can be deleted from the cluster.

OFFLOADING a node:
* stops all processors
* terminates all processors
* stops transmitting on all remote process groups
* rebalances flowfiles to other connected nodes in the cluster (via the work 
done in NIFI-5516)

The steps to decommission a node and remove it from the cluster are:
 # Send request to disconnect the node
 # Once disconnect completes, send request to offload the node.
 # Once offload completes, send request to delete node.
 # Once the delete request has finished, the NiFi service on the host can be 
stopped/removed.

When an error occurs and the node can not complete offloading, the user can:
 # Send request to delete the node from the cluster
 # Diagnose why the node had issues with the offload (out of memory, no network 
connection, etc) and address the issue
 # Restart NiFi on the node to so that it will reconnect to the cluster
 # Go through the steps to decommission a node

The OFFLOADING request is idempotent.

Toolkit CLI commands for retrieving a single node, list of nodes, and 
connecting/disconnecting/offloading/deleting nodes have been added.

The cluster table UI has a icon to initiate the OFFLOADING of a DISCONNECTED 
node.

Similar to the client sending PUT request with a DISCONNECTING message to 
cluster/nodes/\{id}, an OFFLOADING message can be sent as a PUT request to the 
same URI to initiate an OFFLOAD for a DISCONNECTED node.



  was:
Allow a node in the cluster to be decommissioned, rebalancing flowfiles on the 
node to be decommissioned to the other active nodes.  This work depends on 
NIFI-5516.

Only nodes that are DISCONNECTED can be transitioned to the OFFLOADING state.
OFFLOADING nodes will transition to the OFFLOADED state once all flowfiles have 
been rebalanced to other connected nodes in the cluster.
OFFLOADING nodes that remain in the OFFLOADING state (due to errors encountered 
while offloading) can be reconnected to the cluster by restarting NiFi on the 
node.
OFFLOADED nodes can be reconnected to the cluster by issuing a connection 
request via the UI/CLI, or restarting NiFi on the node.
OFFLOADED nodes can be deleted from the cluster.

OFFLOADING a node:
* stops all processors
* terminates all processors
* stops transmitting on all remote process groups
* rebalances flowfiles to other connected nodes in the cluster (via the work 
done in NIFI-5516)

The steps to decommission a node and remove it from the cluster are:
 # Send request to disconnect the node
 # Once disconnect completes, send request to offload the node.
 # Once offload completes, send request to delete node.
 # Once the delete request has finished, the NiFi service on the host can be 
stopped/removed.

When an error occurs and the node can not complete offloading, the user can:
 # Send request to delete the node from the cluster
 # Diagnose why the node had issues with the offload (out of memory, no network 
connection, etc) and address the issue
 # Restart NiFi on the node to so that it will reconnect to the cluster
 # Go through the steps to decommission a node

Toolkit CLI commands for retrieving a single node, list of nodes, and 
connecting/disconnecting/offloading/deleting nodes have been added.


> Prepare Nodes to be Decommissioned from Cluster
> -----------------------------------------------
>
>                 Key: NIFI-5585
>                 URL: https://issues.apache.org/jira/browse/NIFI-5585
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Core Framework
>    Affects Versions: 1.7.1
>            Reporter: Jeff Storck
>            Assignee: Jeff Storck
>            Priority: Major
>
> Allow a node in the cluster to be decommissioned, rebalancing flowfiles on 
> the node to be decommissioned to the other active nodes.  This work depends 
> on NIFI-5516.
> Only nodes that are DISCONNECTED can be transitioned to the OFFLOADING state.
> OFFLOADING nodes will transition to the OFFLOADED state once all flowfiles 
> have been rebalanced to other connected nodes in the cluster.
> OFFLOADING nodes that remain in the OFFLOADING state (due to errors 
> encountered while offloading) can be reconnected to the cluster by restarting 
> NiFi on the node.
> OFFLOADED nodes can be reconnected to the cluster by issuing a connection 
> request via the UI/CLI, or restarting NiFi on the node.
> OFFLOADED nodes can be deleted from the cluster.
> OFFLOADING a node:
> * stops all processors
> * terminates all processors
> * stops transmitting on all remote process groups
> * rebalances flowfiles to other connected nodes in the cluster (via the work 
> done in NIFI-5516)
> The steps to decommission a node and remove it from the cluster are:
>  # Send request to disconnect the node
>  # Once disconnect completes, send request to offload the node.
>  # Once offload completes, send request to delete node.
>  # Once the delete request has finished, the NiFi service on the host can be 
> stopped/removed.
> When an error occurs and the node can not complete offloading, the user can:
>  # Send request to delete the node from the cluster
>  # Diagnose why the node had issues with the offload (out of memory, no 
> network connection, etc) and address the issue
>  # Restart NiFi on the node to so that it will reconnect to the cluster
>  # Go through the steps to decommission a node
> The OFFLOADING request is idempotent.
> Toolkit CLI commands for retrieving a single node, list of nodes, and 
> connecting/disconnecting/offloading/deleting nodes have been added.
> The cluster table UI has a icon to initiate the OFFLOADING of a DISCONNECTED 
> node.
> Similar to the client sending PUT request with a DISCONNECTING message to 
> cluster/nodes/\{id}, an OFFLOADING message can be sent as a PUT request to 
> the same URI to initiate an OFFLOAD for a DISCONNECTED node.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to