[
https://issues.apache.org/jira/browse/NIFI-5585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16624064#comment-16624064
]
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_r219601868
--- Diff:
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/node/NodeClusterCoordinator.java
---
@@ -841,6 +900,34 @@ void notifyOthersOfNodeStatusChange(final
NodeConnectionStatus updatedStatus, fi
senderListener.notifyNodeStatusChange(nodesToNotify, message);
}
+ private void decommissionAsynchronously(final DecommissionMessage
request, final int attempts, final int retrySeconds) {
+ final Thread decommissionThread = new Thread(new Runnable() {
+ @Override
+ public void run() {
+ final NodeIdentifier nodeId = request.getNodeId();
+
+ for (int i = 0; i < attempts; i++) {
+ try {
+ senderListener.decommission(request);
+ reportEvent(nodeId, Severity.INFO, "Node was
decommissioned due to " + request.getExplanation());
+ return;
+ } catch (final Exception e) {
+ logger.error("Failed to notify {} that it has been
decommissioned from the cluster due to {}", request.getNodeId(),
request.getExplanation());
--- End diff --
Done.
> 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)