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: [email protected]
For additional commands, e-mail: [email protected]