como fazer o failover automático do cluster mysql / galera

1

Eu tenho dois clusters mysql / galera de três nós cada (dois + nó garb).

Os clusters estão em DCs separados (dc1 e dc2)

A replicação do cluster cruzado ocorre entre node1-dc1 e node1-dc2

Eu quero saber como fazer failover automaticamente no caso de o node1-dc1 descer para o node2-dc1.

Acho que outra pergunta é: o failover automático é uma boa ideia se eu puder fazer o script? Quaisquer outras recomendações e melhores práticas também são bem-vindas.

É assim que a replicação é configurada entre node1-dc1 e node1-dc2

1 - Em cada nó, adicione as seguintes linhas ao arquivo /etc/my.cnf e reinicie o serviço mysql

# vi /etc/my.cnf
server-id=101       # 102 for the remote galera node
log-slave-updates=1
log-bin=mysql-bin
gtid_mode=ON
enforce-gtid-consistency=1

2 - Adicionar concessão ao usuário 'replicante' em ambos os nós

> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO replicant@'%' IDENTIFIED BY 'password';

3 - Inicie a replicação em ambos os nós, configure MASTER_HOST para o endereço IP do outro nó

mysql> STOP SLAVE;
mysql> CHANGE MASTER TO MASTER_HOST = '172.1.1.55', MASTER_PORT = 3306, MASTER_USER = 'replicant', MASTER_PASSWORD = 'password', MASTER_AUTO_POSITION = 1;
mysql> START SLAVE;
    
por John Test 28.07.2015 / 19:57

0 respostas