[ 
https://issues.apache.org/jira/browse/NIFI-5585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624086#comment-16624086
 ] 

ASF GitHub Bot commented on NIFI-5585:
--------------------------------------

Github user jtstorck commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/3010#discussion_r219607209
  
    --- Diff: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/replication/ThreadPoolRequestReplicator.java
 ---
    @@ -180,6 +181,15 @@ public AsyncClusterResponse replicate(NiFiUser user, 
String method, URI uri, Obj
                     }
                 }
     
    +            final List<NodeIdentifier> decommissioning = 
stateMap.get(NodeConnectionState.DECOMMISSIONING);
    --- End diff --
    
    I agree.  If requests were replicated to nodes other than decommissioned 
nodes, then the decommissioned node would be out of sync with the rest of the 
cluster and would not be able to rejoin the cluster.  I added a check for the 
decommissioned state.


> Decommision Nodes 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.
> Similar to the client sending PUT request a DISCONNECTING message to 
> cluster/nodes/\{id}, a DECOMMISSIONING message can be sent as a PUT request 
> to the same URI to initiate a DECOMMISSION for a DISCONNECTED node. The 
> DECOMMISSIONING request will be idempotent.
> 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 decommission the node.
>  # Once decommission completes, send request to delete node.
> When an error occurs and the node can not complete decommissioning, the user 
> can:
>  # Send request to delete the node from the cluster
>  # Diagnose why the node had issues with the decommission (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 and remove a node
> Toolkit CLI commands for retrieving a list of nodes and 
> disconnecting/decommissioning/deleting nodes have been added.



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

Reply via email to