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

Ethan Rose commented on HDDS-15482:
-----------------------------------

As part of this change we should also refactor the NodeManager unit tests to 
take a matrix of SCM and Datanode versions mapped to the expected registration 
outcome (allow/reject) to iterate all combinations.

> 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
>            Priority: Major
>
> 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]

Reply via email to