Percona auf dem 2. Knoten startet nicht

Percona auf dem 2. Knoten startet nicht

Ich habe zwei Vagrant-VMs eingerichtet, um den Percona XtraDB-Cluster für unsere Entwicklungsanforderungen zu simulieren. Die erste VM geht problemlos online und alles funktioniert. Wenn ich jedoch versuche, Percona auf der zweiten VM zu starten, treten bei der Anforderung einer Statusübertragung Fehler auf.

Dies ist der Fehler, den wir bekommendb1:

rsync: failed to connect to 10.0.2.15: Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(124) [sender=3.0.6]
rsync returned code 10:
130416 17:19:07 [ERROR] WSREP: Failed to read from: wsrep_sst_rsync --role 'donor' --address '10.0.2.15:4444/rsync_sst' --auth '(null)' --socket '/var/lib/mysql/mysql.sock' --datadir '/var/lib/mysql/data/' --defaults-file '/etc/my.cnf' --gtid '684d0eda-a6e5-11e2-0800-75b8bb33fbfb:3'
130416 17:19:07 [Note] WSREP: Provider resumed.
130416 17:19:07 [ERROR] WSREP: Process completed with error: wsrep_sst_rsync --role 'donor' --address '10.0.2.15:4444/rsync_sst' --auth '(null)' --socket '/var/lib/mysql/mysql.sock' --datadir '/var/lib/mysql/data/' --defaults-file '/etc/my.cnf' --gtid '684d0eda-a6e5-11e2-0800-75b8bb33fbfb:3': 255 (Unknown error 255)
130416 17:19:07 [Warning] WSREP: 1 (db1.ellis.dev.liquidcompass.net): State transfer to 0 (db2.ellis.dev.liquidcompass.net) failed: -1 (Operation not permitted)

Was ich interessant finde, ist, dass es versucht, eine Verbindung zu 10.0.2.15 herzustellen, wenn die IP vondb2ist 192.168.160.211. Läuft ifconfigaufdb1zeigen Sie die folgende Netzwerkkonfiguration:

eth0      Link encap:Ethernet  HWaddr 08:00:27:42:B3:4F
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe42:b34f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:668 errors:0 dropped:0 overruns:0 frame:0
          TX packets:371 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:55869 (54.5 KiB)  TX bytes:63186 (61.7 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:90:38:2A
          inet addr:192.168.160.80  Bcast:192.168.160.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe90:382a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2863 errors:0 dropped:0 overruns:0 frame:0
          TX packets:137 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:286053 (279.3 KiB)  TX bytes:18650 (18.2 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:200 (200.0 b)  TX bytes:200 (200.0 b)

Das sagt mir also, dass Percona beim Rsyncing versucht, zu verwenden eth0. Sollte es nicht verwenden eth1?

Grüße,
Andrew

Antwort1

Das Problem besteht darin, dass Percona standardmäßig eth0 verwendet, sofern es nicht überschrieben wird.

Es verwendet den folgenden Befehl, um die IP-Adresse zu ermitteln, über die kommuniziert werden soll:

/sbin/ifconfig | grep -E '^[[:space:]]+inet addr:' | grep -m1 -v 'inet addr:127' | sed 's/:/ /' | awk '{ print $3 }'

Das Ergebnis ist 10.0.2.15.

Die Variable wsrep_node_address kann so festgelegt werden, dass eine alternative IP-Adresse verwendet werden soll:

wsrep_node_address=192.168.160.80:4567

Wir hatten das gleiche Problem und es wurde für uns behoben.

James

verwandte Informationen