← Back to team overview

maria-discuss team mailing list archive

Re: Galera cluster with asynchronous slave

 

On Fri, Jul 4, 2014 at 5:56 AM, Johnny Antonsen <johnny@xxxxxxxxx> wrote:
>
> On 04. juli 2014 10:44, erkan yanar wrote:
>
> Ahoi Johnny,
>
> Ahoi there :)
>
>
> On Thu, Jul 03, 2014 at 02:16:26PM +0200, Johnny Antonsen wrote:
>
> Got fatal error 1236 from master when reading data from binary log:
> 'Error: connecting slave requested to start from GTID 3-1-422, which
> is not in the master's binlog'
>
>
> And the Slave_IO_State shows that it's no longer in sync.
>
> I have run SELECT @@GLOBAL.gtid_slave_pos; to check what the current
> GTID for each node is, and they all return: 1-1-2145, however,
> sometimes if I add a lot of data, that value is different on some
> nodes, which is why I think the slave gets confused.
>
> Using Galera there is no different Data on the nodes.
>
> On the slave, when activating using_gtid=slave_pos, the following
> gtid_IO_pos appear: 1-1-2464,2-3-420,3-1-422
>
> Why are you using different domain-ids?
>
>
> From what this documentation says, it is recommended to use different
> domain-ids
> https://mariadb.com/kb/en/mariadb/mariadb-documentation/replication-cluster-multi-master/replication/global-transaction-id/#use-with-multi-source-replication-and-other-multi-master-setups
>
> Here it says " In such setups, each active master must be configured with
> its own distinct replication domain ID, gtid_domain_id. The binlog will then
> in effect consists of multiple independent streams, one per active master.
> Within one replication domain, binlog order is always the same on every
> server."
>
> And as I'm trying to run a slave from multiple masters, this relates to my
> current setup doesn't it?

No. Multi-master setup and Galera cluster are completely different
things. You should think about all servers in your Galera cluster as
if it's a single server. And they all should have the same domain_id.

> From what I have read, this should be somewhat correct, as the first
> value is the server id. However, in the config I have specified that
> node 1 has server id 1, node 2 has id 2 and so on, and that the same
> goes for gtid_domain_id. Is this the correct setup or do the nodes
> need to have the same server-id or gtid_domain_id?
>
> The secound value is the server-id.
>
> Ok, so that means that each value on the various servers in a galera
> clusters will be unique, like node 1 will have gtid 1-1-xxx and node 2 will
> have 1-2-xxx and so on? According to what you mention further up about
> domain id's being unique.
>
>
> Surely there must be a good way to solve this? Is the system not
> built to handle an asynchronous slave replicating from one random
> node?
>
> I don't know what you are doing.
> All I can say Im doing also MariaDB GTID slaves and it works.
> Even Im not sure if domain-id matters - I haven't set them at all - be sure
> to have log_slave_updates and bin_log enabled.
>
> What I'm trying to do is actually pretty simple when you think about it. I
> have three servers running mariadb and being in a galera cluster. Each
> server has haproxy and keepalived running to move a virtual ip over and
> haproxy for checking if the actual service is up and running. On another
> site I have a mariadb server running with master set to the virtual ip
> assigned by keepalived. All this server has to do is replicate data from the
> mysql server it reaches once it connects.
>
> This works fine when it reaches the first server, but once it jumps to the
> next server I get a message saying that the GTID is not in the current
> binlog. The using_gtid value is set to slave_pos.
>
> log_slave_updates is enabled on all three servers running galera, and so is
> binlog using ROW.
>
>
> Hope this explains a little more on what I'm trying to achieve.
>
>
> Regards
> Erkan
>
>
> Regards
> Johnny
>
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to     : maria-discuss@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help   : https://help.launchpad.net/ListHelp
>


References