You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Stephen O'Donnell (Jira)" <ji...@apache.org> on 2019/11/20 22:19:00 UTC

[jira] [Created] (HDDS-2592) Add Datanode command to allow the datanode to persist its admin state

Stephen O'Donnell created HDDS-2592:
---------------------------------------

             Summary: Add Datanode command to allow the datanode to persist its admin state 
                 Key: HDDS-2592
                 URL: https://issues.apache.org/jira/browse/HDDS-2592
             Project: Hadoop Distributed Data Store
          Issue Type: Sub-task
          Components: Ozone Datanode, SCM
    Affects Versions: 0.5.0
            Reporter: Stephen O'Donnell


When a node is decommissioned or put into maintenance, SCM will receive the command to kick off the workflow. As part of that workflow, it should issue a further command to the datanode to set the datanode as either:

maintenance
decommissioned
in_service (this is the default state)

This state should be persisted in the datanode yaml file so it survives reboots.

Upon receiving this command, the datanode will return a new state for all its containers in the next container report.

For all closed containers it should return a state of DECOMMISSIONED or MAINTENANCE accordingly, while non-closed container should return their original value until they are closed. That way SCM can monitor for unclosed containers as part of the decommission flow.

I don't believe there is any need for the datanode to have multiple states for each admin state (eg decommissioning + decommissioned / entering_maintenance + in_maintenance) as those are only really relevant to SCM. Instead it should be enough to set the datanode state once and assume SCM will cause it to eventually reach that state. 

These states will be added via HDDS-2459 to progress the changes in the Replication Manager on the SCM side:

{code}
ContainerReplicaProto.State.DECOMMISSIONED
ContainerReplicaProto.State.MAINTENANCE
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org