Hopelijk is de topic title niet té cryptisch..
Ik ben een testcase aan het opbouwen.
1. CentOS 7 server in Datacenter met MariaDB en PowerDNS als NS1
2. CentOS 7 server op Azure met MariaDB en PowerDNS als NS2
Deze 2 mariaDB's heb ik in een master/slave constructie gebouwd volgens diverse tutorials op het www.
En eigenlijk werkt het perfect. tot na een x aantal minuten. na die x minuten repliceert de slave niet meer.
Ondanks dat "SHOW SLAVE STATUS;" gewoon aangeeft:
Slave_IO_Running: Yes
Slave_SQL_Running: Yess
Restart ik de slave mariadb, dan worden al mijn wijzigingen weer netjes overgenomen.
In mijn initiele lokale tests waarbij de servers in hetzelfde net zaten, had ik deze issues niet. Replicatie bleef werken.
Ik heb de "slave_net_timeout" op de NS2 my.cnf op 300 geplaatst om te kijken of ik daarmee wat dingen naar boven kreeg.
En nu zie ik inderdaad dat de boel gedisconnect wordt:
Slave_IO_State: Reconnecting after a failed master event read
en
Last_IO_Error: error reconnecting to master 'repuser@ns1.fqdn.ext:3306' - retry-time: 10 retries: 86400 message: Can't connect to MySQL server on 'ns1.fqdn.ext' (110)
Als ik hier nu 5 minuten op wacht komt ie soms wel weer online maar vaak ook pas na een herstart van de ns2 mariadb service.
Ik gok dat Azure wat roet in het eten gooit door sessies te killen als er niet continu data overheen loopt. Mijn SSH sessies vallen ook dood na een 5 tal minuten idle..
Heel irritant om logs te tailen en je sessie disconnects
Even om alles compleet te maken, de my.cnf v/d servers. Té leeg voor woorden verwacht ik.
Zijn er tweaks toe te passen waardoor ik die disconnects van Azure kan opvangen?
NS1
NS2
Ik ben een testcase aan het opbouwen.
1. CentOS 7 server in Datacenter met MariaDB en PowerDNS als NS1
2. CentOS 7 server op Azure met MariaDB en PowerDNS als NS2
Deze 2 mariaDB's heb ik in een master/slave constructie gebouwd volgens diverse tutorials op het www.
En eigenlijk werkt het perfect. tot na een x aantal minuten. na die x minuten repliceert de slave niet meer.
Ondanks dat "SHOW SLAVE STATUS;" gewoon aangeeft:
Slave_IO_Running: Yes
Slave_SQL_Running: Yess
Restart ik de slave mariadb, dan worden al mijn wijzigingen weer netjes overgenomen.
In mijn initiele lokale tests waarbij de servers in hetzelfde net zaten, had ik deze issues niet. Replicatie bleef werken.
Ik heb de "slave_net_timeout" op de NS2 my.cnf op 300 geplaatst om te kijken of ik daarmee wat dingen naar boven kreeg.
En nu zie ik inderdaad dat de boel gedisconnect wordt:
Slave_IO_State: Reconnecting after a failed master event read
en
Last_IO_Error: error reconnecting to master 'repuser@ns1.fqdn.ext:3306' - retry-time: 10 retries: 86400 message: Can't connect to MySQL server on 'ns1.fqdn.ext' (110)
Als ik hier nu 5 minuten op wacht komt ie soms wel weer online maar vaak ook pas na een herstart van de ns2 mariadb service.
Ik gok dat Azure wat roet in het eten gooit door sessies te killen als er niet continu data overheen loopt. Mijn SSH sessies vallen ook dood na een 5 tal minuten idle..
Heel irritant om logs te tailen en je sessie disconnects
Even om alles compleet te maken, de my.cnf v/d servers. Té leeg voor woorden verwacht ik.
Zijn er tweaks toe te passen waardoor ik die disconnects van Azure kan opvangen?
NS1
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd log-bin=mysql-bin server-id=1 innodb_flush_log_at_trx_commit=1 sync_binlog=1 [mysqld_safe] log-error=/var/log/mariadb/mariadb.log pid-file=/var/run/mariadb/mariadb.pid # # include all files from the config directory # !includedir /etc/my.cnf.d |
NS2
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock server-id = 2 #log_slave_updates = 1 log-bin #relay-log = /var/log/mariadb/mariadb-relay-bin.log slave_net_timeout = 300 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd [mysqld_safe] log-error=/var/log/mariadb/mariadb.log pid-file=/var/run/mariadb/mariadb.pid # # include all files from the config directory # !includedir /etc/my.cnf.d |
It's not DNS. There's no way it's DNS. It was DNS. --The Sysadmin haiku