Red Hat Cluster Suite: Configurando e Administrando um Cluster | ||
---|---|---|
Anterior | Capítulo 4. Serviços de Banco de Dados | Próxima |
Um serviço de banco de dados pode servir dados altamente disponíveis para uma aplicação de banco de dados MySQL. A aplicação pode então prover acesso de rede aos sistemas cliente do banco de dados, como servidores web. Se o serviço falhar, a aplicação acessa os dados compartilhados do banco de dados através do sistema do novo cluster. Um serviço de banco de dados acessível pela rede geralmente recebe um endereço IP, que é passado junto ao serviço falho para manter o acesso transparente aos clientes.
Veja a seguir um exemplo da configuração de um serviço de banco de dados MySQL:
Os pacotes do servidor MySQL são instalados em cada sistema do cluster que rodará o serviço. O diretório do banco de dados MySQL reside em um sistema de arquivo localizado em uma partição do disco no armazenamento compartilhado. Isto permite que os dados do banco sejam acessados por todos os membros do cluster. Neste exemplo, o sistema de arquivo é montado como /var/lib/mysql, usando a partição /dev/sda1 do disco compartilhado.
Um endereço IP é associado ao serviço MySQL para acomodar o acesso à rede para clientes do serviço de banco de dados. Este endereço IP é migrado automaticamente dentre os membros do cluster, conforme o serviço falha. No exemplo abaixo, o endereço IP é 10.1.16.12.
O script usado para iniciar e parar o banco de dados MySQL é o script init padrão, mysqld. Se forem necessárias autenticações gerais das conexões e buscas, edite o script mysqld para adicionar a opção --log=/var/log/mysqld.log como a útima opção do comando safe_mysqld. A linha resultante deve ser parecida com a seguinte (nota: a barra invertida (\) denota a continuação de uma linha):
/usr/bin/safe_mysqld --defaults-file=/etc/my.cnf --log=/var/log/mysqld.log \ >/dev/null 2>&1 & |
Se a opção --log é adicionada ao script mysqld, o novo script mysqld deve ser copiado aos outros membros do cluster que podem rodar o serviço MySQL, para que possam registrar as conexões e buscas se o serviço MySQL falhar e for assumido por outros membros.
Por default, uma conexão cliente a um servidor MySQL expira após oito horas de inatividade. Este limite da conexão pode ser modificado, determinando a variável wait_timeout no arquivo /etc/my.cnf. Por exemplo: para definir o tempo limite para quatro horas, adicione a seguinte linha à seção [mysqld] no arquivo /etc/my.cnf:
set-variable = wait_timeout=14400 |
Reinicie o serviço MySQL. Note que, após executar esta alteração, o novo arquivo /etc/my.cnf deve ser copiado a todos os outros membros do cluster que podem rodar o serviço MySQL.
Para verificar se um servidor MySQL teve seu tempo limite (time out), invoque o comando mysqladmin e examine o 'uptime'. Se o tempo limite expirou, invoque o pedido novamente para reconectar automaticamente ao servidor.
Dependendo da distribuição do Linux, uma das mensagens seguintes deve indicar o tempo limite de um servidor MySQL:
CR_SERVER_GONE_ERROR CR_SERVER_LOST |
Para adicionar um serviço MySQL usando a Ferramenta de Configuração do Cluster, faça o seguinte:
Inicie a Ferramenta de Configuração do Cluster selecionando Menu Principal => Configurações do Sistema => Configurações do Servidor => Cluster ou digitando redhat-config-cluster em uma janela de comandos. A Ferramenta de Estado do Cluster aparece por default.
Inicie a Ferramenta de Configuração do Cluster selecionando Cluster => Configurar pelos menus da Ferramenta de Estado do Cluster.
Clique na aba Serviços.
Adicione o serviço MySQL.
Clique em Novo. Aparece o diálogo Serviço.
Indique um Nome do Serviço para o serviço MySQL.
Selecione um Domínio de Transferência ou deixe como Nenhum (None).
Digite o número de segundos na caixa Intervalo de Verificação, se pretende verificar a saúde do serviço MySQL através da diretiva status do script init mysqld.
Indique um Script de Usuário, tal como /etc/init.d/mysqld.
Clique em OK.
Adicione um endereço IP para o serviço MySQL.
Selecione o serviço MySQL e clique em Adicionar Filho.
Selecione Adicionar Endereço IP do Serviço e clique em OK. Aparece o diálogo Endereço IP do Serviço.
Indique um Endereço IP.
Indique uma Máscara de Rede ou deixe o campo como Nenhum (None).
Indique um Endereço de Transmissão ou deixe-o como Nenhum (None).
Clique em OK.
Adicione um dispositivo para o serviço MySQL.
Selecione o serviço MySQL e clique em Adicionar Filho.
Selecione Adicionar Dispositivo e clique em OK. Aparece o diálogo Dispositivo.
Indique o Arquivo Especial do Dispositivo (ex.: /dev/sdc3).
No campo Ponto de Montagem, insira /var/lib/mysql.
Selecione o tipo de sistema de arquivo em Tipo de Sistema de Arquivo ou deixe-o em branco.
Indique quaisquer Opções de ponto de montagem, incluindo rw ('read-write' - leitura e gravação).
Selecione ou desselecione Forçar Desmontagem.
Clique em OK.
Selecione Arquivo => Salvar para salvar o serviço MySQL.