MariaDB Galera
I try to set as much IPv6-only infrastructure as possible and the same goes for a new MariaDB Galera cluster I had to build.
According to the release notes MariaDB 10.1 should have IPv6 support, but it didn’t work out for me. I wouldn’t get my Galera cluster to work over IPv6-only.
Galera
I tracked the root-cause down to Galera not parsing the addresses properly and it had to be tweaked a bit.
Configuration
With the configuration posted below I was able to get a MariaDB 10.1 setup working on IPv6-only.
[mysqld] query_cache_size=0 binlog_format=ROW default-storage-engine=innodb innodb_autoinc_lock_mode=2 innodb_doublewrite=1 query_cache_type=0 bind-address = :: wsrep_on=ON wsrep_provider=/usr/lib/galera/libgalera_smm.so wsrep_cluster_name="ns01" wsrep_cluster_address="gcomm://ns011.XXX.eu,ns012.XXX.nl,ns013.XXX.info" wsrep_sst_method=rsync wsrep_node_name="ns011" wsrep_provider_options = "gmcast.listen_addr=tcp://[::]:4567; ist.recv_addr=[2a00:f10:121:XX:XX:a0ff:fe00:1bc7]:4568" wsrep_node_address = "[2a00:f10:121:XX:XX:a0ff:fe00:1bc7]:4567" wsrep_sst_receive_address = "[2a00:f10:121:XX:XX:a0ff:fe00:1bc7]:4444"
This resulted in the Galera cluster functioning properly on a IPv6-only network. It’s indeed a bit more configuration then with IPv4, but that will probably be resolved in a future release.
The MariaDB status properly shows being connected over IPv6:
MariaDB [(none)]> show status like 'wsrep_incoming_addresses'; +--------------------------+--------------------------------------------------------------------------------------------------------------------+ | Variable_name | Value | +--------------------------+--------------------------------------------------------------------------------------------------------------------+ | wsrep_incoming_addresses | [2a00:f10:121:XX:XX:a0ff:fe00:1bc7]:3306,[2a00:f10:400:XX:XX:d8ff:fe00:2ef]:3306,[2a00:1d20:3:XX:XX:c01:3:53]:3306 | +--------------------------+--------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) MariaDB [(none)]>