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

Tsz Wo Nicholas Sze commented on HDFS-11597:
--------------------------------------------

[~anu], you are right that RatisManagerImpl is to takes care of forming Ratis 
clusters.

> Then this information is used to create a Ratis cluster dynamically, which is 
> not part of this patch, ...
 
This patch indeed creates Ratis clusters via the createRatisCluster(..) method, 
which further invokes the RaftClient.reinitialize(..).  After HDFS-11865, 
Datanode startup only initializes a Ratis RPC server but not forming any Ratis 
cluster.  RatisManagerImpl uses RaftClient.reinitialize(..) to reinitialize the 
datanode Ratis server to form Ratis cluster.

For example, TestRatisManager starts 5 datanodes.  It uses 
createRatisCluster(..) to form three Ratis clusters
- ratis0: DN0, DN1, DN2
- ratis1: DN3
- ratis2: DN4

Then, it randomly closes two clusters by calling closeRatisCluster(..).  
Finally, it uses updateDatanodes(..) to update the chosen cluster to include 
the datanodes from the two closed clusters.

> Ozone: Add Ratis management API
> -------------------------------
>
>                 Key: HDFS-11597
>                 URL: https://issues.apache.org/jira/browse/HDFS-11597
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone
>            Reporter: Tsz Wo Nicholas Sze
>            Assignee: Tsz Wo Nicholas Sze
>         Attachments: HDFS-11597-HDFS-7240.20170522.patch, 
> HDFS-11597-HDFS-7240.20170523.patch, HDFS-11597-HDFS-7240.20170524.patch, 
> HDFS-11597-HDFS-7240.20170528b.patch, HDFS-11597-HDFS-7240.20170528.patch, 
> HDFS-11597-HDFS-7240.20170529.patch
>
>
> We need APIs to manage Ratis clusters for the following operations:
> - create cluster;
> - close cluster;
> - get members; and
> - update members.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to