>_Mysql-cluster + haproxy no Centos 5 – 1.2

MYSQL-CLUSTER – HOW-TO

Instalação do servidor MGM

Função: Responsável pela Administração do Cluster

Management Nodes: Estes são os nós ou nodes que são utilizados pelos administradores de bancos de dados para desempenhar tarefas de gerenciamento do MySQL Cluster;

O procedimento abaixo tem que ser executado nos nodes:

HOSTNAME: mgm-1 – IP eth0 = 192.168.50.10
HOSTNAME: mgm-2 – IP eth0 = 192.168.50.11

Passo 1 – Instale os pacotes necessários para o nodes de MGM

# rpm -ivh MySQL-Cluster-gpl-management-7.1.19-1.el6.i686.rpm
# rpm -ivh MySQL-Cluster-gpl-tools-7.1.19-1.el6.i686.rpm

Passo 2 – Neste passo crie os diretórios abaixo:

# mkdir -p /usr/local/mysql-cluster
# mkdir -p /var/lib/mysql-cluster
# mkdir  /usr/mysql-cluster/

OBS: O diretório /usr/mysql-cluster é de uso exclusivo dos arquivos de cache

Passo 3 – Agora crie o arquivo config-complete.ini dentro do diretório /usr/local/mysql-cluster

[root@centos-1 ~]# cd /usr/local/mysql-cluster/
[root@mgm-1 ~]# vi /usr/local/mysql-cluster/config-complite.ini

[ndb_mgmd]
hostname=192.168.50.10
datadir=/var/lib/mysql-cluster
NodeId=1

[ndb_mgmd]
hostname=192.168.50.11
datadir=/var/lib/mysql-cluster
NodeId=2

[mysqld default]
[ndb_mgmd default]
[ndbd default]
IndexMemory=150M
DataMemory=150M
noofreplicas=2
datadir=/var/lib/mysql-cluster

[ndbd]
hostname=192.168.50.12
datadir=/var/lib/mysql-cluster
NodeId=3

[ndbd]
hostname=192.168.50.13
datadir=/var/lib/mysql-cluster
NodeId=4

[mysqld]
NodeId=5
HostName=192.168.50.14

[mysqld]
NodeId=6
HostName=192.168.50.15

[api]

OBSERVAÇÕES:
[api] – Esta variável é de uso dos clientes que irão utilizar para realizar o ndb_restore. Ela deve permanecer sempre em branco

IndexMemory=100M – Esta variável define o quanto de memória pode ser alocado para o armazenamento dos índice

DataMemory=100M – Esta variável define o quanto de memória pode ser alocado para armazenamento de dados

Passo 4 – Copie o arquivo para o outro node mgm-2(192.168.50.11)

[root@mgm-1 ~]# scp  config-complite.ini root@192.168.50.11:/usr/local/mysql-cluster/

Passo 5 – Chegou a hora…rs! Inicie o serviço de gerenciamento do Mysql-Cluster com o comando abaixo
OBS:Este procedimento tem que ser feitos no nodes mgm-1 e mgm-2

# ndb_mgmd -f /usr/local/mysql-cluster/config-complete.ini

Passo 6 – Verifique o estado do Cluster com o comando ndb_mgm -e “show” ou com ndb_mgm

[root@mgm-1 mysql-cluster]# ndb_mgm -e "show"
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)]	2 node(s)
id=3 (not connected, accepting connect from 192.168.50.12)
id=4 (not connected, accepting connect from 192.168.50.13)

[ndb_mgmd(MGM)]	2 node(s)
id=1	@192.168.50.10  (mysql-5.1.56 ndb-7.1.19)
id=2	@192.168.50.11  (mysql-5.1.56 ndb-7.1.19)

[mysqld(API)]	3 node(s)
id=5 (not connected, accepting connect from 192.168.50.14)
id=6 (not connected, accepting connect from 192.168.50.15)
id=7 (not connected, accepting connect from any host)

Passo 7 – Veja os logs de ambos servidores, isso é de extrema importância para um bom sysadmin

[root@mgm-1 log]# tail -f /var/lib/mysql/ndb_1_cluster.log
[root@mgm-2 log]# tail -f /var/lib/mysql/ndb_2_cluster.log

Passo 8 – Agora deixe um pouco de lado as configurações do Mysql-Cluster, para se dedicar na configuração Heartbeat

Como temos duas interface de rede em cada node dos Mgm’s, utilize a segunda(eth1) para configurar uma rede cross, com a seguinte configuração:

HOSTNAME: mgm-1 – IP eth1 = 10.20.0.1
HOSTNAME: mgm-2 – IP eth1 = 10.20.0.2

OBS: Neste how-to eu utilizei cabo CAT-6 Blindado para rede cross

Passo 9 – Crie os arquivos ha.cf, authkeys e haresources dentro do diretório /etc/ha.d/

[root@mgm-1 ha.d]# cd /etc/ha.d/
[root@mgm-1 ha.d]# vim ha.cf
# NODES DE MGM
node mgm-1
node mgm-2
# QUAL A INTERFACE QUE SERA USADA PARA COMUNICAÇÃO
udp eth1
# ARQUIVOS DE LOGS
debugfile /var/log/ha-debug
logfile /var/log/ha-log

# FREQUENCIA EM SEGUNDOS DA VERIFICAÇÃO DOS SERVIDORES
keepalive 2

# TEMPO MINIMO PARA DECLARAR A OUTRA MAQUINA DESATIVADA
deadtime 10

# QUANTO TEMPO O HEARTBEAT DEVE ESPERAR POR BITS ATRASADOS
warntime 5

# TEMPO MAXIMO PARA DECLARAR O OUTRO SERVIDOR COMO MORTO
initdead 20

# VELOCIDADE DA SERIAL BPS  – CASO ESTEJA USANDO CABO SERIAL
baud 19200

# PORTA QUE SERA USADA
udpport 694

# DETERMINANDO SE O SERVIÇO DEVE VOLTAR PARA O MASTER, CASO ELE VOLTE A RESPONDER
auto_failback off

# COMPACTAÇÃO DOS DADOS
compression    bz2

# COMPACTAÇÃO DOS DADOS
compression_threshold 2

# cd /usr/share/doc/heartbeat-2.1.3/
# cp authkeys haresources /etc/ha.d/

# vim authkeys
auth 3
3 md5 senhaqui

# vim haresources
mgm-1 IPaddr::192.168.50.20

# chkconfig --level 123456 heartbeat on
# chmod 600 /etc/ha.d/authkeys

Passo 10 – Copie esses arquivos para o outro node mgm-2(192.168.50.11)

# scp ha.cf  authkeys haresources root@mgm-2:/etc/ha.d/
# /etc/init.d/heartbeat start [ em ambos servidores ]

Passo 11 – Inicie o Heartbeat em ambos servidores
Continua na parte 3

>_Mysql-cluster + haproxy no Centos 5 – 1.2
Tagged on:

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

%d blogueiros gostam disto: