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

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

GitHub user jtstorck opened a pull request:

    https://github.com/apache/nifi/pull/3010

    [WIP] NIFI-5585

    Please refer to https://issues.apache.org/jira/browse/NIFI-5585 for a 
description of use-cases for decommissioning nodes.  This PR is based off of 
work that is being done via https://issues.apache.org/jira/browse/NIFI-5516.
    
    This is a work-in-progress PR.  Nodes can be decommissioned, the flowfiles 
on the decommissioning node get moved to other nodes that are still connected 
to the cluster.
    
    A node can be decommissioned by first disconnecting it using the cluster 
node table's "Disconnect" icon, and then clicking on the "Decommission" icon.
    
    Some things that still need to be done in this PR:
    - Unit/integration tests need to be added
    - On the decommissioned node's UI, the status should represent its state.  
Currently, a node that is being decommissioned will show as "Disconnected" on 
the node's UI.
    - Upgrading FontAwesome from 4.6.1 to 4.7 to use an icon for the 
"Decommission" action other than fa-sun-o, most likely window-close-o
    - There are various TODO markers in the code, where further testing needs 
to be done.  Also, some follow-on JIRAs will be created based off of some of 
the TODOs.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/jtstorck/nifi NIFI-5585

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/nifi/pull/3010.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3010
    
----
commit fcc0fed53df4a65ce1e7275d67865d47b61c3bc1
Author: Mark Payne <markap14@...>
Date:   2018-06-14T15:57:21Z

    Refactoring StandardFlowFileQueue to have an AbstractFlowFileQueue
    Refactored more into AbstractFlowFileQueue
    Added documentation, cleaned up code some
    Refactored FlowFileQueue so that there is SwappablePriorityQueue
    Several unit tests written
    Added REST API Endpoint to allow PUT to update connection to use load 
balancing or not. When enabling load balancing, though, I saw the queue size go 
from 9 to 18. Then was only able to process 9 FlowFiles.
    Bug fixes
    Code refactoring
    Added integration tests, bug fixes
    Refactored clients to use NIO
    Bug fixes. Appears to finally be working with NIO Client!!!!!

commit 85606cbc200c49a0590c6979aa438addc42f8266
Author: Mark Payne <markap14@...>
Date:   2018-07-27T16:40:14Z

    NIFI-5516: Refactored some code from NioAsyncLoadBalanceClient to 
LoadBalanceSession
    Bug fixes and allowed load balancing socket connections to be reused
    Implemented ability to compress Nothing, Attributes, or Content + 
Attributes when performing load-balancing
    Added flag to ConnectionDTO to indicate Load Balance Status
    Updated Diagnostics DTO for connections
    Store state about cluster topology in NodeClusterCoordinator so that the 
state is known upon restart
    Code cleanup
    Fixed checkstyle and unit tests

commit d5d9a8ffedf080cfdfb6d8c0c83d498fd3c25022
Author: Mark Payne <markap14@...>
Date:   2018-09-06T13:09:08Z

    NIFI-5516: Updating logic for Cluster Node Firewall so that the node's 
identity comes from its certificate, not from whatever it says it is.

commit d5a3286252410e8ed2085ba2521e8f0053290bc9
Author: Mark Payne <markap14@...>
Date:   2018-09-10T21:06:05Z

    NIFI-5516: FIxed missing License headers

commit 5379a7cd2fe5620faf51cf8c95c8e6d78cc7a982
Author: Jeff Storck <jtswork@...>
Date:   2018-09-18T21:09:13Z

    NIFI-5585 Added capability to decommission a node that is disconnected from 
the cluster.

----


> 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



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

Reply via email to