[MXS-3185] Move any external replication settings to the new master in case of a failover with galeramon Created: 2020-09-15 Updated: 2022-09-08 Resolved: 2022-09-08 |
|
| Status: | Closed |
| Project: | MariaDB MaxScale |
| Component/s: | galeramon |
| Affects Version/s: | 2.5 |
| Fix Version/s: | N/A |
| Type: | New Feature | Priority: | Major |
| Reporter: | Petko Vasilev (Inactive) | Assignee: | Todd Stoffel (Inactive) |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
Set up:
Desired result:
It would be useful to have the desired result as then external replication could be much more robust |
| Comments |
| Comment by Johan Wikman [ 2020-09-16 ] |
|
petko.vasilev The Galera monitor works so that it (by default) assigns the master role to the server whose wsrep_local_index is the smallest. Whose responsibility is it to ensure that the "master" is configured to replicate from an external server ? Since MaxScale should be able to configure a server to replicate from an external server when the master role moves, it should be possible for MaxScale, when started, to always reconfigure a Galera cluster so that all replication from external servers is performed by the server given the master role. |
| Comment by Petko Vasilev (Inactive) [ 2020-09-16 ] |
|
Initially it would be the user that will configure the replication on the correct server. |
| Comment by Johan Wikman [ 2020-09-16 ] |
|
What if there is a Galera node, that is not the master, that is replicating from an external server? First nothing would happen, but if that node ever were to become the master, thereafter the replication settings would follow the master, which seems a bit non-intuitive. But would make sense nonetheless. So I think the feature should simply be that if the Galera node currently being treated as master goes down, then any external replication settings it had, will be configured on the new node chosen as master (which implies that the Galera monitor probes and stored all replication settings). What should happen when the old master is rejoined? |
| Comment by Petko Vasilev (Inactive) [ 2020-09-16 ] |
|
In our case, we will have only one galera node replicating at any given time. I don't know what the correct behavior would be there are multiple. |
| Comment by Johan Wikman [ 2020-09-17 ] |
|
I think it should work fine (in principle at least) if MaxScale would configure the new master, with whatever replication settings the old master had. I don't know if there can be some conflicts in the settings, if the new master is already replicating from somewhere. When the old master comes back up and rejoins
The latter is more tricky and requires that MaxScale persistently remembers the cluster state. A thought; what if the replication on all nodes were configured in an identical fashion and then MaxScale's role would be to start the replication on the master node and stop it on all other nodes? |
| Comment by Assen Totin (Inactive) [ 2020-10-12 ] |
|
I'd say this relates to |