As seções seguintes descrevem como exibir, habilitar, desabilitar, modificar, realocar e apagar um serviço, e como lidar com serviços que falham em iniciar. Exemplos de configuração de serviços específicos são providos.
Após configurar o armazenamento de disco e instalar as aplicações a serem administradas pelo cluster, você pode configurar os serviços para administrar estas aplicações e recursos usando a Ferramenta de Configuração do Cluster.
Para configurar um serviço, siga estes passos:
Se for aplicável, crie um script para iniciar, parar e verificar o estado da aplicação usada no serviço. Consulte a Seção 3.1.2 para obter mais informações.
Colete informações sobre as propriedades e recursos do serviço. Consulte a Seção 3.1.1 para mais informações.
Configure os sistemas de arquivo ou dispositivos raw que o serviço utiliza. Consulte a Seção 3.1.3 para obter informações.
Certifique se o software da aplicação pode rodar em cada membro (no domínio de transferência associado, se for usado, ou no cluster) e que o script do serviço, se houver, pode iniciar e parar a aplicação do serviço. Consulte a Seção 3.1.4 para instruções sobre atualização.
Se for atualizar um cluster existente, faça backup do arquivo /etc/cluster.conf. Consulte a Seção 2.2 para instruções sobre atualizações (upgrade).
Inicie a Ferramenta de Configuração do Cluster e adicione serviços, especificando as informações sobre seus recursos e propriedades, obtidas na etapa 2.
Salve sua configuração. Ao salvar a configuração em um membro, ela é automaticamente propagada aos outros membros do cluster.
Para mais informações sobre a adição de um serviço ao cluster, consulte:
Antes de configurar um serviço, colete todas as informações disponíveis sobre os recursos e propriedades do serviço. Em alguns casos é possível especificar múltiplos recursos para um serviço (ex.: múltiplos endereços IP e dispositivos de disco).
Os recursos e propriedades do serviço que você pode especificar usando a Ferramenta de Configuração do Cluster estão descritas na Tabela 3-1.
Propriedade | Descrição | ||||
---|---|---|---|---|---|
Nome do Serviço | Cada serviço deve ter um nome único. O nome do serviço pode ter de um a 63 caracteres e deve ser uma combinação de letras (caixa alta ou baixa), números inteiros, underscores ( _ ), períodos e hífens. Um nome de serviço deve começar com uma letra ou underscore. | ||||
Domínio de Queda |
| ||||
Intervalo de verificação | Especifica a frequência (em segundos) com que o membro verifica a saúde da aplicação associada ao serviço. Por exemplo: quando você especifica um intervalo de verificação diferente de zero para um serviço do NFS ou do Samba, o Red Hat Cluster Manager verifica se os daemons necessários do NFS ou Samba estão rodando. Para outros tipos de serviços, o Red Hat Cluster Manager verifica o estado de retorno após chamar a cláusula de status do script do serviço da aplicação. Por default, o intervalo de verificação é 0, indicando que o monitoramento do serviço está desabilitado. | ||||
Script do usuário | Se for apropriado, especifique a localidade completa do script usado para iniciar e parar o serviço. Consulte a Seção 3.1.2 para mais informações. | ||||
Endereço IP |
| ||||
Arquivo especial do dispositivo | Especifique cada partição de disco compartilhada usada no serviço. | ||||
Sistema de arquivo e opções de partilha |
|
Tabela 3-1. Informações sobre as Propriedades e Recursos do Serviço
A infra-estrutura do cluster inicia e pára determinadas aplicações rodando scripts específicos do serviço. Para serviços do NFS e do Samba, os scripts associados são criados na infra-estrutura dos serviços do cluster. Consequentemente, ao rodar a Ferramenta de Configuração do Cluster para configurar os serviços do NFS e do Samba, deixe o campo Script do Usuário em branco. Para outros tipos de aplicação é necessário designar um script de serviço. Por exemplo: ao configurar uma aplicação de banco de dados, especifique a localidade completa do script de início correspondente ao banco de dados.
O formato dos scripts de serviço adota as convenções seguidas pelos scripts init do Sistema V. Esta convenção dita que os scripts têm as cláusulas start, stop e status. Estes scripts devem retornar um estado 0 de saída, se forem bem-sucedidos.
Quando um serviço falha em iniciar num membro do cluster, o Red Hat Cluster Manager tenta iniciá-lo em outros membros do cluster. Se os outros membros falharem ao iniciar aquele serviço, o Red Hat Cluster Manager tenta parar o serviço em todos os membros. Se, por alguma razão, falhar em parar o serviço, a infra-estrutura do cluster colocará o serviço no estado Falho. Os administradores devem então iniciar a Ferramenta de Estado do Cluster, destacar o serviço falho e clicar em Desabilitar antes de poder habilitá-lo novamente.
Além de executar as funções iniciar e parar, o script também é usado para monitorar o estado de um serviço de aplicação. Isto é feito chamando a cláusula status do script do serviço. Para habilitar o monitoramento do serviço, especifique um valor diferente de zero no campo Intervalo de Verificação ao determinar as propriedades do serviço com a Ferramenta de Configuração do Cluster. Se um pedido de verificação retornar uma saída diferente de zero ao script do serviço, então a infra-estruitura do cluster primeiro tenta reiniciar a aplicação no membro no qual rodava anteriormente. Funções de estado não precisam ser completamente implementadas nos scripts de serviço. Se o script não estiver efetuando um monitoramento real, então uma pequena cláusula status deve estar presente ao ser bem-sucedida.
As operações executadas na cláusula de estado (status) de uma aplicação podem ser afinadas para melhor atender às necessidades da aplicação assim como aos parâmetros específicos do site. Por exemplo: uma simples verificação de estado em um banco de dados seria verificar que o processo do banco de dados ainda está rodando. Uma verificação mais detalhada seria uma query na tabela do banco de dados.
O diretório /usr/share/cluster/doc/services/examples/ contém uma template que pode ser usada para criar scripts de serviço, além dos exemplos de scripts. Consulte a Seção 4.1, a Seção 4.3 e o Capítulo 6 para amostras de scripts.
Antes de criar um serviço, configure os sistemas de arquivo compartilhados e os dispositivos raw que o serviço deve usar. Consulte a Seção 1.4.4 para mais informações.
Se você empregar dispositivos raw em um serviço do cluster, pode usar o arquivo /etc/sysconfig/rawdevices para agrupar os dispositivos no momento da incialização. Edite o arquivo e especifique os dispositivos de caráter raw e de bloco que devem ser agrupados cada vez que o membro for inicializado. Consulte a Seção 2.5 para mais informações.
Note que o software RAID e o RAID baseado na máquina não podem ser usados pelo armazenamento de disco compartilhado. Somente as placas RAID baseadas em adaptadores SCSI certificados podem ser usadas para o armazenamento de disco compartilhado.
Você deve aderir às seguintes recomendações ao serviço de armazenamento de disco:
Para obter o máximo desempenho, use um bloco de 4KB ao criar os sistemas de arquivo. Note que alguns utilitários mkfs para construção de sistemas de arquivo tem bloco default de 1KB, que pode usar períodos longos de fsck.
Para facilitar processos de transferência mais rápidos, é recomendado usar sistemas de arquivo ext3. Consulte a Seção 1.4.4.6 para mais informações.
Para sistemas de arquivo grandes, use a opção nocheck para desviar o código que checa todos os grupos de bloco da partição. Especificar a opção nocheck pode diminuir bastante o tempo necessário para montar um sistema de arquivo grande.
Antes de configurar um serviço, instale todas as aplicações usadas pelo serviço em cada membro do cluster (ou cada membro no domínio de transferência, se for usado). Após fazer isso, verifique se a aplicação roda e se pode acessar o armazenamento de disco compartilhado. Para evitar a corrupção dos dados, não execute a aplicação em mais de um membro simultaneamente.
Se usar um script para iniciar e parar a aplicação do serviço, instale e teste o script em todos os membros do cluster e certifique-se de que pode ser usado para iniciar e parar a aplicação. Consulte a Seção 3.1.2 para mais informações.