[ 
https://issues.apache.org/jira/browse/IGNITE-22378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roman Puchkovskiy updated IGNITE-22378:
---------------------------------------
    Description: 
The user should be able to change the Raft configuration (that is, the nodes 
hosting the voting members) of the CMG.
h2. API

CLI should have 'ignite cmg reconfigure <new-cmg-nodes>' command for doing so. 
REST should mirror it.
h2. Design

When reconfiguration is requested, we do changePeers() on the group.

Currently, each node of the cluster hosts either CMG peer or CMG learner. When 
a node sees that CMG configuration gets changed, it should convert peer to 
learner (or do the reverse) if it's affected by the change.

After a node is elected as a CMG leader, it checks whether the current CMG 
voting members set matches the cmgNodes in the CMG; if it doesn't, it updates 
the cmgNodes in the CMG to match.

  was:
The user should be able to change the Raft configuration (that is, the nodes 
hosting the voting members) of the CMG.

CLI should have 'ignite cmg reconfigure <new-cmg-nodes>' command for doing so. 
REST should mirror it.

When reconfiguration is requested, we do changePeers() on the group.

Currently, each node of the cluster hosts either CMG peer or CMG learner. When 
a node sees that CMG configuration gets changed, it should convert peer to 
learner (or do the reverse) if it's affected by the change.

cmgNodes in the CMG need to be changed as well.

Might need some design.


> Support CMG reconfiguration
> ---------------------------
>
>                 Key: IGNITE-22378
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22378
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Roman Puchkovskiy
>            Priority: Major
>              Labels: ignite-3
>
> The user should be able to change the Raft configuration (that is, the nodes 
> hosting the voting members) of the CMG.
> h2. API
> CLI should have 'ignite cmg reconfigure <new-cmg-nodes>' command for doing 
> so. REST should mirror it.
> h2. Design
> When reconfiguration is requested, we do changePeers() on the group.
> Currently, each node of the cluster hosts either CMG peer or CMG learner. 
> When a node sees that CMG configuration gets changed, it should convert peer 
> to learner (or do the reverse) if it's affected by the change.
> After a node is elected as a CMG leader, it checks whether the current CMG 
> voting members set matches the cmgNodes in the CMG; if it doesn't, it updates 
> the cmgNodes in the CMG to match.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to