Ethan Rose created HDDS-15482:
---------------------------------
Summary: Add fencing based on datanode versions to SCM and Recon
Key: HDDS-15482
URL: https://issues.apache.org/jira/browse/HDDS-15482
Project: Apache Ozone
Issue Type: Improvement
Reporter: Ethan Rose
Assignee: Ethan Rose
The ZDU design doc outlines rules for which datanodes SCM should allow to
register based on their reported software and apparent versions. In particular
DNs with software or apparent versions larger than SCM should not be allowed to
register, and DNs with lower software versions than SCM should only be allowed
to register when SCM is pre-finalized.
When Datanode registration is rejected due to an incorrect version, it should
shut down since the error is not recoverable.
Recon also has an SCM version manager instance tracking HDDS versions in its
NodeManager implementation, whose version needs to follow that of SCM + DNs to
keep up with compatibility. Since Recon doesn't have official downgrade
support, it finalizes its own Recon versions on startup, but doing the same
with the HDDS version in the node manager may cause issues communicating with
Datanodes. Instead, Recon should finalize its HDDS version when it gets a
heartbeat from a finalized datanode (higher apparent version), instead of
rejecting it like SCM. Note that Recon cannot use this as the signal to
finalize its Recon version, since there may be releases that increase Recon
version without increasing HDDS version.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]