Hace un tiempo, escribí sobre cómo instalar Percona XtraDB Cluster 5.5, de cara a tener una solución tipo cluster para MySQL basada en Galera. Los últimos días, he estado testeando la nueva versión de Percona XtraDB Cluster 5.6, y me he encontrado con algunas diferencias respecto a la instalación/configuración de la versión 5.5.
Requisitos
Para empezar, de cara a instalar Percona XtraDB Cluster 5.6, es necesario contar con socat instalado en todos los nodos del cluster antes de empezar a instalar Percona. En mi caso, en un Centos 6.5, me ha dado problemas la instalación desde sources, y finalmente lo he instalado desde un repositorio externo.
[root@myServer1]# cd /etc/yum.repos.d
[root@myServer1]# wget --no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo
Fuente: http://www.convirture.com/wiki/index.php?title=C2_fedora_installation
Tras contar con socat, he podido instalar el cluster, igual que en la versión 5.5.
Configuración
Respecto a la configuración, en mi caso ha sido necesario añadir una nueva sección «client» al my.cnf de los tres servidores, además de mantener las secciones «mysql» y «mysqld» ya existentes y explicadas en el artículo de la versión 5.5:
[client]
# CLIENT #
port = 3306
socket = /data/mysql/mysql.sock
En realidad, en mi caso particular, he necesitado introducir esta sección porque no uso el datadir por defecto. Es probable que si estás usando el datadir por defecto (/var/lib/mysql) y el socket por defecto, no necesites añadir esta sección.
En mi caso, además, he modificado el parámetro wsrep_sst_method pasando de ser «xtrabackup» a «xtrabackup-v2»
wsrep_sst_method = xtrabackup-v2
Con ésto, ya he podido trabajar con la versión 5.6 de Percona XtraDB Cluster.
Árbitro (garbd)
Finalmente, decir que la configuración que me funcionaba con un árbitro en la versión de Percona XtraDB Cluster 5.5, no me ha funcionado con el árbitro de la versión 5.6. Concretamente, con la siguiente versión de garbd he tenido problemas:
[root@myserver]# garbd --version
INFO: 3.3.r172
Para solucionarlo, he tenido que llegar a este bug, donde comentan qué hacer. La solución pasa por, en lugar de ejecutar el árbitro tal y como se indicaba en el artículo de la versión 5.5, así…
[root@myserver]# /usr/bin/garbd --cfg /etc/default/garb.cfg --daemon
… debemos ejecutarlo con el parámetro gmcast.listen_addr indicando la IP:puerto por la que escuchará el árbitro, tal que así:
[root@myserver]# /usr/bin/garbd --cfg /etc/default/garb.cfg --daemon -o gmcast.listen_addr=tcp://192.168.0.23:4567
Con ésto, tendremos nuestro árbitro (si es que lo necesitábamos porqué no hemos podido conseguir un número impar de servidores para el cluster) corriendo y funcionando.
¡Ah! Para finalizar un apunto que no tiene que ver con la versión 5.6: también he aprovechado para configurar el cifrado de los datos que se replican, siguiendo éste fantástico manual: http://www.mysqlperformanceblog.com/2013/05/03/percona-xtradb-cluster-for-mysql-and-encrypted-galera-replication/
However, it seems the ladies’s crazy for prime-heeled footwear
is increased than clothes, even the attractive Herve Leger dress , PARADA clothing and so
on. To some extent, ladies will be referred to as
excessive-heeled footwear women.