Como comente en el post anterior las maquinas MySQL tuvieron que ser reinstaladas, el motivo un problema con la paqueteria de openSolaris y los servicios, calculé que tardaba menos reinstalando y así hice, una vez instalado simplemente instalar SUNWmysql51 y ya tenemos mysql.
Balanceo con mysql-proxy
Primero es activar el demonio en debian, por defecto no viene activado para usarse pues hay que configurarlo previamente, vamos a /etc/default/mysql-proxy donde lo dejamos así:
ENABLED="true"
OPTIONS="--proxy-address=192.168.122.154:3306
--admin-address=:1337
--proxy-backend-addresses=192.168.122.40:3306
--proxy-backend-addresses=192.168.122.41:3306"
Básicamente le decimos que escuche una dirección(192.168.122.154:3306) y que balancee con los configurados con proxy-backend-addresses (usa round-robin). También dejamos abierto escuchando solo localhost el administrador por si necesitamos monitorizar el balanceador.
Con esto ya tenemos balanceados los dos clientes, ahora solo falta que estén sincronizados el uno con el otro y se repliquen los datos. Para ello he seleccionado replicación de solo la base de datos para la aplicación que se llamara appDB, que usará un usuario appUSER. Como hacer replicación master to master hay muchos manuales, pero si indicaré lo clave para esta configuración:
binlog-do-db=appDb
binlog-ignore-db=mysqlauto_increment_increment= 2
auto_increment_offset = 1
Esa parte de la configuración (en my.cnf) esta en ambos nodos(en el segundo o master 2 es “auto_increment_offset = 2″ en vez de 1), aquí decimos explícitamente que cuando replique los datos no replique la base d datos mysql y solo appDB. Las dos ultimas es la configuración del auto-incremento, cuando tenemos el auto-incremento en una tabla por cada fila inserta un id numérico secuencial, con esta configuración uno llevara los pares y otros los impares. Se puede configurar de muchas maneras (que cuente de 10 en 10 y empiece en 5, teniendo la secuencia “5,10,15,…”) para evitar colisiones.
Resumen de maquinas
Con esto mysql ya lo tenemos balanceado y sincronizado, en mi estructura mysql-proxy se encuentra en la misma maquina virtual que el apache proxy, para que se tengo las siguientes:
- glassfish -> openSolaris con glassfish
- glashfish2 -> OpenSolaris con glassfish
- mysql -> openSolaris con MySQL
- mysql2 -> openSolaris con MySQL
- nas -> Opensolaris con raidz con sistema de ficheros compartido
- proxy -> Debian lenny con mysql-proxy y Apache2
Básicamente esta casi acabado solo falta el firewall y backup, en la próxima entrada explicaré como hacerlo y como voy hacer el test de funcionamiento.
0 Respuestas a “Resumen de los últimos días (II)”