Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
Administração de Cluster
Configurando e Gerenciando o Componente de Alta Disponibilidade
Edição 0
Resumo
Introdução
- Guia de Instalação do Red Hat Enterprise Linux — Fornece informações sobre a instalação do Red Hat Enterprise Linux 6.
- Guia de Implantação do Red Hat Enterprise Linux — Fornece informações sobre a implantação, configuração e administração do Red Hat Enterprise Linux 6.
- Visão Geral do Complemento de Alta Disponibilidade — Fornece uma visão geral de alto nível do Complemento de Alta Disponibilidade da Red Hat.
- Administração do Gerenciador de Volume Lógico — Fornece uma descrição do Gerenciador de Volume Lógico (LVM), incluindo informações sobre rodar o LVM em um ambiente de cluster.
- Global File System 2: Configuração e Administração — Fornece informações sobre instalação, configuração e como manter o Red Hat GFS2 (Red Hat Global File System 2), que é incluido na Complemento de Armazenamento Resiliente.
- DM Multipath — Fornece informações sobre o uso do recurso Mapeador de Dispositivos Multipath do Red Hat Enterprise Linux 6.
- Administração do Balanceador de Carga (Load Balancer) — Fornece informações sobre configuração de sistemas de alta performance e serviços com o Complemento do Balanceador de Carga, um conjunto de componentes de software integrados que fornece Linux Virtual Servers (LVS) para balanceamento de carga de IP por todo um conjunto de servidores reais.
- Notas de Lançamento — Fornece informações sobre os lançamentos atuais dos produtos da Red Hat.
1. Feedback
Cluster_Administration(EN)-6 (2013-2-15T16:26)
Capítulo 1. Configuração do Complemento de Alta Disponibilidade da Red Hat e Visão Geral do Gerenciamento
Nota
1.1. Recursos Novos e Modificados
1.1.1. Recursos Novos e Alterados para o Red Hat Enterprise Linux 6.1
- A partir do lançamento do Red Hat Enterprise Linux 6.1 e posteriores, o Complemento de Alta Disponibilidade Red Hat fornece suporte para SNMP traps (sinais). Para informações sobre configurar SNMP traps com o Complemento de Alta Disponibilidade Red Hat, consulte o Capítulo 10, Configuração do SNMP com Complemento de Alta Disponibilidade da Red Hat.
- A partir do lançamento do Red Hat Enterprise Linux 6.1 e posteriores, o Complemento de Alta Disponibilidade Red Hat fornece suporte para o comando de configuração de cluster
ccs
. Para informações sobre o comandoccs
, consulte o Capítulo 5, Configurando o Complemento de Alta Disponibilidade da Red Hat com o comando ccs. - A documentação para configurar e gerenciar o software Complemento de Alta Disponibilidade Red Hat usando o Conga foi atualizado para refletir as telas do Conga e suporte de recursos.
- Para o lançamento do Red Hat Enterprise Linux 6.1 e posteriores, usar o
ricci
requer uma senha para a primeira vez que você propagar configurações atualizadas do cluster a partir de qualquer nó especifico. Para informações sobre oricci
consulte a Seção 2.13, “Considerações para oricci
”. - Você pode agora especificar uma política de falha Restart-Disable para um serviço, indicando que um sistema deveria tentar reiniciar o serviço se este falhar, mas se a reinicialização do serviço falhar, o serviço será desabilitado em vez de ser movido para outro host no cluster. Este recurso está documentado na Seção 3.10, “Adicionar um Serviço de Cluster ao Cluster” e no Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade.
- Agora você pode configurar uma sub árvore independente como não crítica, indicando que se o recurso falhar então somente aquele recurso é desabilitado. Para informações sobre este recurso veja a Seção 3.10, “Adicionar um Serviço de Cluster ao Cluster” e a Seção C.4, “Recuperação de Falhas e Sub Árvores Independentes”.
- Este documento agora inclui o novo capítulo, Capítulo 9, Diagnosticando e Corrigindo Problemas em um Cluster.
1.1.2. Recursos Novos e Modificados para o Red Hat Enterprise Linux 6.2.
- O Red Hat Enterprise Linux agora fornece suporte para o Samba em Cluster em execução em uma configuração ativa/ativa. Para obter mais informações sobre a configuração do Samba em cluster, consulte o Capítulo 11, Configurações do Samba em Cluster.
- Embora qualquer usuário capaz de autenticar no sistema que esteja hospedando o luci possa se autenticar no luci, desde o Red Hat Enterprise Linux 6.2, somente o usuário root no sistema que esteja sendo executado o luci poderá acessar qualquer um dos componentes do luci até que um administrador (o usuário root ou um usuário com permissão de administrador) defina permissões para aquele usuário. Para informações sobre como configurar permissões do luci para usuários, consulte o Seção 3.3, “Controlando o Acesso ao luci”.
- Os nós em um cluster podem se comunicar entre si, utilizando o mecanismo de transporte unicast UDP. Para mais informações sobre como configurar o unicast UDP, consulte o Seção 2.12, “Tráfego do Unicast UDP”.
- Você pode agora configurar alguns aspectos do comportamento do luci através do arquivo
/etc/sysconfig/luci
. Por exemplo, você pode configurar especialmente o único endereço de IP onde o luci está sendo servido. Para obter mais informações sobre como configurar o único endereço IP onde o luciestá sendo servido, consulte o Tabela 2.2, “Porta IP habilitada em um computador que roda o luci”. Para obter informações sobre o arquivo/etc/sysconfig/luci
em geral, consulte o Seção 2.4, “Configurando luci com/etc/sysconfig/luci
”. - O comando
ccs
agora inclui a opção--lsfenceopts
a qual imprime uma lista de dispositivos de fence disponíveis,--lsfenceopts
e a opção fence_type que imprime cada tipo de fence disponível. Para informações sobre estas opções, consulte o Seção 5.6, “Lista de Dispositivos de Fence e Opções de Dispositivos de Fence”. - O comando
ccs
agora inclui a opção--lsserviceopts
que imprime uma lista de serviços de cluster disponíveis atualmente, e a opção--lsserviceopts
service_type que imprime uma lista de opções que você pode especificar para um tipo de serviço específico. Para informações sobre estas opções, consulte o Seção 5.11, “Listando Serviços de Cluster Disponíveis”. - O lançamento Red Hat Enterprise Linux 6.2 fornece suporte para o agente de fence VMware (SOAP Interface). Para mais informações sobre os parâmetros de dispositivo do fence, consulte o Apêndice A, Parâmetros de Dispositos Fence.
- O lançamento Red Hat Enterprise Linux 6.2 fornece suporte para o agente de fenceRHEV-M REST API no RHEV 3.0 ou posteriores. Para mais informações sobre os parâmetros de dispositivo do fence, consulte o Apêndice A, Parâmetros de Dispositos Fence.
- A partir do lançamento do Red Hat Enterprise Linux 6.2 , quando você configura uma máquina virtual em um cluster com o comando
ccs
, você pode usar a opção--addvm
(ao invés da opçãoaddservice
). Isto assegura que o recursovm
está definido diretamente sob o nó de configuraçãorm
no arquivo de configuração do cluster. Para informações sobre recursos de máquina virtual de configuração com o comandoccs
consulte o Seção 5.12, “Recursos de Máquina Virtual”. - Este documento inclui um novo apêndice Apêndice D, Checagem de Recursos de Serviço de Cluster e Expiração de Failover. Ele descreve como o
rgmanager
monitora o estado dos recursos do cluster, e como modificar o estado do intervalo de verificação. O apêndice também descreve o parâmetro do serviço__enforce_timeouts
, o qual indica que um timeout para uma operação deve causar falha no serviço. - O documento inclui uma nova seção, Seção 2.3.3, “Configurando o Firewall iptables para Permitir Componentes do Cluster.”. Esta seção exibe o filtro que você pode utilizar para permitir tráfego de multicast através do firewall do
iptables
para diversos componentes de cluster.
1.1.3. Recursos Novos e Alterados para o Red Hat Enterprise Linux 6.3
- O lançamento do Red Hat Enterprise Linux 6.3 fornece suporte para o agente de recurso
condor
. Para mais informações sobre os parâmetros de recursos HA, consulte Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade. - Este documento agora inclui o novo capítulo, Apêndice F, Alta Disponibilidade LVM (HA-LVM).
- Informações neste documento explicam quais mudanças de configuração requerem um reinício de cluster. Para um resumo destas mudanças, consulte Seção 9.1, “Mudança de configuração Não é efetuada”.
- A documentação agora observa que existe um timeout de espera para o luci que o retira depois de 15 minutos de inatividade. Para mais informações sobre iniciar um luci, consulte Seção 3.2, “Iniciando o luci”.
- O dispositivo de fence
fence_ipmilan
suporta um parâmetro de nível de privilégio. Para informações sobre parâmetros fence, consulte o Apêndice A, Parâmetros de Dispositos Fence. - Este documento agora inclui o novo capítulo, Seção 2.14, “Configurando as Máquinas Virtuais em um Ambiente Cluster”.
- Este documento agora inclui o novo capítulo, Seção 4.6, “Fazendo um backup e Recuperando a Configuração do luci”.
- Este documento agora inclui o novo capítulo, Seção 9.4, “O daemon do Cluster trava”.
- Este documento fornece informações sobre as opções de depuração de configuração em Seção 5.14.4, “Autenticando”, Seção 7.7, “Configuração das Opções de Depuração”, e Seção 9.13, “Autenticação de Depug para o Gerenciador de Bloqueio Distribuído (DLM) Precisa ser Habilitada”.
- Desde o Red Hat Enterprise Linux 6.3, o usuário root ou um usuário que tenha recebido permissões de um administrador do luci também poderão utilizar a interface do lucipara adicionar usuários ao sistema, como descrito em Seção 3.3, “Controlando o Acesso ao luci”.
- Desde o Red Hat Enterprise Linux 6.3, o comando
ccs
valida a configuração de acordo com o esquema do cluster em/usr/share/cluster/cluster.rng
no nó que você espeficar com a opção-h
. Anteriormente, o comandoccs
sempre usava o esquema do cluster que era empacotado com o próprio comandoccs
,/usr/share/ccs/cluster.rng
no sistema local. Para informações sobre a validação de configuração, consulte Seção 5.1.6, “Validação de Configuração”. - As tabelas que descrevem os parâmetros de dispositivo do fence em Apêndice A, Parâmetros de Dispositos Fence e tabelas de descrevem os parâmetros de recurso do HA em Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade agora incluem os nomes daqueles parâmetros como aparecem no arquivo
cluster.conf
.
1.1.4. Recursos Novos e Modificados para o Red Hat Enterprise Linux 6.4
- O lançamento Red Hat Enterprise Linux 6.4 fornece suporte para o agente de fence Eaton Network Power Controller (SNMP Interface), HP BladeSystem, e o IBM iPDU. Para mais informações sobre os parâmetros de dispositivo do fence, consulte o Apêndice A, Parâmetros de Dispositos Fence.
- Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade agora fornece uma descrição de agente de recurso do Servidor NFS.
- Desde Red Hat Enterprise Linux 6.4, o usuário root ou um usuário que recebeu permissões de administrador do luci também podem utilizar a interface do luci para remover usuários de sistemas. Isto é documentado em Seção 3.3, “Controlando o Acesso ao luci”.
- Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade fornece uma descrição do novo parâmetro
nfsrestart
para o Filesystem e recursos do GFS2 HA. - Esta documentação inclui uma nova seção Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
- Seção 2.3, “Habilitando Portas IP” agora inclui informações sobre filtragem do firewall
iptables
paraigmp
. - O agente de fence IPMI LAN agora suporta um parâmetro para configurar o nível de privilégio no dispositivos IPMI, como documentado em Apêndice A, Parâmetros de Dispositos Fence.
- Além do modo de vinculação Ethernet, os modos 0 e 2 são agora suportados pela comunicação entre nós em um cluster. A sugestão de troubleshooting neste documenta que sugere que você se certifique se está usando somente modos de vinculação suportada agora observa isto.
- Os dispositivos de rede marcados com VLAN são agora suportados para a comunicação de pulsação do coração do cluster. A nota sobre troubleshooting indica que a frase "isto não é suportado" foi removida deste documennto.
- O Red Hat High Availability Add-On agora suporta a configuração de protocolo de anel redundante. Para informações em geral sobre como utilizar o recurso e configuração do arquivo de configuração
cluster.conf
consulte o Seção 7.6, “Configurando o Protocolo de Anel Redundante”. Para informações sobre o protocolo de anel redundante com luci, consulte o Seção 3.5.4, “Configurando, Protocolo de Anel Redundante”. Para informações sobre como configurar o protocolo de anel redundante com o comandoccs
consulte o Seção 5.14.5, “Configurando o Protocolo de Anel Redundante”.
1.2. Configurações Básicas
- Definir um hardware. Consulte a Seção 1.3, “Configurando o Hardware”.
- Instalando o software Complemento de Alta Disponibilidade. Consulte a Seção 1.4, “Instalando o software de Alta Disponibilidade da Red Hat”.
- Configurando o software Complemento de Alta Disponibilidade. Consulte a Seção 1.5, “Configurando o software do Complemento de Alta Disponibilidade da Red Hat”.
1.3. Configurando o Hardware
- Nós em cluster — Os computadores são capázeis de executar um Red Hat Enterprise Linux 6 software, com o mínimo de 6GB de RAM.
- Switch Ethernet ou hub para rede pública — Isto é requerido para o cliente acessar o cluster.
- Switch Ethernet ou hub para rede privada — Isto é requerido para comunicação entre os nós do cluster e outros hardwares de cluster tais como switches de energia de rede e switches Fibre Channel.
- Switch de Energia de Rede — É recomendado para realizar fences em um cluster de nível corporativo.
- Fibre Channel switch — Fornece acesso a armazenamento Fibre Channel. Outras opções estão disponíveis para armazenamento de acordo com o tipo de interface de armazenamento; por exemplo, iSCSI. Um switch Fibre Channel pode ser configurado para realizar fencing.
- Armazenamento — Algum tipo de armazenamento é requerido para um cluster. O tipo requerido depende do propósito do cluster.
Figura 1.1. Visão Geral do Hardware do Complemento de Alta Disponibilidade da Red Hat
1.4. Instalando o software de Alta Disponibilidade da Red Hat
yum install
para instalar os pacotes de software do High Availability Add-On:
# yum install rgmanager lvm2-cluster gfs2-utils
rgmanager
colocará todas as dependências necessárias para criar um cluster de HA a partir do canal do HighAvailability. Os pacotes lvm2-cluster
e o gfs2-utils
são parte do canal ResilientStorage e pode não ser requisitado pelo seu site.
1.4.1. Atualizando o software de Alta Disponibilidade Red Hat
- Desligue todos os serviços de cluster em um nó do cluster único. Para instruções de como parar o software de cluster em um nó, consulte a Seção 8.1.2, “Parando um Software de Cluster”. Pode ser desejável realocar manualmente os serviços gerenciados de cluster e máquinas virtuais fora do host antes de para-los.
- Execute o comando
yum update
para atualizar pacotes instalados. - Reinicie o nó no cluster ou reinicie os serviços de cluster manualmente. Para instruções sobre reiniciar os software de cluster em um nó, consulte a Seção 8.1.1, “Iniciar o Software do Cluster”.
1.5. Configurando o software do Complemento de Alta Disponibilidade da Red Hat
- Conga — Esta é um compreensiva interface de usuário para instalar, configurar e gerenciar o Complemento de Alta Disponibilidade da Red Hat. Consulte o Capítulo 3, Configurando o Complemento de Alta Disponibilidade da Red Hat com o Conga e o Capítulo 4, Gerenciando o Complemento de Alta Disponibilidade Red Hat com o Conga para informações sobre configurar e gerenciar o Complemento de Alta Disponibilidade com o Conga.
- O comando
ccs
— Este comando configura e gerencia o Complemento de Alta Disponibilidade da Red Hat. Consulte o Capítulo 5, Configurando o Complemento de Alta Disponibilidade da Red Hat com o comando ccs e o Capítulo 6, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs para informações sobre configurar e gerenciar o Complemento de Alta Disponibilidade com o comandoccs
. - Ferramentas da Linha de Comando — Este é um conjunto de ferramentas de linha de comando para configuração e gerenciamento do Complemento de Alta Disponibilidade da Red Hat. Consulte o Capítulo 7, Configurando o Complemento de Alta Disponibilidade da Red Hat com as Ferramentas da Linha de Comando e o Capítulo 8, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com Ferramentas da Linha de Comando. para informações sobre configurar e gerenciar um cluster com as ferramentas de linha de comando. Consulte o Apêndice E, Resumo das Ferramentas da Linha de Comando para um resumo das ferramentas de linha de comando preferidas.
Nota
system-config-cluster
não está disponível no RHEL 6.
Capítulo 2. Antes de configurar o Complemento de Alta Disponibilidade da Red Hat
Importante
2.1. Considerações Gerais de Configuração
- Número de nós em clusters suportados
- O número máximo de nós de clusters suportados pelo Complemento de Alta Disponibilidade é 16.
- Cluster de locais únicos
- Somente clusters de locais únicos são suportados neste momento. Clusters espalhados por múltiplas localidades físicas não são formalmente suportados. Para mais detalhes e para discutir sobre cluster em múltiplas locações, por favor converse com seu representante de vendas ou suporte Red Hat.
- GFS2
- Apesar de que um sistema GFS2 possa ser implementado em um sistema isolado ou como parte de uma configuração de cluster, a Red Hat não suporta o uso do GFS2 como um sistema de arquivos de nó único. A Red Hat suporta um número de sistemas de arquivos de nó único de alto desempenho que são otimizados para nó único, e portanto tem um custo geralmente menor que um sistema de arquivos em cluster. A Red Hat recomenda usar em preferência estes sistemas de arquivos do que o GFS2 em casos onde somente um nó único precisa ser montado no sistema de arquivos. A Red Hat continuará a dar suporte à sistemas de arquivos de nós únicos GFS2 para clientes existentes.Quando você configura um sistema de arquivos GFS2 como um sistema de arquivos de cluster, você deve assegurar que todos os nós no cluster têm acesso ao sistema de arquivos compartilhados. Configurações de cluster assimétricas nos quais os nós tem acesso ao sistema de arquivos e outros não são suportados. Isto não requer que todos os nós montem o sistema de arquivos GFS2.
- Configuração de hardware sem ponto único de falha
- Os clusters podem incluir uma Matriz RAID de controlador duplo, múltiplos canais de redes ligadas, múltiplos caminhos entre membros do cluster e armazenamento e sistemas de fonte de energia ininterrupta redundante (UPS - uninterruptible power supply) para assegurar que não haja uma falha única que resulte na queda das aplicações ou perda de dados.Alternativamente, um cluster de baixo custo pode ser configurado para fornecer menos disponibilidade do que um cluster sem ponto único de falha. Por exemplo, você pode configurar um cluster com uma matriz RAID de controlador único e somente um canal único Ethernet.Certas alternativas de baixo custo, tal como controladores de host RAID, RAID software sem suporte de cluster e configurações SCSI paralelas multi-initiator não são compatíveis ou apropriadas para uso como armazenamento de cluster compartilhado.
- Garantia de Integridade de Dados
- Para garantir integridade de dados, somente um nó pode rodar um serviço de cluster e acessar os dados do serviço de cluster por vez. O uso de switches de energia na configuração de hardware do cluster permite a um nó fazer um ciclo de energia em outro nó antes de iniciar os serviços de Alta Disponibilidade em outro nó durante um processo de failover. Isso previne que dois nós acessem simultaneamente os mesmos dados e os tornem corrompidos. Dispositivos Fence (soluções de hardware e software que remotamente ligam, desligam e reinicializam nós no cluster) são usados para garantir integridade dos dados quando em condições de falha.
- Ligação de Canal Ethernet
- O quorum de cluster e a saúde do nó são determinados pela comunicação de mensagens entre nós do cluster via Ethernet. Além disso, nós do cluster usam a Ethernet para uma variedade de outras funções críticas do cluster (por exemplo, fencing). Com a ligação de canal Ethernet, múltiplas interfaces Ethernet são configuradas para se comportar como uma só, reduzindo o risco de falha em ponto único na conexão típica Ethernet no switch entre nós do cluster e outros hardware de cluster.Desde o Red Hat Enterprise Linux 6.4, os modos de vinculação 0, 1, e 2 são suportados.
- IPv4 e IPv6
- O Complemento de Alta Disponibilidade suporta ambos protocolos de internet IPv4 e IPv6. O suporte ao IPv6 no Complemento de Alta Disponibilidade é nova para o Red Hat Enterprise Linux 6.
2.2. Hardware Compatíveis
2.3. Habilitando Portas IP
iptables
para habilitar as necessidades das portas IP pelo Red Hat High Availability Add-On:
2.3.1. Habilitando Portas IP em nós de Cluster
system-config-firewall
para habilitar as portas IP.
Tabela 2.1. Portas IP habilitadas em nós com o Complemento de Alta Disponibilidade
Número de Porta IP | Protocolo | Componente |
---|---|---|
5404, 5405 | UDP | corosync/cman (Gerenciador de Cluster) |
11111 | TCP | ricci (propaga as informações atualizadas do cluster) |
21064 | TCP | dlm (Gerenciador de Bloqueio Distribuído) |
16851 | TCP | modclusterd |
2.3.2. Habilitando portas IP para luci
Nota
Tabela 2.2. Porta IP habilitada em um computador que roda o luci
Número de Porta IP | Protocolo | Componente |
---|---|---|
8084 | TCP | luci (Conga servidor de interface de usuário) |
/etc/sysconfig/luci
, você pode configurar especificamente o único endereço iP onde luci está sendo servido. Você pode utilizar esta capacidade se sua infraestrutura de servidor incorporar mais do que uma rede e você quiser acessar o luci de uma rede interna. Para fazer isto, descomente e edite a linha no arquivo que especifia o host
. Por exemplo, para mudar a configuração do host
no arquivo 10.10.10.10, edite a linha do host
como se segue:
host = 10.10.10.10
/etc/sysconfig/luci
consulte o Seção 2.4, “Configurando luci com /etc/sysconfig/luci
”.
2.3.3. Configurando o Firewall iptables para Permitir Componentes do Cluster.
cman
(Cluster Manager), utilize o seguinte filtro.
$iptables -I INPUT -m state --state NEW -m multiport -p udp -s 192.168.1.0/24 -d 192.168.1.0/24 --dports 5404,5405 -j ACCEPT
$iptables -I INPUT -m addrtype --dst-type MULTICAST -m state --state NEW -m multiport -p udp -s 192.168.1.0/24 --dports 5404,5405 -j ACCEPT
dlm
(Distributed Lock Manager):
$ iptables -I INPUT -m state --state NEW -p tcp -s 192.168.1.0/24 -d 192.168.1.0/24 --dport 21064 -j ACCEPT
ricci
(parte do agente remoto do Conga):
$ iptables -I INPUT -m state --state NEW -p tcp -s 192.168.1.0/24 -d 192.168.1.0/24 --dport 11111 -j ACCEPT
modclusterd
(parte do agente remoto do Conga):
$ iptables -I INPUT -m state --state NEW -p tcp -s 192.168.1.0/24 -d 192.168.1.0/24 --dport 16851 -j ACCEPT
luci
(O servidor de Interface do Usuário Conga):
$ iptables -I INPUT -m state --state NEW -p tcp -s 192.168.1.0/24 -d 192.168.1.0/24 --dport 16851 -j ACCEPT
igmp
(Internet Group Management Protocol):
$ iptables -I INPUT -p igmp -j ACCEPT
$ service iptables save ; service iptables restart
2.4. Configurando luci com /etc/sysconfig/luci
/etc/sysconfig/luci
. Os parâmetros que você pode modificar com este arquivo inclui as configurações auxiliares do ambiente em execução usado pelo script init assim como a configuração do servidor. Alem disso, você pode editar este arquivo para modificar alguns parâmetros de configuração de aplicativo. Estas são instruções dentro do arquivo que descrevem quais parâmetros de configuração você pode mudar ao editar este arquivo.
/etc/sysconfig/luci
quando você editar o arquivo. Além disso, você deve tomar cuidado para seguir a sintaxe requerida para este arquivo, especialmente para a seção INITSCRIPT
que não permite espaços em branco perto do sinal de igual e requer que você utilize as marcações de quotação para colocar as faixas que contém espaços em branco entre parênteses.
/etc/sysconfig/luci
.
- Descomente a seguinte linha no arquivo
/etc/sysconfig/luci
:#port = 4443
- Substitua o 4443 pelo número de porta desejado, que deve ser maior do que ou igual a 1024 (não uma porta privilegiada). Por exemplo, você pode editar aquela linha de arquivos como se segue para definir a porta onde o luci está sendo servido no 8084.
port = 8084
- Reiniciar o serviço do luci para as mudanças tomarem efeito.
Importante
/etc/sysconfig/luci
para redefinir um valor padrão, você deve tomar cuidado para usar um novo valor no lugar do valor padrão documentado. Por exemplo, quando você modificar a porta onde o luci está sendo servido, tenha a certeza de que você especificou o valor modificado ao habilitar uma porta IP para o luci como descrito em Seção 2.3.2, “Habilitando portas IP para luci”.
/etc/sysconfig/luci
consulte a própria documentação dentro do próprio arquivo.
2.5. Configurando o ACPI para uso com dispositivos fence integrados
Nota
shutdown -h now
). Senão, se o ACPI Soft-Off estiver habilitado, um dispositivo fence integrado pode levar quatro ou mais segundos para desligar um nó. Além disso, se o ACPI Soft-Off estiver habilitado e um nó entra em pânico ou congela durante o desligamento, um dispositivo fence integrado pode não ser capaz de desligar o nó. Dentro destas circunstâncias, a ação do fence é atrasada ou realizada sem sucesso. Consequentemete, quando um nó estiver em fence com um dispositivo fence integrado e o ACPI Soft-Off estiver habilitado, um cluster se recupera lentamente ou requer intervenção administrativa para se recuperar.
Nota
chkconfig
e verifique que o nó se desligue imediatamente quando em fence. A maneira preferencial para desabilitar o ACPI Soft-Off é com o gerenciador chkconfig
: entretanto, se este método não é satisfatório para seu cluster, você pode desabilitar o ACPI Soft-Off com um dos seguintes comandos alternativos:
- Alterar a configuração da BIOS para "instant-off" ou uma configuração equivalente que desliga um nó sem atraso.
Nota
Desabilitar o ACPI Soft-Off com a BIOS pode não ser possível em alguns computadores. - Anexando
acpi=off
na linha de comando de inicialização do kernel no arquivo/boot/grub/grub.conf
Importante
Este método desabilita completamente o ACPI; alguns computadores não inicializam corretamente se o ACPI estiver completamente desabilitado. Use este método somente se os outros métodos não forem efetivos para seu cluster.
- Seção 2.5.1, “Desabilitando o ACPI Soft-Off com o gerenciador
chkconfig
” — Método preferido - Seção 2.5.2, “Desabilitando o ACPI Soft-Off com a BIOS” — Primeiro método alternativo
- Seção 2.5.3, “Desabilitar completamente o ACPI no arquivo
grub.conf
.” — Segundo método alternativo
2.5.1. Desabilitando o ACPI Soft-Off com o gerenciador chkconfig
chkconfig
para desabilitar o ACPI Soft-Off tanto removendo o ACPI daemon (acpid
) do gerenciador chkconfig
ou desligando o acpid
.
Nota
chkconfig
em cada nó do cluster como a seguir:
- Rode qualquer dos seguintes comandos:
chkconfig --del acpid
— Este comando remove oacpid
do gerenciadorchkconfig
.— OU —chkconfig --level 2345 acpid off
— Este comando desliga oacpid
.
- Reinicialize o nó.
- Quando o cluster estiver configurado e rodando, verifique de que o nó se desligue imediatamente quando estiver em fence.
Nota
Você pode fazer um fence em um nó com o comandofence_node
ou Conga.
2.5.2. Desabilitando o ACPI Soft-Off com a BIOS
chkconfig
(Seção 2.5.1, “Desabilitando o ACPI Soft-Off com o gerenciador chkconfig
”). Entretanto, se o método preferido não for efetivo para seu cluster, siga o procedimento desta seção.
Nota
- Reinicialize o nó e inicie o programa
Utilitário de Configuração da BIOS CMOS
- Vá até o menu Power (ou menu equivalente de gerenciamento de energia).
- No menu Power, configure a função Soft-Off by PWR-BTTN (ou equivalente) para Instant-Off (ou configuração equivalente que desligue o nó pelo botão liga/desliga sem atraso). O Exemplo 2.1, “
Utilitário de Configuração da BIOS CMOS
: Soft-Off by PWR-BTTN definido para Instant-Off” exibe o menu Power com a função ACPI definida para Habilitada e Soft-Off pelo PWR-BTTN definido para Instant Off.Nota
O equivalente a Função ACPI, Soft-Off pelo PWR-BTTN, e Instant-Off pode variar entre computadores. Entretanto, o objetivo deste procedimento é configurar a BIOS para que o computador desligue pelo botão de energia sem atraso. - Saia do
Utilitário de configuração da BIOS CMOS
e salve as configurações. - Quando o cluster estiver configurado e rodando, verifique de que o nó se desligue imediatamente quando estiver em fence.
Nota
Você pode fazer um fence em um nó com o comandofence_node
ou Conga.
Exemplo 2.1. Utilitário de Configuração da BIOS CMOS
: Soft-Off by PWR-BTTN definido para Instant-Off
+---------------------------------------------|-------------------+ | ACPI Function [Enabled] | Item Help | | ACPI Suspend Type [S1(POS)] |-------------------| | x Run VGABIOS if S3 Resume Auto | Menu Level * | | Suspend Mode [Disabled] | | | HDD Power Down [Disabled] | | | Soft-Off by PWR-BTTN [Instant-Off | | | CPU THRM-Throttling [50.0%] | | | Wake-Up by PCI card [Enabled] | | | Power On by Ring [Enabled] | | | Wake Up On LAN [Enabled] | | | x USB KB Wake-Up From S3 Disabled | | | Resume by Alarm [Disabled] | | | x Date(of Month) Alarm 0 | | | x Time(hh:mm:ss) Alarm 0 : 0 : | | | POWER ON Function [BUTTON ONLY | | | x KB Power ON Password Enter | | | x Hot Key Power ON Ctrl-F1 | | | | | | | | +---------------------------------------------|-------------------+
2.5.3. Desabilitar completamente o ACPI no arquivo grub.conf
.
chkconfig
(Seção 2.5.1, “Desabilitando o ACPI Soft-Off com o gerenciador chkconfig
”). Caso o método preferido não seja efetivo em seu cluster, você pode desabilitar o ACPI Soft-Off com o gerenciamento de energia do BIOS (Seção 2.5.2, “Desabilitando o ACPI Soft-Off com a BIOS”). Se nenhum destes métodos for efetivo em seu cluster, você pode desabilitar o ACPI totalmente, adicionando o acpi=off
na linha de comando de inicialização do kernel no arquivo grub.conf
.
Importante
grub.conf
em cada nó do cluster como a seguir:
- Abra
/boot/grub/grub.conf
com um editor de textos. - Adicione
acpi=off
à linha de comando de inicialização do kernel em/boot/grub/grub.conf
(consulte Exemplo 2.2, “A linha de comando de inicialização do kernel comacpi=off
”). - Reinicialize o nó.
- Quando o cluster estiver configurado e rodando, verifique de que o nó se desligue imediatamente quando estiver em fence.
Nota
Você pode fazer um fence em um nó com o comandofence_node
ou Conga.
Exemplo 2.2. A linha de comando de inicialização do kernel com acpi=off
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/mapper/vg_doc01-lv_root # initrd /initrd-[generic-]version.img #boot=/dev/hda default=0 timeout=5 serial --unit=0 --speed=115200 terminal --timeout=5 serial console title Red Hat Enterprise Linux Server (2.6.32-193.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-193.el6.x86_64 ro root=/dev/mapper/vg_doc01-lv_root console=ttyS0,115200n8 acpi=off initrd /initramrs-2.6.32-131.0.15.el6.x86_64.img
acpi=off
foi inserido à linha de comando de inicialização do kernel — a linha iniciando com "kernel /vmlinuz-2.6.32-193.el6.x86_64.img".
2.6. Considerações para Configurar Serviços HA
rgmanager
, implementa failover para aplicações comuns. No Complemento de Alta Disponibilidade, uma aplicação é configurada com outros recursos de cluster para formar um serviço HA que pode ocorrer failover de um nó no cluster para outro sem interrupção aparente para clientes do cluster. O failover em serviços HA podem ocorrer se um nó no cluster falhar ou se um administrador de sistemas do cluster move o serviço de um nó do cluster para outro (por exemplo, para uma manutenção planejada de um nó no cluster).
- recurso de endereço de IP — endereço de IP 10.10.10.201.
- Um recurso de aplicação chamado "http-content" — um script de inicialiação de aplicação de servidor web
/etc/init.d/httpd
(especificando ohttpd
). - Um recurso de sistema de arquivos — Red Hat GFS 2 chamado "gfs2-content-webserver".
Figura 2.1. Exemplo de Serviço de Cluster Servidor Web
Nota
/etc/cluster/cluster.conf
(em cada nó no cluster). No arquivo de configuração do cluster, cada árvore de recursos é uma representação XML que especifica cada recurso, seus atributos e seu relacionamento entre outros recursos na árvore de recursos (relacionamentos pai, filhos e irmãos).
Nota
- Os tipos de recursos necessários para criar um serviço
- Relacionamentos de Pai, filhos e irmãos entre recursos
2.7. Validação de Configuração
/usr/share/cluster/cluster.rng
durante o tempo de inicialização e quando uma configuração é recarregada. Também, você pode validar uma configuração de cluster em qualquer momento usando o comando ccs_config_validate
. Para mais informações sobre validação de configuração quando usar o comando ccs
vejaSeção 5.1.6, “Validação de Configuração”.
/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
- Validade XML — Checa que o arquivo de configuração é um arquivo XML válido.
- Opções de configuração — Verifica para ter certeza que opções (elementos e atributos XML) são vaĺidos.
- Valores de Opção — Verifica que as opções contém dados válidos (limitados).
- Configurações válidas — Exemplo 2.3, “
cluster.conf
Exemplo de Configuração: Arquivo Válido” - Opções inválidas — Exemplo 2.5, “
cluster.conf
Exemplo de configuração: Opção Inválida” - Valor de opção inválida — Exemplo 2.6, “
cluster.conf
Exemplo de configuração: Valor de opção inválida”
Exemplo 2.3. cluster.conf
Exemplo de Configuração: Arquivo Válido
<cluster name="mycluster" config_version="1"> <logging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> </cluster>
Exemplo 2.4. cluster.conf
Exemplo de Configuração: XML Inválido
<cluster name="mycluster" config_version="1"> <logging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster> <----------------INVALID
<cluster>
ao invés do correto </cluster>
.
Exemplo 2.5. cluster.conf
Exemplo de configuração: Opção Inválida
<cluster name="mycluster" config_version="1"> <loging debug="off"/> <----------------INVALID <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster>
loging
ao invés do correto logging
.
Exemplo 2.6. cluster.conf
Exemplo de configuração: Valor de opção inválida
<cluster name="mycluster" config_version="1"> <loging debug="off"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="-1"> <--------INVALID <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> <cluster>
nodeid
na linha clusternode
para node-01.example.com
. O valor é negativo ("-1") em vez de positivo ("1"). Para o atributo nodeid
o valor deve ser um positivo.
2.8. Considerações para o NetworkManager
Nota
cman
não iniciará se o NetworkManager
estiver tanto rodando ou foi configurado para rodar com o comando chkconfig
.
2.9. Considerações para usar o Disco de Quorum
qdiskd
, que fornece heurísticas complementares para determinar adequação do nó. Com heurísticas você pode determinar fatores que são importantes para a operação do nós em um evento de partição da rede. Por exemplo, em um cluster de quatro nós com uma divisão 3:1, ordinariamente, os três nós automaticamente "ganham" por causa da maioria três pra um. Sob essas circunstâncias, o nó possui um fence. Com o qdiskd
entretanto, você pode configurar as heurísticas que permitem um nó a vencer baseado no acesso a um recurso crítico (por exemplo, um caminho de rede crítico). Se seu cluster requer métodos adicionais para determinar a saúde do nó, então você deveria configurar o qdiskd
para atender essas necessidades.
Nota
qdiskd
não é requerido ao menos que você tenha requerimentos especiais para a saúde do nó. Um exemplo de um requerimento especial é uma configuração "todos-menos-um" Em uma configuração "todos-menos-um", o qdiskd
está configurado para fornecer suficientes votos de quorum para manter quorum mesmo que somente um nó esteja funcionando.
Importante
qdiskd
para sua implementação dependem do ambiente local e requerimentos especiais necessários. Para entender o uso de heurísticas e outros parâmetros qdiskd
, consulte a página man qdisk(5). Se você requer assistencia para entender sobre o uso do qdiskd
para seu local, contate um representante de suporte Red Hat autorizado.
qdiskd
, você deveria levar em conta as seguintes considerações:
- Votos de nós do Cluster
- Quando usar o Disco de Quorum, cada nó do cluster deve ter um voto.
- O valor de expiração de sessão da afiliação CMAN
- O valor de expiração CMAN (o tempo que um nó precisa de estar sem resposta antes que o CMAN considere que o nó precisa ser eliminado e não mais um membro) deve ser ao menos duas vezes o valor de expiração de afiliação do
qdiskd
. A razão é por causa que o daemon quorum deve detectar nós com falha sozinho, e pode levar muito mais tempo para fazer isso do que o CMAN. O valor padrão para a expiração de afiliação do CMAN é 10 segundos. Outras condições específicas do lugar podem afetar o relacionamento entre a valores de expiração de afiliação do CMAN e oqdiskd
. Para assistência em ajustar o valor de expiração de afiliação do CMAN, contate um representante de suporte autorizado Red Hat. - Fencing
- Para garantir um fencing confiável quando usar o
qdiskd
, use o power fencing. Enquanto outros tipos de fencing podem ser confiáveis para cluster não configurados com oqdiskd
, eles não são confiáveis para um cluster configurado com oqdiskd
. - Nós máximos
- Um cluster configurado com o
qdiskd
suporta um máximo de 16 nós. A razão para o limite é por causa da escalabilidade; aumentando a contagem de nós, aumenta o número de contenções de E/S síncronas para o dispositivo de disco de quorum compartilhado. - Dispositivo de Disco de Quorum
- Um dispositivo de disco de quorum deve ser um dispositivo de bloco compartilhado com acesso de leitura e escritas simultâneos por todos os nós no cluster. O tamanho mínimo do dispositivo de bloco é 10 Megabytes. Exemplos de dispositivos de bloco compartilhados que podem ser usados pelo
qdiskd
são uma multi-port SCSI RAID array, Fibre Channel RAID SAN, ou um RAID-configured iSCSI target. Você pode criar um dispositivo de disco de quorum com omkqdiskd
, o Utilitário de Disco de Quorum de Cluster. Para informações sobre o uso deste utilitário, consulte a página man mkqdiskd(8).Nota
Usando o JBOD como disco de quorum não é recomendado. Um JBOD não pode fornecer desempenho dependente e então não pode permitir que um nó escreva nele rápido o suficiente. Se um nó é incapaz de escrever em um dispositivo de disco de quorum rapido o bastante, o nó é falsamente expulso de um cluster.
2.10. Complemento de Alta Disponibilidade Red Hat e o SELinux
enforcing
com o tipo de política SELinux definida para targeted
.
2.11. Endereços Multicast
Nota
2.12. Tráfego do Unicast UDP
cman transport="udpu"
no arquivo de configuração cluster.conf
. Você pode especificar Unicast a partir da página Network Configuration da interface do usuário, Conga como descrito em Seção 3.5.3, “Configuração de Rede”.
2.13. Considerações para o ricci
ricci
substitui o ccsd
. Portanto, é necessário que o ricci
esteja rodando em cada nó do cluster para ser capaz de propagar as configurações do cluster atualizadas seja pelo comando cman_tool -r
, o comando ccs
ou pelo servidor de interface do usuário luci
. Você pode iniciar o luci usando service ricci start
ou habilitando-o para iniciar durante o boot pelo chkconfig
. Para informações sobre habilitar portas IP através do ricci
, consulte a Seção 2.3.1, “Habilitando Portas IP em nós de Cluster”.
ricci
requer uma senha na primeira vez que você propaga a configuração de cluster atualizada a partir de algum nó específico. Você define a senha ricci
como root depois de instalar o ricci
em seu sistema com o comando passwd ricci
, para o usuário ricci
.
2.14. Configurando as Máquinas Virtuais em um Ambiente Cluster
rgmanager
para iniciar e interromper as máquinas virtuais. O uso do virsh
para iniciar a máquina pode fazer com que a máquina seja executada em mais do que um local, que pode causar danos de dados na máquina virtual.
virsh
, como o arquivo de configuração ficará desconhecido fora da caixa para o virsh
.
path
de um recurso da máquina virtual. Observe que o atributo path
é um diretório ou conjunto de diretórios separados pelo caractere dois pontos ':', não um caminho para o arquivo específico.
Atenção
libvirt-guests
deve estar disabilitado em todos os nós que estiverem executando o rgmanager
. Se uma máquina virtual iniciar automaticamente ou parar, isto pode resultar na máquina virtual ser executada em mais do que um local, o que pode causar danos de dados na máquina virtual.
Capítulo 3. Configurando o Complemento de Alta Disponibilidade da Red Hat com o Conga
Nota
3.1. Tarefas de Configuração
- Configurar e rodar a interface de usuário de configuração do Conga — o servidor luci. Consulte a Seção 3.2, “Iniciando o luci”.
- Criando um cluster. Consulte a Seção 3.4, “Criando um Cluster”.
- Configurando propriedades de cluster globais. Consulte a Seção 3.5, “Propriedades de Cluster Globais”.
- Configurando dispositivos fence. Consulte a Seção 3.6, “Configurando Dispositivos Fence”.
- Configurando o fencing para membros do cluster. Consulte a Seção 3.7, “Configurar Fence para Membros do Cluster”.
- Criando domínios failover. Consulte a Seção 3.8, “Configurando um Domínio de Failover”.
- Criando recursos. Consulte a Seção 3.9, “Configurar Recursos de Cluster Globais”.
- Criando serviços de cluster. Consulte a Seção 3.10, “Adicionar um Serviço de Cluster ao Cluster”.
3.2. Iniciando o luci
Nota
ricci
para configurar um cluster requer que o ricci
seja instalado e rodado nos nós do cluster, conforme descrito na Seção 2.13, “Considerações para o ricci
”. Conforme observado nessa seção, usando o ricci
requer uma senha que o luci
pede para você digitar para cada nó no cluster quando você criar um cluster, conforme descrito em Seção 3.4, “Criando um Cluster”.
- Selecione um computador para ter o luci e instale o software luci nesse computador. Por exemplo:
#
yum install luci
Nota
Tipicamente, um computador no papel de servidor ou um data center hospeda o luci; entretanto, um computador em cluster pode hospedar o luci. - Inicie o luci usando
service luci start
. Por exemplo:#
service luci start
Starting luci: generating https SSL certificates... done [ OK ] Please, point your web browser to https://nano-01:8084 to access luciNota
Desde o Red Hat Enterprise Linux release 6.1, você pode configurar alguns aspectos do comportamento do luci através do arquivo/etc/sysconfig/luci
, incluindo os parâmetros de porta e máquina, como descrito em Seção 2.4, “Configurando luci com/etc/sysconfig/luci
”. Os parâmetros de porta e máquina modificados irão refletir automaticamente no URL exibido quando o serviço luci iniciar. - Em um navegador da Web, coloque a URL do servidor luci em sua barra de endereços de URL e clique em
Go
(ou o equivalente). A sintáxe da URL para o servidor luci éhttps://luci_server_hostname:luci_server_port
. O valor padrão de luci_server_port é8084
.A primeira vez que você acessar o luci, o navegador web exibe uma pergunta sobre o certificado auto assinado de SSL (do servidor luci). Após confirmação o navegador exibe a página de login do luci. - Embora qualquer usuário capaz de autenticar no sistema que esteja hospedando o luci possa se autenticar no luci, desde o Red Hat Enterprise Linux 6.2, somente o usuário root no sistema que esteja sendo executado o luci poderá acessar qualquer um dos componentes do luci até que um administrador (o usuário root ou um usuário com permissão de administrador) defina permissões para aquele usuário. Para informações sobre como configurar permissões do luci para usuários, consulte o Seção 3.3, “Controlando o Acesso ao luci”.Depois de logar, o luci exibe a página Homebase, como mostrada na Figura 3.1, “Página Homebase do luci”.
Figura 3.1. Página Homebase do luci
Nota
3.3. Controlando o Acesso ao luci
- Desde o Red Hat Enterprise Linux 6.2, o usuário root ou um usuário que recebeu permissões do administrador do luci em um sistema executando o luci pode controlar o acesso à diversos componentes do luci definindo permissões para os usuários individuais em um sistema.
- Desde o Red Hat Enterprise Linux 6.3, o usuário root ou um usuário que recebeu permissões de administrador do luci também poderão utilizar a interface do luci para adicionar usuários ao sistema.
- Desde o Red Hat Enterprise Linux 6.4, o usuário root ou um usuário que recebeu permissões de administrador do luci também poderão utilizar a interface do luci para remover usuários do sistema.
root
ou então como um usuário que recebeu permissões de administrador e clique na seleção Admin no canto superior direito da tela do luci. Isto exibirá a página do Usuários e Permissões, que exibe os usuários existentes.
- Luci Administrator
- Fornece as mesmas permissões ao usuário e ao usuário root com permissão total em todos os clusters e a habilidade de definir ou remover permissões em todos os outros usuários exceto do root, cujas permissões não podem ser restringidas.
- Pode Criar Clusters
- Permite que o usuário crie novos clusters, como descrito em Seção 3.4, “Criando um Cluster”.
- Pode Importar Clusters Existentes
- Permite que usuários adicionem um cluster existente à interface do luci, como descrito em Seção 4.1, “Adicionar um Cluster Existente à interface do luci”.
- Pode visualizar este Cluster
- Permite que o usuário visualize o cluster especificado:
- Pode mudar a configuração do Cluster
- Permite que o usuário modifique a configuração para o cluster especificado, com a exceção de adicionar e remover nós de cluster.
- Pode Habilitar, Desabilitar, Realocar, e Migrar Grupos de Serviços
- Permite que o usuário gerencie serviços de alta disponibilidade como descrito em Seção 4.5, “Gerenciando Serviços de Alta Disponibilidade”.
- Pode Interromper, Iniciar e Reiniciar os Nós de Cluster
- Pemite que o usuário gerencie os nós individuais de um cluster, como descrito em Seção 4.3, “Gerenciando Nós no Cluster”.
- Pode Adicionar e Remover Nós
- Permite que o usuário adicione e remova nós de um cluster, como descrito em Seção 3.4, “Criando um Cluster”.
- Pode Remover este Cluster do Luci
- Permite que o usuário remova um cluster da interface do luci, como descrito em Seção 4.4, “Iniciando, Parando, Reinicializando e Deletando Clusters”.
3.4. Criando um Cluster
- Clique em Gerenciar Clusters (Manage Clusters) no menu do lado esquerdo da página Homebase do luci. A página Clusters aparecerá, como mostrado na Figura 3.2, “Página de gerenciamento de cluster do luci”.
Figura 3.2. Página de gerenciamento de cluster do luci
- Clique em Criar (Create). A caixa de diálogo aparece Criar novo Cluster (Create New Cluster), como mostrado na Figura 3.3, “Caixa de diálogo de criação de cluster do luci”.
Figura 3.3. Caixa de diálogo de criação de cluster do luci
- Entre com os seguintes parâmetros na caixa de diálogo Criar Novo Cluster, conforme necessário:
- Na caixa de texto Nome do Cluster (Cluster Name), digite um nome de cluster. O nome do cluster não pode ultrapassar 15 caractéres.
- Se cada nó no cluster tiver a mesma senha ricci, você pode marcar Use a mesma senha para todos os nós (Use the same password for all nodes) para autocompletar o campo o campo de senha conforme você adiciona nós.
- Entre o nome do nó para um nó no cluster na coluna Nome do Nó (Node Name) e digite a senha ricci para o nó na coluna Senha (Password).
- Se seu sistema estiver configurado com uma rede privada dedicada que é usada somente para tráfego do cluster, você poderá configurar o luci para se comunicar com o ricci em um endereço que é diferente do endereço no qual o nome do nó no cluster é resolvido. Você pode fazer isso digitando esse endereço como o Ricci Hostname.
- Se você está usando uma porta diferente para o agente ricci do que a padrão 11111, você pode mudar esse parâmetro.
- Clique em Adicionar outro Nó (Add Another Node) e entre o nome do nó e senha ricci para cada nó adicional no cluster.
- Se você não quiser atualizar os pacotes de software do cluster que já estão instalados nos nós quando você criar um cluster, deixe selecionada a opção Usar pacotes localmente instalados (Use locally installed packages). Se você quiser atualizar todos os pacotes de software do cluster, selecione a opção Baixar Pacotes (Download Packages).
Nota
Se você selecionar Usar pacotes localmente instalados (Use locally installed packages) ou a opção Baixar Pacotes (Download Packages), se qualquer dos componentes base do cluster estiverem faltando (cman
,rgmanager
,modcluster
e suas dependências), eles serão instalados. Se eles não podem ser instalados, a criação do nó falhará. - Selecione Reinicializar nós antes de se juntar ao cluster (Reboot nodes before joining cluster) se desejado.
- Selecione Habilitar suporte a armazenamento compartilhado se um armazenamento clusterizado é requerido; isto baixa os pacotes que suportam armazenamento clusterizado e habilita o LVM clusterizado. Você deveria selecionar isto somente quando você tiver acesso ao Complemento de Armazenamento Resiliente ou Complemento de Sistema de Arquivos Escalável.
- Clique em Criar Cluster (Create Cluster). Clicando em Criar Cluster causa as seguintes ações:
- Se você selecionou Baixar Pacotes (Download Packages), os pacotes de software do cluster são baixados nos nós.
- O software de Cluster está instalado nos nós (ou é checado que os pacotes de software apropriados estão instalados).
- O arquivo de configuração do cluster está atualizado e propagado em cada nó no cluster.
- Os nós adicionados se juntam ao cluster.
Uma mensagem é exibida indicando que o cluster está sendo criado. Quando um cluster estiver pronto, a exibição mostra o estado do cluster recém criado, conforme mostrado na Figura 3.4, “Exibição do nó no cluster”. Note que se o ricci não estiver rodando em qualquer um dos nós, a criação do cluster falhará.Figura 3.4. Exibição do nó no cluster
- Depois de clicar em Criar Cluster (Create Cluster), você pode adicionar ou deletar nós do cluster clicando nas funções Adicionar (Add) ou Deletar (Delete) no menu no topo da página de exibição do nó no cluster. A menos que você esteja deletando um cluster inteiro, nós devem ser parados antes de serem deletados. Para informações sobre deletar um nó de um cluster existente que está atualmente em operação, veja a Seção 4.3.4, “Excluindo um Membro de um Cluster”.
Nota
Remover um nó de cluster de um cluster é uma operação destrutiva que não pode ser desfeita.
3.5. Propriedades de Cluster Globais
3.5.1. Propriedades Gerais de Configuração
- A caixa de texto Nome do Cluster (Cluster Name) exibe o nome do cluster; ela não aceita mudança de nome de cluster. A única maneira de mudar o nome do cluster é criar uma nova configuração de cluster com um novo nome.
- O valor Versão da Configuração (Configuration Version) é definido para
1
no momento da criação de cluster e é automaticamente incrementado cada vez que você modifica suas configurações de cluster. Entretanto, se você precisar definir isso para um outro valor, você pode especificar na caixa de textoVersão da Configuração
(Configuration Version).
3.5.2. Propriedades de Configuração do Daemon Fence
- O parâmetro Post Fail Delay é o número de segundos que o fence daemon (
fenced
) espera antes de fazer um fence em um nó (um membro de domínio fence) depois que um nó tiver falhado. O valor padrão do Post fail delay é0
. Seu valor pode ser variado para se adequar ao desempenho da rede e do cluster. - O parâmetro Post Fail Delay é o número de segundos que o fence daemon (
fenced
) espera antes de fazer um fence em um nó depois que o nó se unir ao domínio do fence. O valor padrão do Post fail delay é6
. Uma configuração típica para Post Join Delay é entre 20 e 30 segundos, mas pode ser variado para se adequar ao desempenho da rede e do cluster.
Nota
3.5.3. Configuração de Rede
- multicast UDP e deixe o cluster escolher o endereço de multicast (UDP multicast and let cluster choose the multicast address)Esta é a configuração padrão. Com esta opção selecionada, o software do Complemento de Alta Disponibilidade da Red Hat cria um endereço multicast baseado no ID do cluster. Ela gera os 16 bits mais baixos do endereço e os acrescenta à porção mais alta do endereço de acordo se o protocolo IP é IPV4 ou IPV6:
- Para o IPV4 — O endereço formado é 239.192. mais os 16 bits mais baixos gerados pelo software do Complemento de Alta Disponibilidade da Red Hat.
- Para o IPV6 — O endereço formado é FF15:: mais os 16 bits mais baixos gerados pelo software do Complemento de Alta Disponibilidade da Red Hat.
Nota
O ID do cluster é um identificador único que gera ocman
para cada cluster. Para vizualizar o ID do cluster, rode o comandocman_tool status
em um nó do cluster. - Multicast UDP e especifique o endereço multicast manualmente (UDP multicast and specify the multicast address manually)Se você precisar usar um endereço multicast específico, selecione esta opção e digitie um endereço multicast na caixa de texto do Multicast Address.Se você especificar um endereço multicast, você deveria usar as séries 239.192.x.x (ou FF15:: para IPv6) que o
cman
usa. Senão, usar um endereço multicast fora deste alcance pode causar resultados imprevisíveis. Por exemplo, usando 224.0.0.x (que é "Todos os hosts na rede") podem não ser roteados corretamente ou mesmo não serem roteados completamente em alguns hardwares.Se você especificar ou modificar um endereço multicast, você precisa reiniciar o clusterpara que seja efetuado. Para instruções sobre reiniciar os software de cluster com o Conga, consulte a Seção 4.4, “Iniciando, Parando, Reinicializando e Deletando Clusters”.Nota
Se você especificar um endereço multicast, certifique-se que você verificou a configuração dos roteadores para os pacotes do cluster passarem. Alguns roteadores podem levar um longo tempo para aprender os endereços, impactando seriamente no desempenho do cluster. - UDP Unicast (UDPU)Desde o lançamento do Red Hat Enterprise Linux 6.2, os nós em um cluster podem se comunicar entre si utilizando o mecanismo de transporte do Unicast UDP. Recomenda-se no entanto, que você utilize o multicasting do IP para a rede de cluster. O Unicast UDP é uma alternativa que pode ser utilizada quando o musticast IP não estiver disponível. Para as implementações do GFS2 não recomendamos o uso do Unicast UDP.
3.5.4. Configurando, Protocolo de Anel Redundante
3.5.5. Configuração de Disco de Quorum
Nota
Tabela 3.1. Parâmetros de Disco de Quorum
Parâmetros | Descrição | ||||
---|---|---|---|---|---|
Especificar dispositivo físico: Por rótulo de dispositivo (Specify physical device: By device label) | Especifica o rótulo de disco de quorum criado pelo utilitário mkqdisk . Se este campo é usado, o daemon quorum lê o /proc/partitions e verifica por assinaturas qdisk em cada dispositivo de bloco encontrado, comparando o rótulo com o rótulo especificado. Isto é útil em configurações onde o nome de dispositivo de quorum difere entre nós. | ||||
Heurísticas (Heuristics) |
| ||||
Contagem Mínima Total (Minimum total score) | A contagem mínima para um nó ser considerado "vivo". Se omitido ou definido para 0, a função padrão floor((n+1)/2) , é usada, onde n é a soma das contagens de heurísticas. O valor Contagem Mínima nunca deve exceder a soma das contagens das heurísticas; caso contrário, o disco de quorum não pode estar disponível. |
Nota
/etc/cluster/cluster.conf
) em cada nó do cluster. Entretanto, para o disco de quorum operar, você deve reiniciar o cluster (consulte a Seção 4.4, “Iniciando, Parando, Reinicializando e Deletando Clusters”).
3.5.6. Configuração de Log
- Marcando Mensagens de Depuração de Log (Log debugging messages) habilita as mensagens de depuração no arquivo de log.
- Marcando Logar mensagens no syslog (Log messages to syslog) habilita mensagens no
syslog
. Você pode selecionar a facilidade de mensagens do syslog (syslog message facility) e o prioridade de mensagens do syslog (syslog message priority). Este último indica que mensagens de um nível determinado e maior sejam enviados ao syslog. - Marcando Logar mensagens ao arquivo de log (Log messages to log file) habilita mensagens ao arquivo de log. Você pode especificar o nome do caminho de arquivo de log. A configuração prioridade de mensagens do arquivo de log (logfile message priority) indica que mensagens a um nível selecionado e maior sejam escritos no arquivo de log.
syslog
e as configurações de arquivo de log para esse daemon.
3.6. Configurando Dispositivos Fence
- Criando dispositivos fence — Consulte a Seção 3.6.1, “Criando um Dispositivo Fence”. Uma vez criado e nomeado um dispositivo fence, você pode configurar os dispositivos fence para cada nó no cluster, conforme descrito na Seção 3.7, “Configurar Fence para Membros do Cluster”.
- Atualizando dispositivos fence — Consulte a Seção 3.6.2, “Modificando um Dispositivo Fence”.
- Excluir dispositivos fence — Consulte a Seção 3.6.3, “Deletando um Dispositivo Fence”.
Nota
Figura 3.5. Página de configuração de dispositivos fence do luci
3.6.1. Criando um Dispositivo Fence
- Da página de configuração de Dispositivos Fence, clique em Adicionar (Add). Clicando em Adicionar é exibida a caixa de diálogo Adicionar Dispositivo Fence (Instância) (Add Fence Device (Instance)). Desta caixa de diálogo, selecione o tipo de dispositivo fence para configurar.
- Especifique a informação na caixa de diálogo de acordo Adicionar Dispositivo Fence (Instância) (Add Fence Device (Instance)) de acordo com o tipo de dispositivo fence. Consulte o Apêndice A, Parâmetros de Dispositos Fence para mais informações sobre parâmetros de dispositivo fence. Em alguns casos você precisará especificar parâmetros de nós específicos para o dispositivo fence quando configurar o fence para nós individuais, conforme descrito na Seção 3.7, “Configurar Fence para Membros do Cluster”.
- Clique em Enviar (Submit)
3.6.2. Modificando um Dispositivo Fence
- Da página de configuração Dispositivos Fence (Fence Devices), clique no nome do dispositivo fence a ser modificado. Isto mostrará a caixa de diálogo para aquele dispositivo fence, com os valores que foram configurados para o dispositivo.
- Para modificar o dispositivo fence, digite as mudanças aos parâmetros exibidos. Consulte o Apêndice A, Parâmetros de Dispositos Fence para mais informações.
- Clique em Aplicar (Apply) e aguarde a configuração ser atualizada.
3.6.3. Deletando um Dispositivo Fence
Nota
- Da página de configuração Dispositivos Fence (Fence Devices), marque a caixa na esquerda do ou dos dispositivos para selecionar quais deletar.
- Clique em Delete e aguarde pela configuração ser atualizada. Uma mensagem aparece indicando quais dispositivos estão sendo deletados.
3.7. Configurar Fence para Membros do Cluster
3.7.1. Configurar um Dispositivo Fence Único para um Nó
- Da página do cluster específico, você pode configurar o fence para os nós nos cluster clicando em Nós (Nodes) no topo da exibição de cluster. Ela exibe os nós que constituem um cluster. Ela é também a página padrão que aparece quando você clica no nome do cluster abaixo de Manage Clusters (Gerenciar Clusters) no menu do lado esquerdo da página Homebase do luci.
- Clique no nome do nó. Clicar em um link para um nó leva à exibição de como o nó é configurado.A página específica do nó exibe quaisquer serviços que estão atualmente rodando no nó, tanto como quaisquer domínios failover de qual o nó é um membro. Você pode modificar um domínio failover existente clicando em seu nome. Para informações sobre configurar domínios failover, veja a Seção 3.8, “Configurando um Domínio de Failover”.
- Na página específica do nó, sob Dispositivos Fence (Fence Devices), clique em Adicionar Método Fence (Add Fence Method).
- Digite o Nome do Método (Method Name) para o método fence que você está configurando para este nó. Isto é um nome arbitrário que será usado pelo Complemento de Alta Disponibilidade da Red Hat; este não é o mesmo como o nome de DNS para o dispositivo.
- Clique em Enviar (Submit). Isto exibe a tela do nó específico que agora mostra o método que você acabou de adicionar sob Dispositivos Fence (Fence Devices).
- Configure uma instância fence para este método clicando no botão Adicionar Instância Fence (Add Fence Instance) que aparece abaixo do método fence. Isto exibe o menu suspenso do qual você pode selecionar um dispositivo fence que você configurou anteriormente, conforme descrito na Seção 3.6.1, “Criando um Dispositivo Fence”.
- Selecione um dispositivo fence para este método. Se este dispositivo fence requer que você configure parâmetros do nó específico, que exibe os parâmentros para configurar. Para informações sobre parâmetros fence, consulte o Apêndice A, Parâmetros de Dispositos Fence.
Nota
Para métodos fence sem energia (que é SAN/Armazenamento Fencing), o Unfencing é selecionado por padrão na exibição de parâmetros do nó específico. Isto garante que o acesso de fence do nó ao armazenamento não é reabilitado até que o nó foi reiniciado. Para informações sobre "unfencing" em um nó, consulte a página manfence_node
(8). - Clique em Enviar (Submit). Isto retornará à tela do nó especifico com o método fence e a instância fence exibida.
3.7.2. Configurando um Dispositivo Fence de Backup
- Use o procedimento fornecido na Seção 3.7.1, “Configurar um Dispositivo Fence Único para um Nó” para configurar o fence primário para um nó.
- Abaixo da exibição do primeiro método que você definiu, clique Adicionar Método Fence (Add Fence Method).
- Digite um nome para o método fence de backup que você está configurando para este nó e clique em Enviar (Submit). Isto exibe a tela do nó específico que agora exibe o método que você acabou de adicionar, abaixo o método primário de fence.
- Configure uma instância fence para este método clicando em Adicionar Instância Fence (Add Fence Instance). Isto exibe um menu suspenso do qual você pode selecionar um dispositivo fence que você configurou previamente, conforme descrito na Seção 3.6.1, “Criando um Dispositivo Fence”.
- Selecione um dispositivo fence para este método. Se este dispositivo fence requer que você configure parâmetros do nó específico, que exibe os parâmentros para configurar. Para informações sobre parâmetros fence, consulte o Apêndice A, Parâmetros de Dispositos Fence.
- Clique em Enviar (Submit). Isto retornará à tela do nó especifico com o método fence e a instância fence exibida.
3.7.3. Configurando um nó com energia redundante
- Antes de você poder configurar o fence para um nó com energia redundante, você deve configurar cada um dos switches de energia como um dispositivo fence para o cluster. Para informações sobre configurar dispositivos fence, veja a Seção 3.6, “Configurando Dispositivos Fence”.
- Da página especifica do cluster, clique em Nós no topo da exibição do cluster. Isto mostra os nós que constituem o cluster. Ela também é a página padrão que aparece quando você clica no nome do cluster abaixo do Gerenciar Clusters (Manage Clusters) do menu do lado esquerdo da página Homebase do luci.
- Clique no nome do nó. Clicar em um link para um nó leva à exibição de como o nó é configurado.
- Na página especifica do nó, clique em Adicionar Método Fence (Add Fence Method).
- Digite um nome para o método fence que você está configurando para este nó.
- Clique em Enviar (Submit). Isto exibe a tela do nó específico que agora mostra o método que você acabou de adicionar sob Dispositivos Fence (Fence Devices).
- Configure a primeira fonte de energia como uma instância de fence para este método clicando em Adicionar Instância Fence (Add Fence Instance). Isto exibe um menu suspenso no qual você pode selecionar um dos dispositivos fence de energia que você configurou previamente, conforme descrito na Seção 3.6.1, “Criando um Dispositivo Fence”.
- Selecione um dos dispositivos fence de energia para este método e digite os parâmetros apropriados para este dispositivo.
- Clique em Enviar (Submit). Isto retornará à tela do nó especifico com o método fence e a instância fence exibida.
- Sob o mesmo método fence do qual você configurou o primeiro dispositivo fence de energia, clique em Adicionar Instância Fence (Add Fence Instance). Isto mostra um menu suspenso do qual você pode selecionar o segundo dispositivo fence de energia que você configurou anteriormente, conforme descrito na Seção 3.6.1, “Criando um Dispositivo Fence”.
- Selecione o segundo dos dispositivos fence de energia para este método e digite os parâmetros apropriados para este dispositivo.
- Clique em Enviar (Submit). Isto lhe retorna à tela específica do nó com os métodos fence e as instâncias fence exibidas, mostrando que cada dispositivo desligará o sistema em sequencia e ligará o sistema em sequencia. Isto é mostrado na Figura 3.6, “Configuração Fence de Fonte Dupla”.
Figura 3.6. Configuração Fence de Fonte Dupla
3.8. Configurando um Domínio de Failover
- Irrestrito (Unrestricted) — Permite especificar que um sub conjunto de membros são preferidos mas que um serviço de cluster atribuído a este domínio possa rodar em qualquer membro disponível.
- Restringido (Restricted) — Permite restringir os membros que podem rodar um serviço de cluster em particular. Se nenhum dos membros em um domínio de failover estiverem disponíveis, o serviço de cluster não pode ser iniciado (tanto manualmente ou pelo software de cluster).
- Desordenado (Unordered) — Quando um serviço de cluster é atribuído a um domínio de failover desordenado, o membro no qual o serviço de cluster roda é escolhido a partir dos membros do domínio de failover disponíveis sem prioridade de ordem.
- Ordenados (Ordered) — Permite especificar a ordem de preferência entre os membros de um domínio de failover. O membro no topo da lista é o preferido, seguido pelo segundo e assim por diante.
- Failback — Permite especificar se um serviço no domínio de failover deveria fazer um fail back no nó que estava originalmente rodando antes desse nó falhar. Configurar esta característica é útil em circunstâncias onde um nó falha repetidamente e é parte de um domínio de failover ordenado. Nesta circunstância, se o nó é o preferido no domínio de failover, é possível para um serviço fazer fail over e fail back repetidamente entre o nó preferido e o outro nó, causando um impacto severo no desempenho.
Nota
A característica failback é aplicável somente se o failover ordenado é configurado.
Nota
Nota
httpd
), que requer que você defina identicamente a configuração em todos os membros que rodam o serviço de cluster. Em vez de definir o cluster inteiro para rodar o serviço de cluster, você pode definir somente os membros no domínio de failover restringidos que você associa com o serviço de cluster.
Nota
3.8.1. Adicionando um Domínio Failover
- A partir da página específica do cluster, você pode configurar domínios failover para o cluster clicando em Domínios Failover (Failover Domains) no topo da tela de exibição do cluster. Ela mostra domínios failover que foram configurados para este cluster.
- Clique em Adicionar (Add) para mostrar a caixa de diálogo Adicionar Domínio Failover ao Cluster (Add Failover Domain to Cluster), como mostrado na Figura 3.7, “Caixa de Diálogo de Configuração do domínio failover do luci”.
Figura 3.7. Caixa de Diálogo de Configuração do domínio failover do luci
- Na caixa de diálogo Adicionar Domínio de Failover ao Cluster (Add Failover Domain to Cluster), especifique um nome de domínio failover na caixa de texto Name.
Nota
O nome deve ser descritivo o suficiente para distinguir seu relativo propósito de outros nomes usados no seu cluster. - Para habilitar a configuração de prioridade do failover dos membros do domínio failover, marque a caixa Priorizado (Prioritized). Com esta caixa marcada, você pode definir o valor da prioridade Priority (Prioridade), para cada nó selecionado como membros do domínio failover.
- Para restringir o failover para membros neste domínio de failover, marque a caixa Restringido (Restricted). Dessa maneira os serviços atribuídos a este domínio failover farão o failover somente nos nós dentro deste domínio de failover.
- Para especificar que um nó não tenha um fail back neste domínio failover, marque a opção Sem Failback (No Failback). Desta maneira, se um serviço tiver um fail over a partir de um nó preferencial, o serviço não faz o fail back para o nó original uma vez que foi recuperado.
- Configure os membros para este domínio failover. Marque a caixa Membro (Member) para cada nó que é para ser um membro do domínio de failover. Se Priorizado (Prioritized) for marcado, defina a prioridade na caixa de texto Prioridade (Priority) para cada membro do domínio de failover.
- Clique em Criar (Create). Isto exibe a página do Domínios de Failover (Failover Domains) com o recém criado domínio de failover exibido. Uma mensagem indica que o novo domínio está sendo criado. Atualize a página para atualizar o estado.
3.8.2. Modificando um Domínio de Failover
- A partir da página específica do cluster, você pode configurar os Domínios de Failover para o cluster, clicando em Domínios de Failover (Failover Domains) no topo da exibição do cluster. Isto mostra domínios de failover que foram configurados para este cluster.
- Clique no nome do domínio de failover. Isto exibe a página de configuração para o domínio de failover.
- Para modificar as propriedades Priorizado (Prioritized), Restringido (Restricted) ou Sem Failback (No Failback) para o domínio de failover, marque ou desmarque a opção próxima à propriedade e clique Atualizar Propriedades (Update Properties).
- Para modificar a afiliação de domínio de failover, marque ou desmarque a opção próxima ao membro de cluster. Se um domínio de failover é priorizado, você pode também modificar a definição de prioridade para o membro do cluster. Clique Atualizar Configurações.
3.8.3. Excluir um Domínio de Failover
- A partir da página específica do cluster, você pode configurar os Domínios de Failover para o cluster, clicando em Domínios de Failover (Failover Domains) no topo da exibição do cluster. Isto mostra domínios de failover que foram configurados para este cluster.
- Selecione a opção do domínio de failover a ser deletado.
- Clique em Delete.
3.9. Configurar Recursos de Cluster Globais
- A partir da página específica do cluster, você pode adicionar recursos ao cluster clicando em Recursos (Resources) no topo da exibição do cluster. Isso mostra os recursos que foram configurados para o cluster.
- Clique em Adicionar (Add). Isso exibe o menu suspenso Adicionar Recurso ao Cluster (Add Resource to Cluster).
- Clique na caixa suspensa sobre Adicionar Recurso ao Cluster (Add Resource to Cluster) e selecione o tipo de recurso para configurar.
- Digite os parâmetros para o recurso que você está adicionando. O Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade descreve os parâmetros do recurso.
- Clique em Enviar (Submit). Clicando em Enviar se retorna à página de recursos que exibe os Recursos (Resources), onde está o recurso adicionar (e outros recursos).
- Da página Recursos (Resources) do luci, clique no nome do recurso para modificar. Isto exibe os parâmetros para o recurso.
- Edite os parâmetros do recurso.
- Clique em Aplicar (Apply).
- Da página Resources do luci, marque a caixa para os recursos a deletar.
- Clique em Delete.
3.10. Adicionar um Serviço de Cluster ao Cluster
- A partir da página específica do cluster, você pode adicionar serviços ao cluster clicando em Grupos de Serviço (Service Groups) no topo de exibição do cluster. Isto exibe os serviços que foram configurados para esse cluster. (A partir da página Grupos de Serviço, você pode também iniciar, reiniciar e desabilitar um serviço conforme descrito na Seção 4.5, “Gerenciando Serviços de Alta Disponibilidade”.)
- Clique em Adicionar (Add). Isso exibe a caixa de diálogo Adicionar Serviço ao Cluster (Add Service do Cluster).
- Na caixa de diálogo Adicionar Serviço ao Cluster (Add Service to Cluster), na caixa de texto Nome do Serviço (Service Name), digite o nome do serviço.
Nota
Use um nome descritivo que claramente distingue o serviço de outros serviços no cluster. - Marque a caixa de seleção Iniciar este serviço automaticamente (Automatically start this service) se você quiser que o serviço inicie automaticamente quando um cluster é iniciado e em execução. Se a caixa não estiver marcada, o serviço deve ser iniciado manualmente em qualquer momento após o cluster sair do estado parado.
- Marque a caixa de seleção Rodar exclusivo (Run exclusive) para definir um política onde o serviço somente roda em nós que não possuem outros serviços rodando neles.
- Se você configurou domínios de failover para o cluster, você pode usar o menu suspenso do parâmetro Domínio Failover (Failover Domain) para selecionar um domínio para este serviço. Para informações sobre configurar domínios de failover veja a Seção 3.8, “Configurando um Domínio de Failover”.
- Use a caixa suspensa Política de Recuperação (Recovery Policy) para selecionar uma política para o serviço. As opções são Realocar (Relocate), Reiniciar (Restart), Desabilitar Reiniciar (Restart-Disable), ou Desabilitar (Disable).Selecionar a opção Reiniciar (Restart) indica que o sistema deve tentar reiniciar o serviço com falha antes de realocar o serviço. Selecionar a opção Desabilitar Reiniciar (Restart-Disable) indica que o sistema deve tentar reiniciar o serviço em questão se ele falhar, mas se a reinicialização do serviço falhar, o serviço será desabilitado em vez de ser movido para outro host no cluster.Se você selecionar Reiniciar (Restart) ou Desabilitar Reiniciar (Restart-Disable) como a política de recuperação para o serviço, você pode especificar o número máximo de falhas de reinicializações antes de realocar ou desabilitar o serviço, você pode especificar o período de tempo em segundos depois em que se deve ignorar uma reinicialização.
- Para adicionar um recurso ao serviço, clique em Adicionar Recurso (Add resource). Isto leva à exibição da caixa de seleção Adicionar Recurso ao Serviço (Add Resource To Service) que permite que você adicione um recurso global existente ou adicione um novo recurso que está disponível somente a este serviço.
- Para adicionar um recurso global existente, clique no nome do recurso existente na caixa de seleção Adicionar Recurso ao Serviço (Add Resource To Service). Isto exibe o recurso e seus parâmetros na página Grupos de Serviços (Services Groups) para o serviço que você está configurando. Para informações sobre adicionar ou modificar recursos globais, veja Seção 3.9, “Configurar Recursos de Cluster Globais”).
- Para adicionar um novo recurso que está disponível somente neste serviço, selecione o tipo de recurso para configurar a partir da caixa de seleção Adicionar um recurso (Add a resource) e digite os parâmetros do recurso para o recurso que você está adicionando. O Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade descreve os parâmetros do recurso.
- Quando adicionar um recurso a um serviço, seja ele um recurso global existente ou um recurso disponível somente a este serviço, você pode especificar se o recurso é uma Sub árvore Independente (Independent subtree) ou um Recurso não crítico (Non-critical resource).Se você especificar que um recurso é uma sub árvore independente, então se o recurso falhar, somente ele é reiniciado (ao invés de todo o serviço) antes do sistema tentar uma recuperação normal. Você pode especificar o número máximo de reinicializações a serem tentadas para aquele recurso em um nó antes de implementar a política de recuperação para o serviço. Você pode também especificar o período de tempo em segundos depois que o sistema implementará a política de recuperação para o serviço.Se você especificar que o recurso é um recurso não crítico, então se o recurso falhar, somente aquele recurso é reiniciado e se o serviço continuar a falhar, então somente este serviço é desabilitado ao invés de todo o serviço. Você pode especificar o número máximo de reinicializações a serem tentadas para o recurso em um nó antes de desabilitar o recurso. Você pode também especificar a quantidade de tempo em segundos depois que o sistema desabilitará aquele recurso.
- Se você quiser adicionar recursos filhos ao recurso que você está definindo, clique em Adicionar recurso filho (Add a child resource). Isto exibe a caixa suspensa Adicionar Recurso ao Serviço (Add Resource To Service), da qual você pode adicionar um recurso existente global ou adicionar um novo recurso que está disponível somente a este serviço. Você pode continuar adicionando recursos filhos ao recurso para atender suas necessidades.
Nota
Se você estiver adicionando um recurso de serviço Samba, adicione-o diretamente ao serviço, não como um filho de outro recurso. - Quando você tiver completado a adição de recursos ao serviço e tiver completado a adição de recursos filhos aos recursos, clique em Enviar (Submit). Clicando em Enviar retornará à página Grupos de Serviços (Service Groups), mostrando os serviços adicionados (e outros serviços).
Nota
/sbin/ip addr show
em um nó de cluster (ao invés do comando obsoleto ifconfig
). O resultado a seguir demonstra o comando /sbin/ip addr show
executado em um nó executando um serviço de cluster:
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP> mtu 1356 qdisc pfifo_fast qlen 1000 link/ether 00:05:5d:9a:d8:91 brd ff:ff:ff:ff:ff:ff inet 10.11.4.31/22 brd 10.11.7.255 scope global eth0 inet6 fe80::205:5dff:fe9a:d891/64 scope link inet 10.11.4.240/22 scope global secondary eth0 valid_lft forever preferred_lft forever
- Da caixa de diálogo Grupos de Serviços (Service Groups), clique no nome do serviço a ser modificado. Isto exibe os parâmetros e recursos que foram configurados para o serviço.
- Edite os parâmetros de serviço.
- Clique em Enviar (Submit)
- A partir da página Grupos de Serviço (Service Groups) do luci, marque a caixa para quaisquer serviços a serem deletados.
- Clique em Delete.
- Desde o Red Hat Enterprise Linux 6.3, antes do luci remover qualquer serviço, aparecerá uma mensagem pedindo que você confirme que você pretende remover os grupos de serviço ou grupo, que interrompe os recursos que comprometem-no. Clique em Cancelar para fechar a caixa de diálogo sem remover qualquer serviço, ou clique em Proceder para remover o serviço selecionado ou serviços.
Capítulo 4. Gerenciando o Complemento de Alta Disponibilidade Red Hat com o Conga
4.1. Adicionar um Cluster Existente à interface do luci
- Clique em Gerenciar Clusters (Manager Clusters) a partir do menu do lado esquerdo da página Homebase do luci. A tela Clusters aparecerá.
- Clique em Adicionar (Add). A tela Adicionar Cluster Existente (Add Existing Cluster) aparecerá.
- Digite o hostname do nó e a senha ricci para quaisquer dos nós no cluster existente. Já que cada nó no cluster contém toda a informação de configuração para o cluster, isto deve fornecer informações suficientes para adicionar o cluster à interface luci.
- Clique em Conectar (Connect). A tela Adicionar Cluster Existente (Add Existing Cluster) então mostra o nome do cluster e os nós remanescentes no cluster.
- Digite as senhas ricci individuais para cada nó no cluster ou digite uma senha e selecione Use a mesma senha para todos os nós (Use same password for all nodes).
- Clique em Adicionar Cluster (Add Cluster). O cluster anteriormente configurado agora mostra a tela Gerenciar Clusters (Manage Clusters).
4.2. Removendo um Cluster da interface do luci
- Clique em Gerenciar Clusters (Manager Clusters) a partir do menu do lado esquerdo da página Homebase do luci. A tela Clusters aparecerá.
- Selecione o cluster ou clusters se você quiser remover.
- Clique em Delete.
4.3. Gerenciando Nós no Cluster
4.3.1. Reinicializando um Nó no Cluster
- Da página especifica do cluster, clique em Nós no topo da exibição do cluster. Isto mostra os nós que constituem o cluster. Ela também é a página padrão que aparece quando você clica no nome do cluster abaixo do Gerenciar Clusters (Manage Clusters) do menu do lado esquerdo da página Homebase do luci.
- Selecione o nó para reinicializar clicando na caixa de marcação deste nó.
- Selecione a funçào Reinicializar (Reboot) do menu no topo da página. Isto faz que o nó selecionado reinicializa e uma mensagem aparece no topo da página indicando que o nó está sendo reinicializado.
- Atualize a página para ver o estado atualizado do nó.
4.3.2. Faz um nó sair ou se juntar a um Cluster
Não é um membro do cluster
. Para informações sobre excluir totalmente um nó da configuração do cluster, veja Seção 4.3.4, “Excluindo um Membro de um Cluster”.
- Da página especifica do cluster, clique em Nós no topo da exibição do cluster. Isto mostra os nós que constituem o cluster. Ela também é a página padrão que aparece quando você clica no nome do cluster abaixo do Gerenciar Clusters (Manage Clusters) do menu do lado esquerdo da página Homebase do luci.
- Selecione o nó que você quer que saia do cluste marcando a opção para esse nó.
- Selecione a função Sair do Cluster (Leave Cluster) no menu no topo da página. Isto faz uma mensagem aparecer no topo da página indicando que o nó está sendo parado.
- Atualize a página para ver o estado atualizado do nó.
4.3.3. Adicionar um Membro a um Cluster em Execução
- Da página especifica do cluster, clique em Nós (Nodes) no topo da exibição do cluster. Isto mostra os nós que constituem o cluster. Isto também é a página padrão que aparece quando você clica no nome do cluster abaixo do Gerenciar Clusters do menu do lado esquerdo da página Homebase do luci.
- Clique em Adicionar (Add) para exibir a caixa de diálogo Adicionar Nós ao Cluster (Add Nodes to Cluster).
- Digite o nome do nó na caixa de texto Hostname do Nó (Node Hostname); digite a senha ricci na caixa de texto Senha (Password). Se você estiver usando uma porta diferente para o agente ricci que não seja 11111, você pode mudar esse parâmetro.
- Marque a opção Habilitar Suporte a Armazenamento Compartilhado (Enable Shared Storage Support) se a armazenagem em cluster é requerida para baixar os pacotes que suportam armazenagem clusterizada e habilitam LVM clusterizado; você deveria selecionar isto somente quando você tem acesso ao Complemento de Armazenamento Resiliente ou Complemento de Sistema de Arquivo Escalável.
- Se você quiser adicionar mais nós, clique em Adicionar Outro Nó e digite o nome e senha do nó para cada nó adicional.
- Clique em Adicionar Nós (Add Nodes) para fazer as seguintes ações:
- Se você selecionou Baixar Pacotes (Download Packages), os pacotes de software do cluster são baixados nos nós.
- O software de Cluster está instalado nos nós (ou é checado que os pacotes de software apropriados estão instalados).
- O arquivo de configuração de cluster é atualizado e propagado para cada nó no cluster — incluindo o nó adicionado.
- O nó adicionado se junta ao cluster.
A página Nós aparece com a mensagem indicando que o nó está sendo adicionado ao cluster. Atualize a página para ver o novo estado. - Quando o processo de adicionar um nó estiver completo, clique no nome do nó para o nó recém adicionado para configurar um fence para este nó, conforme descrito na Seção 3.6, “Configurando Dispositivos Fence”.
4.3.4. Excluindo um Membro de um Cluster
- Da página especifica do cluster, clique em Nós (Nodes) no topo da exibição do cluster. Isto mostra os nós que constituem o cluster. Isto também é a página padrão que aparece quando você clica no nome do cluster abaixo do Gerenciar Clusters do menu do lado esquerdo da página Homebase do luci.
Nota
Para permitir que serviços em execução em um nó façam fail over quando o nó é excluído, pule o próximo passo. - Desabilite ou realoque cada serviço que esteja em execução no nó a ser excluído. Para informações sobre desabilitar e realocar serviços, veja a Seção 4.5, “Gerenciando Serviços de Alta Disponibilidade”.
- Selecione o nó ou nós para deletar.
- Clique em Delete. A página dos Nós indica que o nó está sendo removido. Atualize a página para ver o estado atual.
Importante
4.4. Iniciando, Parando, Reinicializando e Deletando Clusters
Não é um membro do Cluster
(Not a cluster member).
- Selecione todos os nós no cluster marcando a caixa próxima a cada nó.
- Selecione a função Sair do Cluster (Leave Cluster) no menu no topo da página. Isto faz uma mensagem aparecer no topo da página indicando que o cada nó está sendo parado.
- Atualize a página para ver o estado atualizado dos nós.
- Selecione todos os nós no cluster marcando a caixa próxima a cada nó.
- Selecione a função Juntar ao Cluster (Join Cluster) no menu no topo da página.
- Atualize a página para ver o estado atualizado dos nós.
Importante
- Selecione todos os nós no cluster marcando a caixa próxima a cada nó.
- Selecione a função Delete do menu no topo da página.
4.5. Gerenciando Serviços de Alta Disponibilidade
- Iniciar um serviço
- Reiniciar um serviço
- Desabilitar um serviço
- Deletar um serviço
- Realocar um serviço
- Iniciando um serviço — Para iniciar quaisquer serviços que não estão atualmente rodando, selecione quaisquer serviços que queira iniciar marcando a caixa para esse serviço e clicando em Iniciar (Start).
- Reiniciar um serviço — Para reiniciar quaisquer serviços que estão atualmente em execução, selecione quaisquer serviços que você queira reiniciar marcando a caixa de seleção do serviço e clicando em Reiniciar (Restart).
- Desabilitar um serviço — Para desabilitar qualquer serviço que está atualmente em execução, selecione quaisquer serviços que você queira desabilitar marcando a caixa de seleção para esse serviço e clique em Desabilitar (Disable).
- Deletando um serviço — Para excluir quaisquer serviços que não estão atualmente em execução, selecione quaisquer serviços que você queira desabilitar clicando na caixa de seleção para esse serviço e clique em Delete.
- Realocar um serviço — Para realocar um serviço em execução, clique no nome do serviço na exibição dos serviços. Isto faz com que a página de configuração dos serviços seja mostrada, com uma exibição indicando em qual nó o serviço está atualmente em execução.Da caixa suspensa Iniciar no Nó... (Start on node...), selecione o nó no qual você quer realocar o serviço, e clique no ícone Iniciar (Start). Um mensagem aparece no topo da tela indicando que o serviço está sendo iniciado. Você pode precisar atualizar a tela para ver a nova indicação de que o serviço está rodando no nó que você selecionou.
Nota
Caso o serviço em execução que você escolheu for um serviçovm
, a caixa de menu suspenso mostrará uma opçãomigrar
ao invés de uma opçãorelocar
Nota
4.6. Fazendo um backup e Recuperando a Configuração do luci
/var/lib/luci/data/luci.db
. Esta não é exatamente uma configuração do cluster, a qual é armazenada no arquivo cluster.conf
. Ao invés disso, ele contém a lista de usuários e clusters e propriedades relacionadas que o luci mantém. Por padrão, o backup que este procedimento cria será gravado no mesmo diretório que o arquivo luci.db
.
- Execute
service luci stop
. - Execute
service luci backup-db
.Como forma alternativa, você pode especificar um nome de arquivo como um parâmetro para o comandobackup-db
o qual irá gravar o banco de dados do luci naquele arquivo. Por exemplo, para gravar o banco de dados do luci no arquivo/root/luci.db.backup
, você pode executar o comandoservice luci backup-db /root/luci.db.backup
. Note, no entanto, que os arquivos de backup que são gravados em locais ao invés de/var/lib/luci/data/
(Para backups cujos nomes de arquivos você especifica ao usarservice luci backup-db
) não aparecerão no resultado do comandolist-backups
- Execute
service luci start
.
- Execute
service luci stop
. - Execute
service luci list-backups
e observe o nome do arquivo a ser recuperado. - Execute
service luci restore-db /var/lib/luci/data/lucibackupfile
onde lucibackupfile é o backup do arquivo a ser recuperado.Por exemplo, o comando a seguir recupera as informaçºoes de configuração do luci armazenadas no arquivo de backupluci-backup20110923062526.db
:service luci restore-db /var/lib/luci/data/luci-backup20110923062526.db
- Execute
service luci start
.
host.pem
da máquina onde você criou o backup porcausa de uma reinstalação completa, por exemplo, você irá precisar adicionar seus clusters de volta ao luci manualmente para reautenticar os nós de cluster.
luci1
e o backup é recuperado na máquina luci2
.
- Execute a seguinte sequência de comandos para criar um backup do luci no
luci1
e copiar o arquivo de certificado SSL e o backup do luci paraluci2
.[root@luci1 ~]#
service luci stop
[root@luci1 ~]#service luci backup-db
[root@luci1 ~]#service luci list-backups
/var/lib/luci/data/luci-backup20120504134051.db [root@luci1 ~]#scp /var/lib/luci/certs/host.pem /var/lib/luci/data/luci-backup20120504134051.db root@luci2:
- Na máquina
luci2
certifique-se de que o luci foi instalado e não está em execução. Instale o pacote, caso ainda não esteja instalado. - Execute a seguinte sequência de comandos para certificar-se de que as autenticações estão no local e para recuperar o banco de dados do luci do
luci1
paraluci2
.[root@luci2 ~]#
cp host.pem /var/lib/luci/certs/
[root@luci2 ~]#chown luci: /var/lib/luci/certs/host.pem
[root@luci2 ~]#/etc/init.d/luci restore-db ~/luci-backup20120504134051.db
[root@luci2 ~]#shred -u ~/host.pem ~/luci-backup20120504134051.db
[root@luci2 ~]#service luci start
Capítulo 5. Configurando o Complemento de Alta Disponibilidade da Red Hat com o comando ccs
ccs
. O comando ccs
permite um administrador criar, modificar e vizualizar o arquivo de configuração cluster.conf
. Você pode usar o comando ccs
para configurar um arquivo de configuração de cluster em um sistema de arquivo local ou em um nódo remoto. Usando o comando ccs
, um administrador pode também iniciar e parar os serviços de cluster em um ou todos os nódos em um cluster configurado.
ccs
. Para informações sobre usar o comando css
para gerenciar um cluster em execução, veja o Capítulo 6, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs.
Nota
Nota
cluster.conf
comumente usados. Para uma lista compreensiva e a descrição dos elementos e atributos do cluster.conf
, consulte o esquema de cluster em /usr/share/cluster/cluster.rng
e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
5.1. Visão Geral Operacional
ccs
para configurar um cluster:
5.1.1. Criando um arquivo de Configuração de Cluster em um Sistema Local
ccs
, você pode criar um arquivo de configuração do cluster em um nó de cluster, ou você pode criar um arquivo de configuração do cluster em um sistema de arquivo local e depois enviar aquele arquivo para uma máquina em um cluster. Isto permite que você trabalhe em um arquivo de uma máquina local, onde você pode mantê-lo sob o controle da versão ou então marcar o arquivo de acordo com suas necessidades. Utilizando o comando ccs
não requer o privilégio root.
ccs
, você usa a opção -h
para especificar o nome do host. Isto cria e edita o arquivo cluster.conf
no host:
ccs -h host [options]
-f
do comando ccs
para especificar o nome do arquivo de configuração quando você realizar uma operação no cluster. Você pode nomear este arquivo do jeito que quiser.
ccs -f file [options]
--setconf
do comando ccs
. Em uma máquina host em um cluster, o arquivo que você envia será nomeado cluster.conf
e será colocado no diretório /etc/cluster
.
ccs -h host -f file --setconf
--setconf
do comando ccs
, veja Seção 5.15, “Propagar o Arquivo de Configuração aos Nós do Cluster”.
5.1.2. Vizualizar a Configuração de Cluster Atual
ccs -h host --getconf
-f
ao invés da opção -h
, como descrito na Seção 5.1.1, “Criando um arquivo de Configuração de Cluster em um Sistema Local”.
5.1.3. Especificando Senhas ricci com o comando ccs
ccs
que distribui cópias do arquivo cluster.conf
aos nódos de um cluster requer que o ricci seja instalado e esteja rodando nos nódos do cluster, como descrito na Seção 2.13, “Considerações para o ricci
”. Usar o ricci requer uma senha na primeira vez que você interagir com o ricci de qualquer máquina específica.
ccs
precisar. Como forma alternativa, você poderá utilizar a opção -p
para especificar uma senha ricci na linha de comando.
ccs -h host -p password --sync --activate
cluster.conf
para todos os nódos no cluster com a opção --sync
do comando ccs
e você especificar uma senha ricci para o comando, o ricci
usará essa senha para cada nódo no cluster. Se você precisar definir diferentes senhas para o ricci em nódos individuais, você pode usar o comando --setconf
com o -p
para distribuir o arquivo de configuração a um nódo por vez.
5.1.4. Modificando Componentes de Configuração de Cluster
ccs
para configurar componentes do cluster e seus atributos no arquivo de configuração do cluster. Depois de ter adicionado um componente de cluster ao arquivo, para modificar os atributos deste componente você deve remover o componente que definiu e adicionar o componente novamente, com os atributos modificados. Informações sobre como fazer isso em cada componente são fornecidas nas seções individuais deste capítulo.
cman
fornece uma exceção à este procedimento para modificar componentes de cluster. Para modificar estes atributos, você pode executar a opção --setcman
do comando ccs
, especificando os novos atributos. Note que ao especificar esta opção, vocẽ irá redefinir todos os valores que você não especifica explicitamente para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
5.1.5. Comandos que Sobrescrevem Configurações Anteriores
ccs
que implementa semânticas sobrescritas ao definir as propriedades. Isto significa que você pode emitir um comando ccs
com uma destas opções sem especificar qualquer configuração, e ele irá redefinir todas as configurações para seus valores padrão. Estas opções são estas a seguir:
--settotem
--setdlm
--setrm
--setcman
--setmulticast
--setaltmulticast
--setfencedaemon
--setlogging
--setquorumd
# ccs -h hostname --setfencedaemon
post_fail_delay
para 5:
# ccs -h hostname --setfencedaemon post_fail_delay=5
post_join_delay
para 10, a propriedade do post_fail_delay
será recuperada para seu valor padrão:
# ccs -h hostname --setfencedaemon post_join_delay=10
post_fail_delay
e as propriedades post_join_delay
, você os indica no mesmo comando, como no exemplo a seguir:
# ccs -h hostname --setfencedaemon post_fail_delay=5 post_join_delay=10
5.1.6. Validação de Configuração
ccs
para criar e editar o arquivo de configuração do cluster, a configuração é automaticamente validada de acordo com o esquema de cluster. Desde o Red Hat Enterprise Linux 6.3, o comando ccs
valida a configuração de acordo com o esquema do cluster em /usr/share/cluster/cluster.rng
no nó que você espeficar com a opção -h
. Anteriormente, o comando ccs
sempre usava o esquema do cluster que era empacotado com o próprio comando ccs
, /usr/share/ccs/cluster.rng
no sistema local. Quando você utilizar a opçaõ -f
para especificar o sistema local, o comando ccs
ainda utiliza o esquema cluster /usr/share/ccs/cluster.rng
que foi empacotada com o comando ccs
.
5.2. Tarefas de Configuração
ccs
consiste dos seguintes passos:
- Certifique-se que o ricci está rodando em todos os nódos no cluster. Consulte a Seção 5.3, “Iniciando o ricci”.
- Criando um cluster. Consulte a Seção 5.4, “Criando um Cluster”
- Configurando dispositivos fence. Consulte a Seção 5.5, “Configurando Dispositivos Fence”.
- Configurando o fence para membros do cluster. Consulte a Seção 5.7, “Configurando o Fence para Membros do Cluster”.
- Criando domínios failover. Consulte a Seção 5.8, “Configurando um Domínio de Failover”.
- Criando recursos. Consulte a Seção 5.9, “Configurando Recursos de Cluster Globais”.
- Criando dispositivos de cluster. Consulte a Seção 5.10, “Adicionando um Serviço de Cluster ao Cluster”.
- Configurando um disco quorum, se necessário. Consulte a Seção 5.13, “Configurando um Disco de Quorum”.
- Configurando propriedades de cluster globais. Consulte a Seção 5.14, “Configurações de Cluster Diversas”.
- Propagando o arquivo de configuração de cluster em todos os nódos do cluster. Consulte a Seção 5.15, “Propagar o Arquivo de Configuração aos Nós do Cluster”.
5.3. Iniciando o ricci
- As portas IP em seu nódos no cluster devem estar habilitadas para o ricci. Para informações sobre habilitar portas IP nos nódos do cluster, veja a Seção 2.3.1, “Habilitando Portas IP em nós de Cluster”.
- O serviço ricci está instalado em todos os nódos no cluster e atribuído uma senha ricci, como descrito na Seção 2.13, “Considerações para o
ricci
”.
# service ricci start
Starting ricci: [ OK ]
5.4. Criando um Cluster
ricci
sem usar fence, domínios failover e serviços de Alta Disponibilidade (HA - High Availability). As seções subsequentes descrevem como configurar aquelas partes da configuração.
- Crie um arquivo de configuração de cluster em um dos nódos no cluster executando o comando
ricci
usando o parâmetro-h
para especificar o nódo no qual criar o arquivo e a opçãocreatecluster
para especificar um nome para o cluster:ccs -h host --createcluster clustername
Por exemplo, o comando seguinte criar um arquivo de configuração nonode-01.example.com
chamadomycluster
:ccs -h node-01.example.com --createcluster mycluster
O nome do cluster não pode ultrapassar 15 caractéres.Se um arquivocluster.conf
já existe no host que você especificar, executar este comando substituirá o arquivo existente.Se você deseja criar um arquivo de configuração de cluster em seu sistema local, você pode especificar a opção-f
ao invés da opção-h
. Para mais informações sobre como criar o arquivo localmente, consulte Seção 5.1.1, “Criando um arquivo de Configuração de Cluster em um Sistema Local”. - Para configurar os nódos que o cluster possui, execute o seguinte comando para cada nódo no cluster:
ccs -h host --addnode node
Por exemplo, os seguintes três comandos adicionam os nódosnode-01.example.com
,node-02.example.com
, enode-03.example.com
ao arquivo de configuração nonode-01.example.com
:ccs -h node-01.example.com --addnode node-01.example.com ccs -h node-01.example.com --addnode node-02.example.com ccs -h node-01.example.com --addnode node-03.example.com
Para vizualizar uma lista de nódos que foram configurados para um cluster, execute o seguinte comando:ccs -h host --lsnodes
Exemplo 5.1, “O arquivocluster.conf
depois de adicionar três nódos” exibe um arquivo de configuraçãocluster.conf
depois de você ter criado o clustermycluster
que contém os nodosnode-01.example.com
node-02.example.com
enode-03.example.com
.Exemplo 5.1. O arquivo
cluster.conf
depois de adicionar três nódos<cluster name="mycluster" config_version="2"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> </cluster>
Quando você adicionar um nódo ao um cluster, você pode especificar o número de votos que o nódo contribui para determinar se existe um quorum. Para definir o número de votos para um nódo do cluster, use o seguinte comando:ccs -h host --addnode host --votes votes
Quando você adicionar um nódo, occs
atribui ao nódo um número inteiro único que é usado como o identificador do nódo. Se você quiser especificar o identificador de nódo manualmente quando criar um nódo, use o seguinte comando:ccs -h host --addnode host --nodeid nodeid
Para remover um nódo de um cluster, execute o seguinte comando:ccs -h host --rmnode node
5.5. Configurando Dispositivos Fence
- O atributo
post_fail_delay
é o número de segundos que o daemon fence (fenced
) espera antes de executar um fence em um nódo (um membro do domínio fence) depois que o nódo tiver falhado. O valor padrãopost_fail_delay
é0
. O seu valor pode ser variado para adequar o desempenho de rede e cluster. - O atributo
post-join_delay
é o número de segundos que o fence daemon (fenced
) espera antes de fazer um fence em um nó depois que o nó se unir ao domínio do fence. O valor padrão dopost-join_delay
é6
. Uma configuração típica parapost-join_delay
é entre 20 e 30 segundos, mas pode ser variado para se adequar ao desempenho da rede e do cluster.
post_fail_delay
e post_join_delay
com a opção --setfencedaemon
do comando ccs
. Note, no entanto que ao executar o comando ccs --setfencedaemon
, ele sobrescreve todas as propriedades de daemon de fence existentes que foram explicitamente definidas e recupera-os para seus valores padrão.
post_fail_delay
, execute o seguinte comando. Este comando irá sobrescrever os valores de todas as propriedades do daemon de fence existentes que você já definiu com este comando e recuperá-los para seus valores padrão.
ccs -h host --setfencedaemon post_fail_delay=value
post_join_delay
, execute o seguinte comando. Este comando irá sobrescrever os valores de todas as propriedades de daemon de fence existentes que você já definiu com este comando e recuperá-los para seus valores padrão.
ccs -h host --setfencedaemon post_join_delay=value
post_join_delay
e post_fail_delay
execute o seguinte comando:
ccs -h host --setfencedaemon post_fail_delay=value post_join_delay=value
Nota
post_join_delay
e post_fail_delay
tanto como propriedades de fence daemon adicionais que você pode modificar, consulte a página man fenced(8) e consulte o esquema de cluster em /usr/share/cluster/cluster.rng
, e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
.
ccs -h host --addfencedev devicename [fencedeviceoptions]
node1
chamado myfence
com o endereço de IP de apc_ip_example
, um login de login_example
, e uma senha de password_example
, execute o seguinte comando:
ccs -h node1 --addfencedev myfence agent=fence_apc ipaddr=apc_ip_example login=login_example passwd=password_example
fence devices
no arquivo de configuração cluster.conf
depois de você ter adicionado este dispositivo fence APC:
<fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="myfence" passwd="password_example"/> </fencedevices>
ccs
para imprimir uma lista de dispositivos de fence disponíveis e opções ou para imprimir uma lista de dispositivos de fence atualmente configuradas para seu cluster, veja Seção 5.6, “Lista de Dispositivos de Fence e Opções de Dispositivos de Fence”.
ccs -h host --rmfencedev fence_device_name
myfence
do arquivo de configuração do cluster no nódo node1
, execute o seguinte comando:
ccs -h node1 --rmfencedev myfence
5.6. Lista de Dispositivos de Fence e Opções de Dispositivos de Fence
ccs
para imprimir uma lista de dispositivos de fence disponíveis e para imprimir uma lista de opções para cada tipo de fence disponível. Você também pode utilizar o comando ccs
para imprimir uma lista de dispositivos de fence atualmente configuradas para seu cluster.
ccs -h host --lsfenceopts
node1
, mostrando o resultado de exemplo.
[root@ask-03 ~]# ccs -h node1 --lsfenceopts
fence_rps10 - RPS10 Serial Switch
fence_vixel - No description available
fence_egenera - No description available
fence_xcat - No description available
fence_na - Node Assassin
fence_apc - Fence agent for APC over telnet/ssh
fence_apc_snmp - Fence agent for APC over SNMP
fence_bladecenter - Fence agent for IBM BladeCenter
fence_bladecenter_snmp - Fence agent for IBM BladeCenter over SNMP
fence_cisco_mds - Fence agent for Cisco MDS
fence_cisco_ucs - Fence agent for Cisco UCS
fence_drac5 - Fence agent for Dell DRAC CMC/5
fence_eps - Fence agent for ePowerSwitch
fence_ibmblade - Fence agent for IBM BladeCenter over SNMP
fence_ifmib - Fence agent for IF MIB
fence_ilo - Fence agent for HP iLO
fence_ilo_mp - Fence agent for HP iLO MP
fence_intelmodular - Fence agent for Intel Modular
fence_ipmilan - Fence agent for IPMI over LAN
fence_kdump - Fence agent for use with kdump
fence_rhevm - Fence agent for RHEV-M REST API
fence_rsa - Fence agent for IBM RSA
fence_sanbox2 - Fence agent for QLogic SANBox2 FC switches
fence_scsi - fence agent for SCSI-3 persistent reservations
fence_virsh - Fence agent for virsh
fence_virt - Fence agent for virtual machines
fence_vmware - Fence agent for VMware
fence_vmware_soap - Fence agent for VMware over SOAP API
fence_wti - Fence agent for WTI
fence_xvm - Fence agent for virtual machines
ccs -h host --lsfenceopts fence_type
fence_wti
.
[root@ask-03 ~]# ccs -h node1 --lsfenceopts fence_wti
fence_wti - Fence agent for WTI
Required Options:
Optional Options:
option: No description available
action: Fencing Action
ipaddr: IP Address or Hostname
login: Login Name
passwd: Login password or passphrase
passwd_script: Script to retrieve password
cmd_prompt: Force command prompt
secure: SSH connection
identity_file: Identity file for ssh
port: Physical plug number or name of virtual machine
inet4_only: Forces agent to use IPv4 addresses only
inet6_only: Forces agent to use IPv6 addresses only
ipport: TCP port to use for connection with device
verbose: Verbose mode
debug: Write debug information to given file
version: Display version information and exit
help: Display help and exit
separator: Separator for CSV created by operation list
power_timeout: Test X seconds for status change after ON/OFF
shell_timeout: Wait X seconds for cmd prompt after issuing command
login_timeout: Wait X seconds for cmd prompt after login
power_wait: Wait X seconds after issuing ON/OFF
delay: Wait X seconds before fencing is started
retry_on: Count of attempts to retry power on
ccs -h host --lsfencedev
5.7. Configurando o Fence para Membros do Cluster
5.7.1. Configurando um Dispositivo Fence Baseado em Energia Única para um Nódo
apc
, que usa o agente fence fence_apc
.
- Adicionar um método fence para o nódo, fornecendo um nome para o método fence.
ccs -h host --addmethod method node
Por exemplo, para configurar um método fence chamadoAPC
para o nódonode-01.example.com
no arquivo de configuração no nódo do clusternode-01.example.com
, execute o seguinte comando:ccs -h node01.example.com --addmethod APC node01.example.com
- Adicionar uma instância de fence para o método. Você deve especificar o dispositivo fence a ser usado para o nódo, o nódo que esta instância se aplica, o nome do método e quaisquer opções para este método que são específicas para este nódo:
ccs -h host --addfenceinst fencedevicename node method [options]
Por exemplo, para configurar uma instância fence no arquivo de configuração no nódo de clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc
para criar um fence no nódo do clusternode-01.example.com
usando o método chamadoAPC
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc node01.example.com APC port=1
APC
. O dispositivo para o método fence especifica apc
como o nome do dispositivo, que é um dispositivo previamente configurado com a opção --addfencedev
, conforme descrito na Seção 5.5, “Configurando Dispositivos Fence”. Cada nó é configurado com um único número de porta do switch de energia APC: O número da porta para o node-01.example.com
é 1
, o número da porta para o node-02.example.com
é 2
, e o número da porta para o node-03.example.com
é 3
.
ccs -h node01.example.com --addmethod APC node01.example.com ccs -h node01.example.com --addmethod APC node02.example.com ccs -h node01.example.com --addmethod APC node03.example.com ccs -h node01.example.com --addfenceinst apc node01.example.com APC port=1 ccs -h node01.example.com --addfenceinst apc node02.example.com APC port=2 ccs -h node01.example.com --addfenceinst apc node03.example.com APC port=3
cluster.conf
Depois de Adicionar Métodos Fence Baseados em Energia” exibe um arquivo de configuração cluster.conf
depois de você ter adicionado estes métodos fencing e instâncias para cada nódo no cluster.
Exemplo 5.2. cluster.conf
Depois de Adicionar Métodos Fence Baseados em Energia
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
5.7.2. Configurando um Dispositivo Fence Baseado em Armazenamento para um nódo
on
ou enable
.
fence_node
(8).
sanswitch1
, que usa o agente fencing fence_sanbox2
.
- Adicionar um método fence para o nódo, fornecendo um nome para o método fence.
ccs -h host --addmethod method node
Por exemplo, para configurar um método fence chamadoSAN
para o nódonode-01.example.com
no arquivo de configuração no nódo do clusternode-01.example.com
, execute o seguinte comando:ccs -h node01.example.com --addmethod SAN node01.example.com
- Adicionar uma instância de fence para o método. Você deve especificar o dispositivo fence a ser usado para o nódo, o nódo que esta instância se aplica, o nome do método e quaisquer opções para este método que são específicas para este nódo:
ccs -h host --addfenceinst fencedevicename node method [options]
Por exemplo, para configurar uma instância fence no arquivo de configuração no nódo do clusternode-01.example.com
que usa o porta de energia 11 do switch SAN no dispositivo fence chamadosanswitch1
para fazer um fence no nódo do clusternode-01.example.com
usando o método chamadoSAN
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst sanswitch1 node01.example.com SAN port=11
- Para configurar o unfencing para o dispositivo fence baseado em armazenamento neste nódo execute o seguinte comando:
ccs -h host --addunfence fencedevicename node action=on|off
SAN
. O dispositivo para o método fence especifica o sanswitch
como nome de dispositivo, que é um dispositivo previamente configurado com a opção --addfencedev, como descrito na Seção 5.5, “Configurando Dispositivos Fence”. Cada nódo é configurado com único número de porta física SAN: O número da porta para node-01.example.com
é 11
, o número da porta para node-02.example.com
é 12
, e o número da porta para node-03.example.com
é 13
.
ccs -h node01.example.com --addmethod SAN node01.example.com ccs -h node01.example.com --addmethod SAN node02.example.com ccs -h node01.example.com --addmethod SAN node03.example.com ccs -h node01.example.com --addfenceinst sanswitch1 node01.example.com SAN port=11 ccs -h node01.example.com --addfenceinst sanswitch1 node02.example.com SAN port=12 ccs -h node01.example.com --addfenceinst sanswitch1 node03.example.com SAN port=13 ccs -h node01.example.com --addunfence sanswitch1 node01.example.com port=11 action=on ccs -h node01.example.com --addunfence sanswitch1 node02.example.com port=12 action=on ccs -h node01.example.com --addunfence sanswitch1 node03.example.com port=13 action=on
cluster.conf
Depois de Adicionar Métodos Fence baseados em Armazenamento” exibe uma configuração do arquivo cluster.conf
depois de você ter adicionado métodos fencing, instâncias fencing e unfencing para cada nódo no cluster.
Exemplo 5.3. cluster.conf
Depois de Adicionar Métodos Fence baseados em Armazenamento
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="SAN"> <device name="sanswitch1" port="11"/> </method> </fence> <unfence> <device name="sanswitch1" port="11" action="on"/> </unfence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="SAN"> <device name="sanswitch1" port="12"/> </method> </fence> <unfence> <device name="sanswitch1" port="12" action="on"/> </unfence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="SAN"> <device name="sanswitch1" port="13"/> </method> </fence> <unfence> <device name="sanswitch1" port="13" action="on"/> </unfence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example" login="login_example" name="sanswitch1" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
5.7.3. Configurando um dispositivo Fence de Backup
Nota
ccs
será o primeiro método, o segundo método que você configurar é o backup do fencing. Para alterar a ordem, você pode remover o primeiro método do arquivo de configuração, então adicionar o método backup.
ccs -h host --lsfenceinst [node]
apc
, que usa o agente fencing fence_apc
, e um dispositivo fence de backup que usa um dispositivo fence chamado sanswitch1
, que usa o agente fencing fence_sandbox2
. Já que o dispositivo sanswitch1
é um agente fencing baseado em armazenamento, você precisará configurar o unfencing para este dispositivo também.
- Adicione um método fence primário para o nódo, fornecendo um nome para o método fence.
ccs -h host --addmethod method node
Por exemplo, para configurar um método fence chamadoAPC
como o método primário para o nódonode-01.example.com
no arquivo de configuração no nódo do clusternode-01.example.com
, execute o seguinte comando:ccs -h node01.example.com --addmethod APC node01.example.com
- Adicione uma instância fence para o método primário. Você deve especificar o dispositivo fence para usar no nódo, o nódo que esta instância se aplica, o nome do método e qualquer opções para este método que são específicas para este nódo:
ccs -h host --addfenceinst fencedevicename node method [options]
Por exemplo, para configurar uma instância fence no arquivo de configuração no nódo de clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc
para criar um fence no nódo do clusternode-01.example.com
usando o método chamadoAPC
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc node01.example.com APC port=1
- Adicione um método fence de backup para o nódo, fornecendo um nome para o método fence.
ccs -h host --addmethod method node
Por exemplo, para configurar um método fence de backup chamadoSAN
para o nódonode-01.example.com
no arquivo de configuração no nódo do clusternode-01.example.com
, execute este comando:ccs -h node01.example.com --addmethod SAN node01.example.com
- Adicione uma instância fence para método de backup. Você deve especificar o dispositivo fence para usar no nódo, o nódo que a instância se aplica, o nome do método e quaisquer opções para este método que são específicas a este nódo:
ccs -h host --addfenceinst fencedevicename node method [options]
Por exemplo, para configurar uma instância fence no arquivo de configuração no nódo do clusternode-01.example.com
que usa o porta de energia 11 do switch SAN no dispositivo fence chamadosanswitch1
para fazer um fence no nódo do clusternode-01.example.com
usando o método chamadoSAN
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst sanswitch1 node01.example.com SAN port=11
- Já que o dispositivo
sanswitch1
é um dispositivo baseado em armazenamento, você deve configurar o unfencing para este dispositivo.ccs -h node01.example.com --addunfence sanswitch1 node01.example.com port=11 action=on
cluster.conf
Depois de Adicionar Métodos Fence de Backup” exibe o arquivo de configuração cluster.conf
depois de você ter adicionado um método fencing primário baseado em energia e um método fencing de backup baseado em armazenamento em cada nódo no cluster.
Exemplo 5.4. cluster.conf
Depois de Adicionar Métodos Fence de Backup
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> <method name="SAN"> <device name="sanswitch1" port="11"/> </method> </fence> <unfence> <device name="sanswitch1" port="11" action="on"/> </unfence </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> <method name="SAN"> <device name="sanswitch1" port="12"/> </method> </fence> <unfence> <device name="sanswitch1" port="12" action="on"/> </unfence </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> <method name="SAN"> <device name="sanswitch1" port="13"/> </method> </fence> <unfence> <device name="sanswitch1" port="13" action="on"/> </unfence </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example" login="login_example" name="sanswitch1" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
Nota
5.7.4. Configurando um Nódo com energia Redundante
action
de off
antes de configurar cada um dos dispositivos com um atributo action
de on
.
- Antes que você possa configurar um fence para um nó com energia redundante, você deve configurar cada um dos switches de energia como um dispositivo fence para o cluster. Para informações sobre configurar dispositivos fence, veja Seção 5.5, “Configurando Dispositivos Fence”.Para exibir uma lista de dispositivos fence atualmente configurados para seu cluster, execute o seguinte comando:
ccs -h host --lsfencedev
- Adicionar um método fence para o nódo, fornecendo um nome para o método fence.
ccs -h host --addmethod method node
Por exemplo, para configurar um método fence chamadoAPC-dual
para o nónode-01.example.com
no arquivo de configuração no nó do clusternode-01.example.com
, execute o seguinte comando:ccs -h node01.example.com --addmethod APC-dual node01.example.com
- Adicione uma instância fence para a primeira fonte de energia para o método fence. Você deve especificar o dispositivo fence a ser usado para o nó, o nó nesta instância se aplica ao nome do método e quaisquer opções para este método que são específicas a este nó. Neste momento você configura o atributo
action
comooff
.ccs -h host --addfenceinst fencedevicename node method [options] action=off
Por exemplo, para configurar uma instância de fence no arquivo de configuração no nó do clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc1
para fazer um fence no nó do clusternode-01.example.com
usando o método chamadoAPC-dual
e configurar o atributoaction
paraoff
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc1 node01.example.com APC-dual port=1 action=off
- Adicione uma instância fence para a segunda fonte de energia para o método fence. Você deve especificar o dispositivo fence a ser usado para o nó. O nó nesta instância se aplica ao nome do método e quaisquer opções para este método que são específicos ao nó. Neste ponto, você configura o atributo
action
comooff
para esta instância também.ccs -h host --addfenceinst fencedevicename node method [options] action=off
Por exemplo, para configurar uma segunda instância fence no arquivo de configuração no nó do clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc2
para fazer um fence no nó do clusternode-01.example.com
usando o mesmo método conforme você especificou para a primeira instância chamadaAPC-dual
e defina o atributoaction
paraon
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc2 node01.example.com APC-dual port=1 action=off
- Neste ponto, adicione uma outra instância fence à primeira fonte de energia ao método fence, configure o atributo
action
comoon
. Você deve especificar o dispositivo fence para usar para o nó. O nó nesta instância se aplica ao nome do método e quaisquer opções para o método que são específicas a este nó e especifique o atributoaction
comoon
:ccs -h host --addfenceinst fencedevicename node method [options] action=on
Por exemplo, para configurar uma instância fence no arquivo de configuração no nó do clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc1
aoapc1
para fazer um fence no nó do clusternode-01.example.com
usando o método chamadoAPC-dual
e defina o atributoaction
paraon
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc1 node01.example.com APC-dual port=1 action=on
- Adicione uma outra instância fence para a segunda fonte de energia ao método fence especificando o atributo
action
comoon
para esta instância. Você deve especificar o disposito fence a ser usado para o nó. O nó nesta instância se aplica ao nome do método e quaisquer opções para este método que são específicas a este nó tanto quando o atributoaction
paraon
.ccs -h host --addfenceinst fencedevicename node method [options] action=on
Por exemplo, para configurar uma segunda instância fence no arquivo de configuração no nó do clusternode-01.example.com
que usa o switch de energia APC porta 1 no dispositivo fence chamadoapc2
para fazer um fence no nó do clusternode-01.example.com
usando o mesmo método conforme você especificou para a primeira instância chamadaAPC-dual
e defina o atributoaction
paraon
, execute o seguinte comando:ccs -h node01.example.com --addfenceinst apc2 node01.example.com APC-dual port=1 action=on
cluster.conf
Depois de Adicionar um Fence de Duas Forças” mostra o arquivo de configuração cluster.conf
depois de você ter adicionado um fence para duas fontes de energia para cada nó no cluster.
Exemplo 5.5. cluster.conf
Depois de Adicionar um Fence de Duas Forças
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC-dual"> <device name="apc1" port="1"action="off"/> <device name="apc2" port="1"action="off"/> <device name="apc1" port="1"action="on"/> <device name="apc2" port="1"action="on"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC-dual"> <device name="apc1" port="2"action="off"/> <device name="apc2" port="2"action="off"/> <device name="apc1" port="2"action="on"/> <device name="apc2" port="2"action="on"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC-dual"> <device name="apc1" port="3"action="off"/> <device name="apc2" port="3"action="off"/> <device name="apc1" port="3"action="on"/> <device name="apc2" port="3"action="on"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc1" passwd="password_example"/> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc2" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
5.7.5. Remover Métodos Fence e Instâncias Fence
ccs -h host --rmmethod method node
APC
e você configurou para o node01.example.com
do arquivo de configuração no nó do cluster node01.example.com
, execute o seguinte comando:
ccs -h node01.example.com --rmmethod APC node01.example.com
ccs -h host --rmfenceinst fencedevicename node method
apc1
a partir do método nomeado APC-dual
configurado para o node01.example.com
a partir do arquivo de configuração no nó do cluster node01.example.com
, execute o seguinte comando:
ccs -h node01.example.com --rmfenceinst apc1 node01.example.com APC-dual
5.8. Configurando um Domínio de Failover
- Irrestrito (Unrestricted) — Permite especificar que um subconjunto de membros são preferidos mas que um serviço de cluster atribuído a este domínio pode rodar em qualquer membro disponível.
- Restringido (Restricted) — Permite restringir os membros que podem rodar um serviço de cluster em particular. Se nenhum dos membros de um domínio de failover restringido estiverem disponíveis, o serviço de cluster não pode ser iniciado (tanto manualmente ou pelo software do cluster).
- Desordenado (Unordered) — Quando um serviço de cluster é atribuído a um domínio de failover desordenado, o membro no qual o serviço de cluster roda é escolhido a partir dos membros do domínio de failover disponíveis sem ordem de prioridade.
- Ordenado (Ordered) — Permite especificar uma ordem de preferência entre os membros de um domínio de failover. O membro no topo da lista é o mais preferido, seguido do segundo e assim por diante.
- Failback — Permite especificar se um serviço do domínio de failover deveria fazer um fail back no nó que estava originalmente rodando antes da falha do nó. Configurando esta característica é útil em circunstâncias onde um nó repetidamente falha e é parte de um domínio de failover ordenado.
Nota
A característica de failback é aplicável somente se um failover ordenado é configurado.
Nota
Nota
httpd
), que requer que você defina a configuração identicamente em todos os membros que rodam o serviço de cluster. Ao invés de configurar o cluster inteiro para rodar o serviço de cluster, você pode definir somente os membros do domínio de failover restringidos que você associou com o serviço de cluster.
Nota
- Para adicionar um domínio de failover, execute o seguinte comando:
ccs -h host --addfailoverdomain name [restricted] [ordered] [nofailback]
Nota
O nome deve ser descritivo o bastante para distinguir seu propósito relativo a outros nome usados em seu cluster.Por exemplo, o comando seguinte configura um arquivo de domínio de failover chamadoexample_pri
nonode-01.example.com
que é irrestrito, ordenado e permite failback:ccs -h node-01.example.com --addfailoverdomain example_pri ordered
- Para adicionar um nó a um domínio de failover, execute o seguinte comando:
ccs -h host --addfailoverdomainnode failoverdomain node priority
Por exemplo, para configurar um domínio de failoverexample_pri
no arquivo de configuração nonode-01.example.com
que contenhanode-01.example.com
com prioridade 1,node-02.example.com
com prioridade 2, enode-03.example.com
com prioridade 3, execute os seguintes comandos:ccs -h node-01.example.com --addfailoverdomainnode example_pri node-01.example.com 1 ccs -h node-01.example.com --addfailoverdomainnode example_pri node-02.example.com 2 ccs -h node-01.example.com --addfailoverdomainnode example_pri node-03.example.com 3
ccs -h host --lsfailoverdomain
ccs -h host --rmfailoverdomain name
ccs -h host --rmfailoverdomainnode failoverdomain node
5.9. Configurando Recursos de Cluster Globais
- Global — Recursos que estão disponíveis a qualquer serviço no cluster.
- Serviço específico — Recursos que são disponíveis a somente um serviço.
ccs -h host --lsservices
ccs -h host --addresource resourcetype [resource options]
node01.example.com
. O nome do recurso é web_fs
, o dispositivo do sistema de arquivo é /dev/sdd2
, o ponto de montagem do sistema de arquivo é /var/www
, e o tipo do sistema de arquivo é ext3
.
ccs -h node01.example.com --addresource fs name=web_fs device=/dev/sdd2 mountpoint=/var/www fstype=ext3
ccs -h host --rmresource resourcetype [resource options]
5.10. Adicionando um Serviço de Cluster ao Cluster
- Adicione um serviço ao cluster com o seguinte comando:
ccs -h host --addservice servicename [service options]
Nota
Use um nome descritivo que claramente distingua o serviço de outros serviços no cluster.Quando você adicionar um serviço a uma configuração do cluster, você configura os seguintes atributosautostart
— Especifica se faz inicialização automática do serviço quando o cluster inicia. Use '1' para ativar e '0' para desativar; o padrão é ativado.domain
— Especifica um domínio de failover (se requerido).exclusive
— Especifica uma política onde o serviço somente roda em nós que não possuem outros serviços rodando neles.recovery
— Especificar uma política de recuperação para o serviço. As opções são relocar, reiniciar, desabilitar ou recuperar padrão do serviço. A política de reiniciar a recuperação indica que o sistema deve tentar reiniciar o serviço com falha antes de realocar o serviço. A política Recuperar indica que o sistema deve tentar reiniciar o serviço em um nó diferente. A política Desabilitar indica que o sistema deve desasbilitar o grupo de recurso se algum componente falhar. A política Reiniciar Desabilitar indica que o sistema deve tentar reiniciar o serviço em questão se ele falhar, mas se a reinicialização do serviço falhar, o serviço será desabilitado em vez de ser movido para outro host no cluster.Se você selecionar Reiniciar (Restart) ou Desabilitar Reiniciar (Restart-Disable) como a política de recuperação para o serviço, você pode especificar o número máximo de falhas de reinicializações antes de realocar ou desabilitar o serviço, você pode especificar o período de tempo em segundos depois em que se deve ignorar uma reinicialização.
Por exemplo, para adicionar um serviço ao arquivo de configuração no nó do clusternode-01.example.com
chamadoexample_apache
que usa o domínio de failoverexample_pri
, e possui a política de recuperaçãorelocate
, execute o seguinte comando:ccs -h node-01.example.com --addservice example_apache domain=example_pri recovery=relocate
Ao configurar os serviços para um cluster, você pode achar útil ver uma lista dos serviços disponíveis para seu cluster e as opções que estão disponíveis para cada serviço. Para informações sobre como utilizar o comandoccs
para imprimir uma lista de serviços disponíveis e suas opções, veja Seção 5.11, “Listando Serviços de Cluster Disponíveis”. - Adicione recursos ao serviço com o seguinte comando:
ccs -h host --addsubservice servicename subservice [service options]
Dependendo do tipo de recurso que você quer usar, preencha o serviço com recursos globais ou específicos. Para adicionar um recurso global, use a opção--addsubservice
doccs
para adicionar um recurso. Por exemplo, para adicionar um sistema de arquivos global chamadoweb_fs
ao serviço chamadoexample_apache
no arquivo de configuração do cluster nonode-01.example.com
, execute o seguinte comando:ccs -h node01.example.com --addsubservice example_apache fs ref=web_fs
Para adicionar um recurso de serviço específico ao serviço, você precisa especificar todas as opções de serviço. Por exemplo, se você não tivesse definido anteriormente oweb_fs
como um serviço global, você poderia adiciona-lo como um recurso de serviço específico com o seguinte comando:ccs -h node01.example.com --addsubservice example_apache fs name=web_fs device=/dev/sdd2 mountpoint=/var/www fstype=ext3
- Para adicionar um serviço filh0 ao serviço, você também pode usar a opção
--addsubservice
do comandoccs
, especificando as opções de serviço.Se você precisar adicionar serviços dentro de uma estrutura de árvore de dependências, use dois pontos (":") para separar elementos e identificar sub serviços do mesmo tipo. O exemplo seguinte adiciona um terceiro serviçonfsclient
como um subserviço do serviçonfsclient
que é também um subserviço de um serviçonfsclient
que é um subserviço de um serviço chamadoservice_a
:ccs -h node01.example.com --addsubservice service_a nfsclient[1]:nfsclient[2]:nfsclient
Nota
Se você estiver adicionando um recurso de serviço Samba, adicione-o diretamente ao serviço, não como um filho de outro recurso.
Nota
/sbin/ip addr show
em um nó de cluster (ao invés do comando obsoleto ifconfig
). O resultado a seguir demonstra o comando /sbin/ip addr show
executado em um nó executando um serviço de cluster:
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP> mtu 1356 qdisc pfifo_fast qlen 1000 link/ether 00:05:5d:9a:d8:91 brd ff:ff:ff:ff:ff:ff inet 10.11.4.31/22 brd 10.11.7.255 scope global eth0 inet6 fe80::205:5dff:fe9a:d891/64 scope link inet 10.11.4.240/22 scope global secondary eth0 valid_lft forever preferred_lft forever
ccs -h host --rmservice servicename
ccs -h host --rmsubservice servicename subservice [service options]
5.11. Listando Serviços de Cluster Disponíveis
ccs
para imprimir uma lista de serviços disponíveis para um cluster. Você também pode utilizar o comando ccs
para imprimir uma lista de opções que você pode especificar para um tipo de serviço específico.
ccs -h host --lsserviceopts
node1
, mostrando o resultado de exemplo.
[root@ask-03 ~]# ccs -h node1 --lsserviceopts
service - Defines a service (resource group).
ASEHAagent - Sybase ASE Failover Instance
SAPDatabase - SAP database resource agent
SAPInstance - SAP instance resource agent
apache - Defines an Apache web server
clusterfs - Defines a cluster file system mount.
fs - Defines a file system mount.
ip - This is an IP address.
lvm - LVM Failover script
mysql - Defines a MySQL database server
named - Defines an instance of named server
netfs - Defines an NFS/CIFS file system mount.
nfsclient - Defines an NFS client.
nfsexport - This defines an NFS export.
nfsserver - This defines an NFS server resource.
openldap - Defines an Open LDAP server
oracledb - Oracle 10g Failover Instance
orainstance - Oracle 10g Failover Instance
oralistener - Oracle 10g Listener Instance
postgres-8 - Defines a PostgreSQL server
samba - Dynamic smbd/nmbd resource agent
script - LSB-compliant init script as a clustered resource.
tomcat-6 - Defines a Tomcat server
vm - Defines a Virtual Machine
action - Overrides resource action timings for a resource instance.
ccs -h host --lsserviceopts service_type
vm
.
[root@ask-03 ~]# ccs -f node1 --lsserviceopts vm
vm - Defines a Virtual Machine
Required Options:
name: Name
Optional Options:
domain: Cluster failover Domain
autostart: Automatic start after quorum formation
exclusive: Exclusive resource group
recovery: Failure recovery policy
migration_mapping: memberhost:targethost,memberhost:targethost ..
use_virsh: If set to 1, vm.sh will use the virsh command to manage virtual machines instead of xm. This is required when using non-Xen virtual machines (e.g. qemu / KVM).
xmlfile: Full path to libvirt XML file describing the domain.
migrate: Migration type (live or pause, default = live).
path: Path to virtual machine configuration files.
snapshot: Path to the snapshot directory where the virtual machine image will be stored.
depend: Top-level service this depends on, in service:name format.
depend_mode: Service dependency mode (soft or hard).
max_restarts: Maximum restarts for this service.
restart_expire_time: Restart expiration time; amount of time before a restart is forgotten.
status_program: Additional status check program
hypervisor: Hypervisor
hypervisor_uri: Hypervisor URI (normally automatic).
migration_uri: Migration URI (normally automatic).
__independent_subtree: Treat this and all children as an independent subtree.
__enforce_timeouts: Consider a timeout for operations as fatal.
__max_failures: Maximum number of failures before returning a failure to a status check.
__failure_expire_time: Amount of time before a failure is forgotten.
__max_restarts: Maximum number restarts for an independent subtree before giving up.
__restart_expire_time: Amount of time before a failure is forgotten for an independent subtree.
5.12. Recursos de Máquina Virtual
ccs
você pode usar a opção --addvm
(ao invés da opção addservice
). Isto assegura que o recurso vm
é definido diretamente sob o nó de configuração rm
no arquivo de confiugração do cluster.
name
e um path
. O atributo name
deve coincidir com o nome do domínio libvirt
e o atributo path
deve especificar o diretório onde as definições da máquina virtual compartilhada são armazenadas.
Nota
path
no arquivo de configuração do cluster é uma especificação de caminho ou um nome de diretório, não um caminho para um arquivo individual.
/mnt/vm_defs
, o comando a seguir definirá uma máquina virtual chamada guest1
:
# ccs -h node1.example.com --addvm guest1 path=/mnt/vm_defs
cluster.conf
:
<vm name="guest1" path="/mnt/vm_defs"/>
5.13. Configurando um Disco de Quorum
Nota
ccs -h host --setquorumd [quorumd options]
--setquorumd
para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
/usr/share/cluster/cluster.rng
, e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
.
Tabela 5.1. Opções do Disco de Quorum
Parâmetro | Descrição |
---|---|
interval | A frequencia de ciclos de leitura/escrita, em segundos. |
votes | O número de votos de quorum anuncia ao cman quando ele possui uma contagem alta o bastante. |
tko | O número de ciclos que um nó deve perder para ser declarado morto. |
min_score | A contagem mínima para um nó ser considerado "vivo". Se omitido ou ajustado para 0, a função padrão floor((n+1)/2) , é usada, onde n é a soma da contagem de heurísticas. O valor da Contagem Mínima nunca deve exceder a soma da da contagem de heurísticas; caso contrário, o disco de quorum pode não estar disponível. |
device | O dispositivo de armazenamento que o daemon quorum usa. O dispositivo deve ser o mesmo em todos os nós. |
label | Especifica o rótulo do disco de quorum criado pelo utilitário mkqdisk . Se este campo contém uma entrada, o rótulo sobrescreve o campo do Dispositivo. Se este campo é usado, o daemon do quorum le o /proc/partitions e verifica por assinaturas qdisk em cada dispositivo de bloco encontrado, comparando o rótulo com o rótulo especificado. Isto é útil em configurações onde o nome de dispositivo de quorum difere entre os nós. |
ccs -h host --addheuristic [heuristic options]
Tabela 5.2. Heurísticas do Disco de Quorum
Parâmetro | Descrição |
---|---|
program | O caminho para o programa utilizado para determinar se esta eurística está disponível. Isto pode ser qualquer coisa que possa ser executada pelo /bin/sh -c . Um valor de retorno de 0 indica sucesso; qualquer outra coisa indica falha. Este parâmetro é necessário para utilizar o disco do quorum. |
interval | A frequencia (em segundos) na qual a heurística é consultada. O intervalo padrão para cada heurística é de 2 segundos. |
score | O peso desta heurística. Seja cuidadoso quando determinar contagem para as heurísticas. A contagem padrão para cada heurística é 1. |
tko | O número consecutivo de falhas requeridas antes que esta heuristica seja declarada indisponível. |
ccs -h host --lsquorum
ccs -h host rmheuristic [heuristic options]
Nota
qdiskd
em cada nó.
5.14. Configurações de Cluster Diversas
ccs
para configurar o seguinte:
ccs
para definir parâmetros de configuração de cluster avançados, incluindo opções totem
, opções dlm
, opções rm
e opções cman
. Para informações sobre definir parâmetros veja a página man ccs
(8) e o esquema de arquivo de configuração de cluster anotada /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
.
ccs -h host --lsmisc
5.14.1. Versão de Configuração do Cluster
1
por padrão quando você cria um arquivo de configuração de cluster e é automaticamente incrementado cada vez que você modificar sua configuração de cluster. Entretanto, se você precisar definir isso para um outro valor, você pode especificar isso com o seguinte comando:
ccs -h host --setversion n
ccs -h host --getversion
ccs -h host --incversion
5.14.2. Configuração Multicast
- Para o IPV4 — O endereço formado é 239.192. mais os 16 bits mais baixos gerados pelo software do Complemento de Alta Disponibilidade da Red Hat.
- Para o IPV6 — O endereço formado é FF15:: mais os 16 bits mais baixos gerados pelo software do Complemento de Alta Disponibilidade da Red Hat.
Nota
cman
gera para cada cluster. Para vizualizar o ID do cluster, execute o comando cman_tool status
em um nó do cluster.
ccs -h host --setmulticast multicastaddress
--setmulticast
para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
cman
. Caso contrário, usando um endereço multicast fora desta abrangência pode causar resultados imprevísiveis. Por exemplo, usando 224.0.0.x (que é "Todos os hosts na rede") pode não ser roteado corretamente ou mesmo não ser roteado por algum hardware.
ccs
consulte o Seção 6.2, “Iniciando e Parando um Cluster”.
Nota
--setmulticast
do ccs
, mas não especifica um endereço multicast:
ccs -h host --setmulticast
5.14.3. Configurando um Cluster de Dois Nós
ccs -h host --setcman two_node=1 expected_votes=1
--setcman
para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
ccs --setcman
para adicionar, remover ou modificar a opção two_node
, você precisa reiniciar o cluster para esta mudança tomar efeito. Para informações sobre iniciar ou interromper um cluster com o comando ccs
consulte o Seção 6.2, “Iniciando e Parando um Cluster”.
5.14.4. Autenticando
/var/log/cluster/daemon.log
.
ccs -h host --setlogging [logging options]
# ccs -h node1.example.com --setlogging debug=on
--setlogging
para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
ccs -h host --addlogging [logging daemon options]
corosync
e fenced
daemons.
#ccs -h node1.example.com --addlogging name=corosync debug=on
#ccs -h node1.example.com --addlogging name=fenced debug=on
ccs -h host --rmlogging name=clusterprocess
fenced
.
ccs -h host --rmlogging name=fenced
cluster.conf
(5).
5.14.5. Configurando o Protocolo de Anel Redundante
addalt
do comando ccs
.
ccs -h host --addalt node_name alt_name
clusternet-node1-eth2
para o nó de cluster clusternet-node1-eth1
:
# ccs -h clusternet-node1-eth1 --addalt clusternet-node1-eth1 clusternet-node1-eth2
--setaltmulticast
do comando ccs
:
ccs -h host --setaltmulticast [alt_multicast_address] [alt_multicast_options].
cluster.conf
no nó clusternet-node1-eth1
:
ccs -h clusternet-node1-eth1 --setaltmulticast 239.192.99.88 port=888 ttl=3
--setaltmulticast
do comandoccs
mas não especifique o endereço multicast. Note que ao executar este comando, ele redefinirá todas as outras propriedades que você pode definir com a opção --setaltmulticast
para seus valores padrão, como descrito em Seção 5.1.5, “Comandos que Sobrescrevem Configurações Anteriores”.
5.15. Propagar o Arquivo de Configuração aos Nós do Cluster
ccs -h host --sync --activate
ccs -h host --checkconf
ccs -f file -h host --setconf
ccs -f file --checkconf
Capítulo 6. Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs
ccs
, que é suportado a partir do lançamento do Red Hat Enterprise Linux 6.1 e posteriores. Este capítulo consiste das seguintes seções:
6.1. Gerenciando Nós no Cluster
ccs
:
6.1.1. Faz um nó sair ou se juntar a um Cluster
ccs
para fazer um nó sair de um cluster parando os serviços de cluster nesse nó. Fazer um nó deixar um cluster não remove a informação de configuração de cluster desse nó. Fazer um nó sair de um cluster previne que nó se junte ao cluster quando for reinicializado.
-h
:
ccs -h host --stop
--rmnode
do comando ccs
, como descrito na Seção 5.4, “Criando um Cluster”.
-h
:
ccs -h host --start
6.1.2. Adicionar um Membro a um Cluster em Execução
6.2. Iniciando e Parando um Cluster
ccs
para parar um cluster usando o seguinte comando para parar serviços de cluster em todos os nós no cluster:
ccs -h host --stopall
ccs
para parar um cluster que não estiver rodando usando o seguinte comando para iniciar serviços de cluster em todos os nós do cluster:
ccs -h host --startall
6.3. Diagnosticando e Corrigindo Problemas em um Cluster
ccs
entretanto.
ccs -h host --checkconf
ccs -f file --checkconf
Capítulo 7. Configurando o Complemento de Alta Disponibilidade da Red Hat com as Ferramentas da Linha de Comando
/etc/cluster/cluster.conf
) e usando as ferramentas da linha de comando. O capítulo fornece procedimentos sobre montar um arquivo de configuração, uma seção por vez, iniciando com uma amostra disponibilizada neste capítulo. Como uma alternativa para iniciar com um arquivo de exemplo fornecido aqui, você pode copiar o esqueleto do arquivo de configuração da página man cluster.conf
. Entretanto, fazendo isso não alinharia necessariamente com a informação fornecida nos procedimentos subsequentes deste capítulo. Existem outras maneiras para criar e configurar um arquivo de configuração de cluster; este capítulo fornece procedimentos sobre montar um arquivo de configuração, uma seção por vez. Também, tenha em mente que isto é apenas um ponto inicial para desenvolver um arquivo de configuração que atenda suas necessidades de clusterização.
Importante
Importante
cluster.conf
comumente usados. Para uma lista compreensiva e a descrição dos elementos e atributos do cluster.conf
, consulte o esquema de cluster em /usr/share/cluster/cluster.rng
e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
Importante
cman_tool version -r
para propagar a configuração de cluster por todo um cluster. Usar esse comando requer que o ricci
esteja rodando. Usar o ricci requer uma senha na primeira vez que você interagir com o ricci a partir de qualquer máquina especifica. Para informações sobre o serviço ricci
, consulte a Seção 2.13, “Considerações para o ricci
”.
Nota
7.1. Tarefas de Configuração
- Criando um cluster. Consulte a Seção 7.2, “Criando um arquivo de Configuração de Cluster Básica”.
- Configurando o fence. Consulte a Seção 7.3, “Configuração de Fence”.
- Configurando domínios de failover. Consulte a Seção 7.4, “Configurar Domínios de Failover”.
- Configurando serviços de Alta Disponibilidade. Consulte a Seção 7.5, “Configurando Serviços de Alta Disponibilidade”.
- Verificando a configuração. Consulte a Seção 7.8, “Verificando uma Configuração”.
7.2. Criando um arquivo de Configuração de Cluster Básica
/etc/cluster/cluster.conf
) e inicie a execução do Complemento de Alta Disponibilidade. Como um ponto inicial somente, esta seção descreve como criar um esqueleto do arquivo de configuração de cluster sem fence, domínios failover e serviços de Alta Disponibilidade. Seções subsequentes descrevem como configurar estas partes do arquivo de configuração.
Importante
- Em qualquer nó no cluster, crie o
/etc/cluster/cluster.conf
, usando o modelo do exemplo em Exemplo 7.1, “cluster.conf
Exemplo: Configuração Básica”. - Opcional se você está configurando um cluster de dois nós, você pode adicionar a seguinte linha ao arquivo de configuração para permitir que um nó único mantenha quorum (por exemplo, se um nó falhar):
<cman two_node="1" expected_votes="1"/>
Quando você adicionar ou remover a opçãotwo_node
do arquivocluster.conf
, você precisa reiniciar o cluster para que esta mudança seja efetuada ao atualizar a confiugração. Para obter informações sobre como atualizar uma configuração de cluster, consulte o Seção 8.4, “Atualizando uma Configuração”. Para um exemplo de especificação da opçãotwo_node
consulte o Exemplo 7.2, “cluster.conf
Exemplo: Configuração de Nós Básica”. - Especifique o nome do cluster e o número da versão da configuração usando os atributos do
cluster
:name
econfig_version
(consulte o Exemplo 7.1, “cluster.conf
Exemplo: Configuração Básica” ou Exemplo 7.2, “cluster.conf
Exemplo: Configuração de Nós Básica”). - Na seção
clusternodes
, especifique o nome do nó e a ID do nó para cada nó usando os atributos doclusternode
:name
enodeid
. - Salve o
/etc/cluster/cluster.conf
. - Valide o arquivo no esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Propague o arquivo de configuração no
/etc/cluster/
em cada nó no cluster. Por exemplo, você poderia propagar o arquivo a outros nós no cluster usando o comandoscp
.Nota
Propagando o arquivo de configuração do cluster desta maneira é necessário na primeira vez que o cluster é criado. Uma vez o cluster é instalado e rodando, o arquivo de configuração do cluster pode ser propagado usando ocman_tool version -r
. É possível usar o comandoscp
. Além disso, você deve rodar occs_config_validate
se você propagar um arquivo de configuração atualizado peloscp
.Nota
Enquanto existem outros elementos e atributos presentes no exemplo do arquivo de configuração (por exemplo ofence
e ofencedevices
, não há necessidade de popula-los agora.) Procedimentos subsequentes neste capítulo fornecem informações sobre especificar outros elementos e atributos. - Inicie o cluster. Em cada nó no cluster, execute o seguinte comando:
service cman start
Por exemplo:[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] - Em qualquer nó no cluster, rode o
cman_tools nodes
para verificar que os nós estão funcionando como membros no cluster (mostrados como "M" na coluna de estado "Sts"). Por exemplo:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com 3 M 544 2010-09-28 10:52:21 node-03.example.com - Se o cluster estiver rodando, vá para Seção 7.3, “Configuração de Fence”.
7.2.1. Exemplos de Configurações Básicas
cluster.conf
Exemplo: Configuração Básica” e Exemplo 7.2, “cluster.conf
Exemplo: Configuração de Nós Básica” (para um cluster de dois nós) cada fornece um exemplo muito básico de arquivo de configuração como um ponto de início. Procedimentos subsequentes neste capítulos fornecem informações sobre configurar o fence dos serviços de Alta Disponibilidade.
Exemplo 7.1. cluster.conf
Exemplo: Configuração Básica
<cluster name="mycluster" config_version="2"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> </cluster>
Exemplo 7.2. cluster.conf
Exemplo: Configuração de Nós Básica
<cluster name="mycluster" config_version="2"> <cman two_node="1" expected_votes="1"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> </fencedevices> <rm> </rm> </cluster>
7.2.2. O valor concensus
para o totem
em um cluster de dois nós.
consensus
na tag totem
no arquivo cluster.conf
para que o valor consensus
seja calculado automaticamente. Quando o valor consensus
é calculadoautomaticamente, as seguintes regras são usadas:
- Se existem dois nós ou menos, o valor
consensus
será (token * 0.2), com um teto de 2000 milisegundos e um piso de 200 milisegundos. - Se existem três ou mais nós, o valor
consensus
será (token + 2000 milisegundos)
cman
configure a expiração de seu consensus desta maneira e então mudar em um outro momento de dois para três nós (ou mais) isso irá requerer a reinicialização de um cluster, já que a expiração do consensus precisará mudar para um valor maior baseado na expiração do token.
cluster.conf
conforme se segue:
<totem token="X" consensus="X + 2000" />
cman
, o número de nós físicos é o que importa e não a presença da directiva two_node=1
no arquivo cluster.conf
.
7.3. Configuração de Fence
cluster.conf
conforme a seguir:
- Na seção
fencedevices
, especifique cada dispositivo fence, usando um elementofencedevice
e atributos dependentes de dispositivos fence. O Exemplo 7.3, “O Dispositivo Fence APC Adicionado aocluster.conf
” exibe um exemplo de arquivo de configuração com um dispositivo fence APC adicionado a ele. - Na seção
clusternodes
, dentro do elementofence
de cada seção doclusternode
, especifique cada método fence do nó. Especifique o nome do método fence, usando o atributomethod
,name
. Especifique o dispositivo fence para cada método fence, usando o elementodevice
e seus atributos,name
e parâmetros específicos de dispositivos fence. O Exemplo 7.4, “Métodos Fence adicionados aocluster.conf
” mostra um exemplo de um método fence com um dispositivo fence para nó no cluster. - Para métodos fence sem energia (que é SAN/fence de armazenamento) na seção
clusternodes
, adicione uma seçãounfence
. Isto garante que um nó com fence não seja rehabilitado até que o nó seja reinicializado. Para mais informações sobre tirar um fence (unfencing) de um nó, consulte a página manfence_node
(8).A seçãounfence
não contém seçõesmethod
como a seçãofence
possui. Ela contém referênciasdevice
diretamente, que espelha as seções dos dispositivos correspondentes para ofence
, com a adição notável da ação explícita (action
) do "on" ou "enable". O mesmofencedevice
é referenciado por ambas linhas dedispositivo
fence
eunfence
e os mesmos argumentos por nó devem ser repetidos.Especifique o atributoaction
como "on" ou "enable" habilita o nó quando reinicializado. O Exemplo 7.4, “Métodos Fence adicionados aocluster.conf
” e Exemplo 7.5, “cluster.conf
: Múltiplos Métodos Fence por Nó” inclui exemplos dos elementosunfence
e atribuídos.Para mais informações sobre ounfence
consulte a página manfence_node
. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo atualizado contra o esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração e o resto dos nós do cluster. Isto também executará validação adicional. É necessário que oricci
esteja rodando em cada nó no cluster para ser capaz de propagar a informação de configuração de cluster atualizada. - Verifique que o arquivo de configuração atualizado foi propagado.
- Consulte a Seção 7.4, “Configurar Domínios de Failover”.
fenced
, o daemon fence tenta o próximo método e continua a rotacionar os métodos até que um tenha sucesso.
fence
roda o agente fence para cada linha de dispositivo fence; todos devem ser bem sucedidos para o fence ser considerado bem sucedido.
fence_apc
). Além disso, você pode obter mais informações sobre parâmetros fence no Apêndice A, Parâmetros de Dispositos Fence, os agentes fence em /usr/sbin/
, o esquema de cluster em /usr/share/cluster/cluster.rng
, e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo, /usr/share/doc/cman-3.0.12/cluster_conf.html
).
7.3.1. Exemplos de Configuração Fence
Nota
Exemplo 7.3. O Dispositivo Fence APC Adicionado ao cluster.conf
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
fencedevice
) foi adicionado ao elemento fencedevices
, especificando o agente fence (agent
) como o fence_apc
, o endereço de IP (ipaddr
) como apc_ip_example
, o login (login
) como login_example
, o nome do dispositivo fence (name
) como apc
, e a senha (passwd
) como password_example
.
Exemplo 7.4. Métodos Fence adicionados ao cluster.conf
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
method
) foi adicionado a cada nó. O nome do método fence (name
) para cada nó é APC
. O dispositivo (device
) para o método fence em cada nó especifica o nome (name
) como apc
e um único switch de energia APC porta número (port
) para cada nó. Por exemplo, a porta número para o node-01.example.com é 1
(port="1"
). O nome do dispositivo para cada pontos de nó (device name="apc"
) ao dispositivo fence pelo nome (name
) do apc
nesta linha do fencedevices
element: fencedevice agent="fence_apc"
ipaddr="apc_ip_example" login="login_example"
name="apc" passwd="password_example"/
.
Exemplo 7.5. cluster.conf
: Múltiplos Métodos Fence por Nó
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> <method name="SAN"> <device name="sanswitch1" port="11"/> </method> </fence> <unfence> <device name="sanswitch1" port="11" action="on"/> </unfence </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> <method name="SAN"> <device name="sanswitch1" port="12"/> </method> </fence> <unfence> <device name="sanswitch1" port="12" action="on"/> </unfence </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> <method name="SAN"> <device name="sanswitch1" port="13"/> </method> </fence> <unfence> <device name="sanswitch1" port="13" action="on"/> </unfence </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example" login="login_example" name="sanswitch1" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
Exemplo 7.6. cluster.conf
: Fencing, Múltiplas Portas Multipath
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="SAN-multi"> <device name="sanswitch1" port="11"/> <device name="sanswitch2" port="11"/> </method> </fence> <unfence> <device name="sanswitch1" port="11" action="on"/> <device name="sanswitch2" port="11" action="on"/> </unfence </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="SAN-multi"> <device name="sanswitch1" port="12"/> <device name="sanswitch2" port="12"/> </method> </fence> <unfence> <device name="sanswitch1" port="12" action="on"/> <device name="sanswitch2" port="12" action="on"/> </unfence </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="SAN-multi"> <device name="sanswitch1" port="13"/> <device name="sanswitch2" port="13"/> </method> </fence> <unfence> <device name="sanswitch1" port="13" action="on"/> <device name="sanswitch2" port="13" action="on"/> </unfence </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example" login="login_example" name="sanswitch1" passwd="password_example"/> <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example" login="login_example" name="sanswitch2" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
Exemplo 7.7. cluster.conf
: Nós Fence com Duas Fontes de Energia
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC-dual"> <device name="apc1" port="1"action="off"/> <device name="apc2" port="1"action="off"/> <device name="apc1" port="1"action="on"/> <device name="apc2" port="1"action="on"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC-dual"> <device name="apc1" port="2"action="off"/> <device name="apc2" port="2"action="off"/> <device name="apc1" port="2"action="on"/> <device name="apc2" port="2"action="on"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC-dual"> <device name="apc1" port="3"action="off"/> <device name="apc2" port="3"action="off"/> <device name="apc1" port="3"action="on"/> <device name="apc2" port="3"action="on"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc1" passwd="password_example"/> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc2" passwd="password_example"/> </fencedevices> <rm> </rm> </cluster>
7.4. Configurar Domínios de Failover
- Irrestrito (Unrestricted) — Permite especificar que um sub conjunto de membros são preferidos mas que um serviço de cluster atribuído a este domínio possa rodar em qualquer membro disponível.
- Restringido (Restricted) — Permite restringir os membros que podem rodar um serviço de cluster em particular. Se nenhum dos membros em um domínio de failover estiverem disponíveis, o serviço de cluster não pode ser iniciado (tanto manualmente ou pelo software de cluster).
- Desordenado (Unordered) — Quando um serviço de cluster é atribuído a um domínio de failover desordenado, o membro no qual o serviço de cluster roda é escolhido a partir dos membros do domínio de failover disponíveis sem prioridade de ordem.
- Ordenado (Ordered) — Permite especificar uma ordem de preferência entre os membros de um domínio de failover. Domínios de failover ordenados selecionam o nó com o número prioridade mais baixo primeiro. Onde o domínio failover com uma prioridade de número "1" significa a prioridade mais alta, e portanto é o nó mais preferido em um domínio de failover. Depois desse nó, o próximo nó preferido seria o nó com próximo número de prioridade e assim pode diante.
- Failback — Permite especificar se um serviço no domínio de failover deveria fazer um fail back no nó que estava originalmente rodando antes desse nó falhar. Configurar esta característica é útil em circunstâncias onde um nó falha repetidamente e é parte de um domínio de failover ordenado. Nesta circunstância, se o nó é o preferido no domínio de failover, é possível para um serviço fazer fail over e fail back repetidamente entre o nó preferido e o outro nó, causando um impacto severo no desempenho.
Nota
A característica failback é aplicável somente se o failover ordenado é configurado.
Nota
Nota
httpd
), que requer que você defina identicamente a configuração em todos os membros que rodam o serviço de cluster. Em vez de definir o cluster inteiro para rodar o serviço de cluster, você pode definir somente os membros no domínio de failover restringidos que você associa com o serviço de cluster.
Nota
- Abra o
/etc/cluster/cluster.conf
em qualquer nó do cluster. - Adicione a seguinte estrutura de seção dentro do elemento
rm
para cada domínio de failover a ser usado:<failoverdomains> <failoverdomain name="" nofailback="" ordered="" restricted=""> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> <failoverdomainnode name="" priority=""/> </failoverdomain> </failoverdomains>
Nota
O número de atributos defailoverdomainnode
depende do número de nós no domínio failover. A estrutura da seçãofailoverdomain
no texto anterior mostra três elementosfailoverdomainnode
(sem nomes de nós especificados), mostrando que existem três nós no domínio de failover. - Na seção
failoverdomain
, forneça os valores dos elementos e atributos. Para descriçoes dos elementos e atributos, consulte a seção failoverdomain do esquema de cluster anotados. O esquema de cluster anotado está disponível em/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo/usr/share/doc/cman-3.0.12/cluster_conf.html
) em qualquer dos nós no cluster. Para um exemplo de uma seçãofailoverdomains
, consulte Exemplo 7.8, “Um Domínio de Failover Adicionado aocluster.conf
”. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo no esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster.
cluster.conf
” mostra um exemplo de configuração com um domínio de failover ordenado e irrestrito.
Exemplo 7.8. Um Domínio de Failover Adicionado ao cluster.conf
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> </rm> </cluster>
failoverdomains
contém uma seção failoverdomain
para cada domínio de failover no cluster. Este exemplo possui um domínio de failover. Na linha failoverdomain
, o nome (name
) é especificado como example_pri
. Além disso, ele não especifica failback (failback="0"
), este failover é ordenado (ordered="1"
), e que o domínio failover é irrestrito (restricted="0"
).
7.5. Configurando Serviços de Alta Disponibilidade
/etc/cluster/cluster.conf
para adicionar recursos e serviços.
Importante
7.5.1. Adicionando Recursos de Cluster
- Global — Recursos que estão disponíveis a qualquer serviço no cluster. Eles são configurados na seção
resources
do arquivo de configuração (dentro do elementorm
). - Serviço especifico (Service-specific) — Recursos que estão disponíveis somente a um serviço. Eles são configurados em cada seção de
service
do arquivo de configuração (dentro do elementorm
).
- Abra o
/etc/cluster/cluster.conf
em qualquer nó do cluster. - Adicione a seção
recursos
dentro do elementorm
. Por exemplo:<rm> <resources> </resources> </rm>
- Preencha-o com recursos de acordo com os serviços que você quer criar. Por exemplo, aqui estão os recursos que estão para serem usados em um serviço Apache. Eles consistem de um recurso de sistema de arquivo (
fs
) e um recurso Apache (apache
).<rm> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="on" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> </rm>
O Exemplo 7.9, “Arquivocluster.conf
com Recursos Adicionados” exibe um exemplo de um arquivocluster.conf
com a seçãoresources
adicionada. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3"
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo no esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster. - Verifique que o arquivo de configuração atualizado foi propagado.
Exemplo 7.9. Arquivo cluster.conf
com Recursos Adicionados
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> </rm> </cluster>
7.5.2. Adicionar um Serviço de Cluster ao Cluster
- Abra o
/etc/cluster/cluster.conf
em qualquer nó do cluster. - Adicione uma seção
service
dentro do elementorm
para cada serviço. Por exemplo:<rm> <service autostart="1" domain="" exclusive="0" name="" recovery="restart"> </service> </rm>
- Configure os seguintes parâmetros (atributos) no elemento
service
:autostart
— Especifica se faz inicialização automática do serviço quando o cluster inicia. Use '1' para ativar e '0' para desativar; o padrão é ativado.domain
— Especifica um domínio de failover (se requerido).exclusive
— Especifica uma política onde o serviço somente roda em nós que não possuem outros serviços rodando neles.recovery
— Especifica uma política de recuperação para o serviço. As opções são realocar, reiniciar ou desabilitar o serviço.
- Dependendo do tipo de recursos que você quer usar, preencha o serviço com recursos globais ou serviços especificos.Por exemplo, aqui está um serviço Apache que usa recursos globais:
<rm> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> </rm>
Por exemplo, aqui está um serviço Apache que usa recursos de serviços especificos:<rm> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm>
O Exemplo 7.10, “cluster.conf
com Serviços Adicionados. Um usando Recursos Globais e Um usando Recursos de Serviços Especificos ” exibe um exemplo de arquivocluster.conf
com dois serviços:example_apache
— Este serviço usa os recursos globaisweb_fs
,127.143.131.100
, eexample_server
.example_apache2
— Este serviço usa os recursos de serviços especificosweb_fs2
,127.143.131.101
, eexample_server2
.
- Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo atualizado contra o esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster. - Verifique que o arquivo de configuração atualizado foi propagado.
- Siga para Seção 7.8, “Verificando uma Configuração”.
Exemplo 7.10. cluster.conf
com Serviços Adicionados. Um usando Recursos Globais e Um usando Recursos de Serviços Especificos
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm> </cluster>
7.6. Configurando o Protocolo de Anel Redundante
- Não especifique mais do que dois anéis.
- Cada anel deve utilizar o mesmo protocolo; não confunda IPv4 e IPv6.
- Caso seja necessário, você poderá especificar um endereço de multicast manualmente para o segundo anel. Se você especificar um endereço multicast para o segundo anel, tanto o endereço de multicast alternado quanto a porta alternada devem ser diferentes do endereço do multicast para o primeiro anel. Se você não especificar um endereço e multicast alternado, o sistema irá utilizar automaticamente um endereço de multicast diferente para o segundo anel.Se você especificar uma porta alternada, os números de porta do primeiro anel e o segundo anel devem se diferir por ao menos duas, pois o sistema usa a porta e porta -1 para realizar operações.
- Não use duas interfaces diferentes no mesmo subnet.
- Em geral, é uma boa prática configurar o protocolo do anel redundante em dois NICs diferentes e em dois interruptores, no caso de um NIC ou um interruptor falhar.
- Não use o comando
ifdown
ou o comandoservice network stop
para simular uma falha de rede. Isto destrói todo o cluster e requer que você reinicie todos os nós no cluster para recuperar. - Não use o
NetworkManager
, pois ele irá executar o comandoifdown
se o cabo não estiver desligado. - Quando um nó de um NIC falha, todo o anel é marcado como falho.
- Na intervenção manual, é necessário recuperar um anel falho. Para recuperar, você precisa somente reparar a razão original para a falha, tal como um NIC ou interruptor falho.
altname
à seção clusternode
do arquivo de configuração cluster.conf
. Quando especificar um altname
, especifique um atributo de name
para indicar um segundo nome de host ou um endereço IP para o nó.
clusternet-node1-eth2
como um nome alternativo para o nó de cluster clusternet-node1-eth1
.
<cluster name="mycluster" config_version="3" > <logging debug="on"/> <clusternodes> <clusternode name="clusternet-node1-eth1" votes="1" nodeid="1"> <fence> <method name="single"> <device name="xvm" domain="clusternet-node1"/> </method> </fence> <altname name="clusternet-node1-eth2"/> </clusternode>
altname
dentro do bloco clusternode
não é uma posição dependente. Ele pode vir antes ou depois da seção fence
. Não especifique mais do que um componente altname
para um nó de cluster ou o sistema irá falhar ao iniciar.
altmulticast
na seção cman
do arquivo de configuração cluster.conf
. O componente altmulticast
aceita um parâmetro addr
, um port
, e um ttl
.
cman
de um arquivo de configuração de cluster que define um endereço de multicast, porta, e TTL para o segundo anel.
<cman> <multicast addr="239.192.99.73" port="666" ttl="2"/> <altmulticast addr="239.192.99.88" port="888" ttl="3"/> </cman>
7.7. Configuração das Opções de Depuração
/etc/cluster/cluster.conf
. Por padrão, o logging é direcionado para o arquivo /var/log/cluster/daemon.log
.
<cluster config_version="7" name="rh6cluster"> <logging debug="on"/> ... </cluster>
/etc/cluster/cluster.conf
. A configuração de logging per-daemon sobrescreve as configurações globais.
<cluster config_version="7" name="rh6cluster"> ... <logging> <!-- turning on per-subsystem debug logging --> <logging_daemon name="corosync" debug="on" /> <logging_daemon name="fenced" debug="on" /> <logging_daemon name="qdiskd" debug="on" /> <logging_daemon name="rgmanager" debug="on" /> <logging_daemon name="dlm_controld" debug="on" /> <logging_daemon name="gfs_controld" debug="on" /> </logging> ... </cluster>
cluster.conf
(5).
7.8. Verificando uma Configuração
- Em cada nó, reinicie o software de cluster. Esta ação garante que quaisquer adições de configuração que estào marcadas somente no momento de inicialização são incluidas da configuração de execução. Você pode reiniciar o software de cluster rodando
service cman restart
. Por exemplo:[root@example-01 ~]#
service cman restart
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] - Execute o
service clvmd start
, so o CLVM estiver sendo usado para criar volumes clusterizados. Por exemplo:[root@example-01 ~]#
service clvmd start
Activating VGs: [ OK ] - Rode o
service gfs2 start
, se você estiver configurando o Red Hat GFS2. Por exemplo:[root@example-01 ~]#
service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] - Rode o
service rgmanager start
, se você estiver usando os serviços de Alta Disponibilidade. Por exemplo:[root@example-01 ~]#
service rgmanager start
Starting Cluster Service Manager: [ OK ] - Em qualquer nó no cluster, rode o
cman_tools nodes
para verificar que os nós estão funcionando como membros no cluster (mostrados como "M" na coluna de estado "Sts"). Por exemplo:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com 3 M 544 2010-09-28 10:52:21 node-03.example.com - Em qualquer nó, usando o utilitário
clustat
, verifique que os serviços de Alta Disponibilidade estão rodando conforme esperados. Além disso, oclustat
, exibe o estado dos nós do cluster. Por exemplo:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-03.example.com 3 Online, rgmanager node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled - Se o cluster estiver rodando conforme esperado, você terminou de criar um arquivo de configuração. Você pode gerenciar o cluster com as ferramentas de linha de comando descritas no Capítulo 8, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com Ferramentas da Linha de Comando..
Capítulo 8. Gerenciando o Complemento de Alta Disponibilidade da Red Hat com Ferramentas da Linha de Comando.
Importante
Importante
cluster.conf
comumente usados. Para uma lista compreensiva e a descrição dos elementos e atributos do cluster.conf
, consulte o esquema de cluster em /usr/share/cluster/cluster.rng
e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
Importante
cman_tool version -r
para propagar a configuração do cluster através de um cluster. O uso deste comando requer que o ricci
esteja em execução.
Nota
8.1. Iniciar e Parar o Software de Cluster
8.1.1. Iniciar o Software do Cluster
service cman start
service clvmd start
, Se o CLVM foi usado para criar volumes clusterizadosservice gfs2 start
, Se você estiver usando o Red Hat GFS2service rgmanager start
, se você estiver usando os serviços de alta disponibilidade (HA) (rgmanager
).
[root@example-01 ~]#service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]#
8.1.2. Parando um Software de Cluster
service rgmanager stop
, se você estiver usando os serviços de alta disponibilidae (HA) (rgmanager
).service gfs2 stop
, se você estiver usando o Red Hat GFS2umount -at gfs2
, se você estiver usando o Red Hat GFS2 em conjunto com orgmanager
, para certificar que quaisquer arquivos GFS2 montados durante a inicialização dorgmanager
(mas não desmontados durante o desligamento) foram também desmontados.service clvmd stop
, se o CLVM foi usado para criar volumes clusterizadosservice cman stop
[root@example-01 ~]#service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#umount -at gfs2
[root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]#
Nota
8.2. Deletando ou Adicionando um Nó
8.2.1. Deletar um Nó de um Cluster
Importante
- Em qualquer nó, use o utilitário
clusvcadm
para realocar, migrar ou parar cada serviço de Alta Disponibilidade em execução no nó que está sendo excluído do cluster. Para informações sobre usar oclusvcadm
, consulte a Seção 8.3, “Gerenciando Serviços de Alta Disponibilidade”. - No nó a ser deletado do cluster, pare o software de cluster de acordo com a Seção 8.1.2, “Parando um Software de Cluster”. Por exemplo:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Em qualquer nó no cluster, edite o
/etc/cluster/cluster.conf
para remover a seção do nó que será deletado. Por exemplo, no Exemplo 8.1, “Configuração de Cluster de Três Nós”, se o node-03.example.com é suposto a ser removido, então delete a seçãoclusternode
para esse nó. Se remover um nó (ou nós) fizer que o cluster seja um cluster de dois nós, você pode adicionar a seguinte linha ao arquivo de configuração para permitir que um nó único mantenha quorum (por exemplo, se um nó falhar):<cman two_node="1" expected_votes="1"/>
Consulte a Seção 8.2.3, “Exemplos de Configurações de Três e Dois Nós” para comparação entre uma configuração de três nós e uma de dois nós. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo atualizado contra o esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster. - Verifique que o arquivo de configuração atualizado foi propagado.
- Se a contagem de nós foi alterada de um número maior de dois nós para dois nós, você deve reinicializar o software do cluster conforme se segue:
- Em cada nó, pare o software do cluster de acordo com a Seção 8.1.2, “Parando um Software de Cluster”. Por exemplo:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Em cada nó, inicie o software de cluster de acordo com a Seção 8.1.1, “Iniciar o Software do Cluster”. Por exemplo:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]# - Em qualquer nó no cluster, rode o
cman_tools nodes
para verificar que os nós estão funcionando como membros no cluster (mostrados como "M" na coluna de estado "Sts"). Por exemplo:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com - Em qualquer nó, usando o utilitário
clustat
, verifique que os serviços de Alta Disponibilidade estão rodando conforme esperados. Além disso, oclustat
, exibe o estado dos nós do cluster. Por exemplo:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled
8.2.2. Adicionando um Nó ao um Cluster
- Em qualquer nó no cluster, edite o
/etc/cluster/cluster.conf
para adicionar uma seçãoclusternode
para o nó a ser adicionado. Por exemplo, no Exemplo 8.2, “Configuração de Cluster de Dois Nós” se o node-03.example.com devesse ser adicionado, então adicione uma seçãoclusternode
para o nó. Se adicionar um nó (ou nós) causa uma transição de um cluster de dois nós para um cluster com três nós ou mais, remova os seguintes atributoscman
do/etc/cluster/cluster.conf
:cman two_node="1"
expected_votes="1"
Consulte a Seção 8.2.3, “Exemplos de Configurações de Três e Dois Nós” para comparação entre uma configuração de três nós e uma de dois nós. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - (Opcional) Valide o arquivo atualizado contra o esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Rode o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster. - Verifique que o arquivo de configuração atualizado foi propagado.
- Propague o arquivo de configuração atualizado no
/etc/cluster/
em cada nó a ser adicionado ao cluster. Por exemplo, use o comandoscp
para enviar o arquivo de configuração atualizado a cada nó a ser adicionado ao cluster. - Se a contagem de nó do cluster mudou de dois nós para um número maior de dois nós, você deve reiniciar o software do cluster no nó existente do cluster conforme a seguir:
- Em cada nó, pare o software do cluster de acordo com a Seção 8.1.2, “Parando um Software de Cluster”. Por exemplo:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Em cada nó, inicie o software de cluster de acordo com a Seção 8.1.1, “Iniciar o Software do Cluster”. Por exemplo:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]#
- Em cada nó a ser adicionado ao cluster, inicie o software de cluster de acordo com a Seção 8.1.1, “Iniciar o Software do Cluster”. Por exemplo:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]# - Em qualquer nó, usando o utilitário
clustat
, verifique que cada nó adicionado está rodando e é parte do cluster. Por exemplo:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-03.example.com 3 Online, rgmanager node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabledPara informações sobre usar oclustat
, consulte a Seção 8.3, “Gerenciando Serviços de Alta Disponibilidade”.Além disso, você pode usar ocman_tool status
para verificar os votos do nós e contagem de quorum. Por exemplo:[root@example-01 ~]#
cman_tool status
Version: 6.2.0 Config Version: 19 Cluster Name: mycluster Cluster Id: 3794 Cluster Member: Yes Cluster Generation: 548 Membership state: Cluster-Member Nodes: 3 Expected votes: 3 Total votes: 3 Node votes: 1 Quorum: 2 Active subsystems: 9 Flags: Ports Bound: 0 11 177 Node name: node-01.example.com Node ID: 3 Multicast addresses: 239.192.14.224 Node addresses: 10.15.90.58 - Em qualquer nó, você pode usar o utilitário
clusvcadm
para migrar ou realocar um serviço em execução ao nó recém unido. Também, você pode habilitar quaisquer serviços desabilitados. Para informações sobre usar oclusvcadm
, consulte a Seção 8.3, “Gerenciando Serviços de Alta Disponibilidade”
8.2.3. Exemplos de Configurações de Três e Dois Nós
Exemplo 8.1. Configuração de Cluster de Três Nós
<cluster name="mycluster" config_version="3"> <cman/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm> </cluster>
Exemplo 8.2. Configuração de Cluster de Dois Nós
<cluster name="mycluster" config_version="3"> <cman two_node="1" expected_votes="1"/> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> </failoverdomain> </failoverdomains> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm> </cluster>
8.3. Gerenciando Serviços de Alta Disponibilidade
clustat
e o Utilitário de Administração de Serviço de Usuários do Cluster, clusvcadm
. O clustat
exibe o estado de um cluster e o clusvcadm
fornece os meios para gerenciar os serviços de alta disponibilidade.
clustat
e o clusvcadm
. Ela consiste das seguintes subseções:
8.3.1. Exibindo o Estado de Serviços de Alta Disponibilidade com o clustat
.
clustat
exibe o estado inteiro do cluster. Ele mostra informações de afiliação, vizualização de quorum, o estado de todos os serviços de alta disponibilidade e indica qual nó o comando clustat
está sendo rodado (local). A Tabela 8.1, “Estados dos Serviços” descreve os estados que os serviços podem estar e são exibidas quando executar o clustat
. O Exemplo 8.3, “Exibição do clustat
” exibe um exemplo de uma exibição do clustat
. Para informações mais detalhadas sobre rodar o comando clustat
consulte a página man clustat
.
Tabela 8.1. Estados dos Serviços
Estados dos Serviços | Descrição |
---|---|
Started (Iniciado) | Os recursos do serviço estão configurados e disponíveis no sistema de cluster que possui o serviço. |
Recovering (Recuperação) | Os serviço está pendente para iniciar em outro nó. |
Disabled (Desabilitado) | O serviço foi desabilitado e não possui um proprietário atribuído. Um serviço desabilitado nunca é reinicializado automaticamente pelo cluster. |
Stopped (Parado) | No estado parado, o serviço será avaliado para iniciar depois do próximo serviço ou transição de nó. Este é um estado temporário. Você pode desabilitar ou habilitar o serviço deste estado. |
Failed (Falhado) | O serviço é pressuposto como morto. Um serviço é colocado neste estado toda vez que uma operação de parar recurso falha. Depois que um serviço é colocado neste estado, você deve verificar que não há recursos alocados (sistemas de arquivos montados por exemplo) antes de emitir um pedido de desabilitação. A única operação que pode tomar lugar quando um serviço tiver entrado neste estado é a disable . |
Uninitialized (Não inicializado) | Este estado pode aparecer em certos casos durante a inicialização e execução do clustat -f . |
Exemplo 8.3. Exibição do clustat
[root@example-01 ~]#clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:15 2010
Member Status: Quorate
Member Name ID Status
------ ---- ---- ------
node-03.example.com 3 Online, rgmanager
node-02.example.com 2 Online, rgmanager
node-01.example.com 1 Online, Local, rgmanager
Service Name Owner (Last) State
------- ---- ----- ------ -----
service:example_apache node-01.example.com started
service:example_apache2 (none) disabled
8.3.2. Gerenciando Serviços de Alta Disponibilidade com o clusvcadm
clusvcadm
. Com ele você pode realizar as seguintes operações:
- Habilitar e iniciar um serviço.
- Desabilitar um serviço.
- Parar um serviço.
- Congelar um serviço
- Descongelar um serviço
- Migrar um serviço (somente para serviços de máquinas virtuais)
- Realocar um serviço.
- Reiniciar um serviço.
clusvcadm
.
Tabela 8.2. Operações dos Serviços
Operação de Serviço | Descrição | Sintaxe de Comando |
---|---|---|
Enable (Habilitar) | Inicie o serviço, opcionalmente em um alvo preferido e opcionalmente de acordo com regras de domínio de failover. Na falta de ambos, a máquina local onde o clusvcadm está sendo executado, inicializará o serviço. Se a inicialização original falhar, o serviço se comporta como se uma operação de realocação fosse solicitada (consulte Realocar nesta tabela). Se a operação é bem sucedida, o serviço é colocado no estado de inicializado. | clusvcadm -e <service_name> ou clusvcadm -e <service_name> -m <member> (Usando a opção -m especifica o membro alvo preferido no qual iniciará o serviço.) |
Disable (Desabilitar) | Pára o serviço e coloca em um estado desabilitado. Esta é a única operação permissiva quando um serviço está em um estado de falha. | clusvcadm -d <service_name> |
Relocate (Realocar) | Move o serviço para outro nó. Opcionalmente, você pode especificar um nó preferido para receber o serviço, mas a inabilidade do serviço de executar neste host (por exemplo, se o serviço falha em iniciar ou o host estiver offline) não previne a realocação e um outro nó é escolhido. O rgmanager tenta iniciar o serviço em cada nó permissível no cluster. Se nenhum nó alvo permissível no cluster iniciar o serviço com sucesso, a realocação falha e o serviço é tentado a ser iniciado no proprietário original. Se o proprietário original não pode reiniciar o serviço, o serviço é colocado em um estado parado. | clusvcadm -r <service_name> or clusvcadm -r <service_name> -m <member> (Usando a opção -m especifica o membro alvo preferido no qual o serviço inicia.) |
Stop (Parar) | Pára o serviço e o coloca no estado parado. | clusvcadm -s <service_name> |
Freeze (Congelar) | Congela um serviço no nó onde está rodando atualmente. Isto previne a verificação de estado do serviço tanto quanto um failover no evento do nó falhar ou o rgmanager estiver parado. Isto pode ser usado para suspender um serviço para permitir manutenção de recursos subjacentes. Consulte “Considerações para Usar as Operações de Congelar (Freeze) e Descongelar (Unfreeze)” para informações importantes sobre usar as operações de freeze e unfreeze. | clusvcadm -Z <service_name> |
Unfreeze (Descongelar) | Descongelar tira o serviço do estado congelado. Isto rehabilita a verificação do estado. Consulte “Considerações para Usar as Operações de Congelar (Freeze) e Descongelar (Unfreeze)” para informações importantes sobre o uso do freeze (congelar) e unfreeze (descongelar). | clusvcadm -U <service_name> |
Migrate (Migrar) | Migrar uma máquina virtual para um outro nó. Você deve especificar um nó alvo. Dependendo da falha, a falha para migrar pode resultar na máquina virtual no estado de falha ou no estado iniciado no proprietário original. | clusvcadm -M <service_name> -m <member> Importante
Para a operação de migrar, você deve especificar um nó alvo usando a opção -m <member> .
|
Restart (Reiniciar) | Reiniciar um serviço no nó onde ele está rodando atualmente. | clusvcadm -R <service_name> |
8.3.2.1. Considerações para Usar as Operações de Congelar (Freeze) e Descongelar (Unfreeze)
rgmanager
. Por exemplo, se você tiver um banco de dados e um servidor web em um serviço rmanager
, você pode congelar o serviço rgmanager
, parar o banco de dados, realizar manutenção, reiniciar o banco de dados e descongelar o serviço.
- Verificação do Estado são desabilitados.
- Operações de Iniciar são desabilitadas.
- Operações de Parar são desabilitadas.
- O Failover não ocorrerá (mesmo se você desligar o proprietário do serviço).
Importante
- Você não deve parar todas as instâncias do rgmanager quando um serviço estiver congelado a menos que você planeje reinicializar os hosts antes de reiniciar o rgmanager.
- Você não deve descongelar um serviço até que o proprietário do serviço reingresse no cluster e reinicie o rgmanager.
8.4. Atualizando uma Configuração
/etc/cluster/cluster.conf
) e propaga-lo a cada nó no cluster. Você pode atualizar a configuração usando quaisquer dos seguintes procedimentos:
8.4.1. Atualizando uma Configuração Usando o cman_tool version -r
cman_tool version -r
, realize os seguintes passos:
- Em qualquer nó no cluster, edite o arquivo
/etc/cluster/cluster.conf
. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - Execute o comando
cman_tool version -r
para propagar a configuração ao resto dos nós no cluster. É necessário que oricci
esteja rodando em cada nó no cluster para ser capaz de propagar a informação de configuração do cluster atualizada. - Verifique que o arquivo de configuração atualizado foi propagado.
- Você pode pular este passo (reiniciar o software de cluster) se você fez somente as seguintes mudanças na configuração:
- Deletar um nó de uma configuração de cluster — exceto onde a contagem de nós mudar para um número maior de dois para dois nós. Para informações sobre deletar um nó em um cluster e alterar de um número maior de dois nós para dois nós, consulte Seção 8.2, “Deletando ou Adicionando um Nó”.
- Adicionar um nó às configurações do cluster — exceto onde a contagem do nó muda de um número maior de dois nós para dois nós. Para informações sobre como adicionar um nó a um cluster em uma transição do dois nós para um número maior que dois nós, consulte a Seção 8.2.2, “Adicionando um Nó ao um Cluster”.
- Mudanças em como o daemons registra as informações de log.
- Serviço HA/Manutenção VM (adicionar, editar ou deletar).
- Manutenção de Recursos (adicionar, editar ou deletar).
- Manutenção de Domínio de Failover (adicionar, editar ou deletar).
De outra maneira, você deve reiniciar o software de cluster conforme a seguir:- Em cada nó, pare o software do cluster de acordo com a Seção 8.1.2, “Parando um Software de Cluster”. Por exemplo:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Em cada nó, inicie o software de cluster de acordo com a Seção 8.1.1, “Iniciar o Software do Cluster”. Por exemplo:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]#Parar e iniciar o software de cluster certifica que qualquer mudança de configuração que são verificadas somente na hora da inicialização são incluídas na configuração em execução.
- Em qualquer nó no cluster, rode o
cman_tools nodes
para verificar que os nós estão funcionando como membros no cluster (mostrados como "M" na coluna de estado "Sts"). Por exemplo:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com 3 M 544 2010-09-28 10:52:21 node-03.example.com - Em qualquer nó, usando o utilitário
clustat
, verifique que os serviços de Alta Disponibilidade estão rodando conforme esperados. Além disso, oclustat
, exibe o estado dos nós do cluster. Por exemplo:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-03.example.com 3 Online, rgmanager node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled - Se o cluster estiver em execução conforme esperado, você terminou a atualização da configuração.
8.4.2. Atualizar a Configuração Usando o scp
scp
, realize os seguintes passos:
- Em cada nó, pare o software do cluster de acordo com a Seção 8.1.2, “Parando um Software de Cluster”. Por exemplo:
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Em qualquer nó no cluster, edite o arquivo
/etc/cluster/cluster.conf
. - Atualize o atributo
config_version
incrementando seu valor (por exemplo, mudando deconfig_version="2"
paraconfig_version="3">
). - Salve o
/etc/cluster/cluster.conf
. - Valide o arquivo atualizado no esquema de cluster (
cluster.rng
) rodando o comandoccs_config_validate
. Por exemplo:[root@example-01 ~]#
ccs_config_validate
Configuration validates - Se o arquivo atualizado é válido, use o comando
scp
para propaga-lo no/etc/cluster/
em cada nó no cluster. - Verifique que o arquivo de configuração atualizado foi propagado.
- Em cada nó, inicie o software de cluster de acordo com a Seção 8.1.1, “Iniciar o Software do Cluster”. Por exemplo:
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]# - Em qualquer nó no cluster, rode o
cman_tools nodes
para verificar que os nós estão funcionando como membros no cluster (mostrados como "M" na coluna de estado "Sts"). Por exemplo:[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com 3 M 544 2010-09-28 10:52:21 node-03.example.com - Em qualquer nó, usando o utilitário
clustat
, verifique que os serviços de Alta Disponibilidade estão rodando conforme esperados. Além disso, oclustat
, exibe o estado dos nós do cluster. Por exemplo:[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-03.example.com 3 Online, rgmanager node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled - Se o cluster estiver em execução conforme esperado, você terminou a atualização da configuração.
Capítulo 9. Diagnosticando e Corrigindo Problemas em um Cluster
9.1. Mudança de configuração Não é efetuada
- Quando você configurar um cluster utilizando o Conga, Conga propaga as mudanças automaticamente quando você aplica as mudanças.
- Para informações sobre como propagar mudanças na configuração do cluster com o comando
ccs
, veja Seção 5.15, “Propagar o Arquivo de Configuração aos Nós do Cluster”. - Para informações sobre como propagar mudanças na configuração do cluster com as ferramentas de linha de comando, consulte a Seção 8.4, “Atualizando uma Configuração”.
- Deletar um nó de uma configuração de cluster — exceto onde a contagem de nós mudar para um número maior de dois para dois nós.
- Adicionar um nó às configurações do cluster — exceto onde a contagem do nó muda de um número maior de dois nós para dois nós.
- Mudança de configuração de autenticação
- Adicionando, editando ou removendo os serviços de HA ou componentes VM.
- Adicionando, editando, ou removendo recursos de cluster
- Adicionando, editando ou removendo domínios de failover.
- Adicionando ou removendo a opção
two_node
do arquivo de configuração do cluster. - Renomeando o Cluster.
- Modificando qualquer
corosync
ou timers deopenais
. - Adicionando, mudando ou removendo heurísticos para disco de quorum, modificando qualquer timers de disco de quorum, ou modificando o dispositivo de disco de quorum. Para que estas mudanças sejam efetuadas, é necessário um reinício global do daemon do
qdiskd
. - Mudando do modo
central_processing
parargmanager
.Para que esta mudança tome efeito, é necessário um reinício global dorgmanager
. - Modificando o endereço multicast
- Mudando o modo de transporte de UDP multicast para UDP unicast, ou mudando de UDP unicast para UDP multicast.
ccs
ou as ferramentas de linha de comando.
- Para informações sobre como reiniciar um cluster com o usar o Conga, consulte o Seção 4.4, “Iniciando, Parando, Reinicializando e Deletando Clusters”.
- Para informações sobre como reiniciar um cluster com o comando
ccs
command, refer to Seção 6.2, “Iniciando e Parando um Cluster”. - Para informações sobre como reiniciar um cluster com as ferramentas de linha de comando, consulte a Seção 8.1, “Iniciar e Parar o Software de Cluster”.
9.2. O Cluster não se forma
- Certifique-se que você possui uma resolução de nomes configurados corretamente. O nó do cluster no arquivo
cluster.conf
deve corresponder ao nome usado para resolver esse endereço de cluster na rede em que o cluster estará usando para se comunicar. Por exemplo, se os nomes dos nós de seu cluster sãonodea
enodeb
certifique-se que ambos os nós tenham entradas nos arquivos/etc/cluster/cluster.conf
e/etc/hosts
que correspondam a esses nomes. - Se o cluster usa o multicast para comunicação entre os nós, assegure-se de que o tráfego do multicast não está sendo bloqueado, atrasado ou de outra maneira interferido na rede em que o cluster está usando para se comunicar. Note que alguns switches Cisco possuem recursos que podem causar atrasos em tráfego multicast.
- Use
telnet
ouSSH
para verificar que você pode alcançar nós remotos. - Execute o comando
ethtool eth1 | grep link
para checar se o link ethernet está ativo. - Use o comando
tcpdump
em cada nó para checar o tráfego de rede. - Certifique-se que você não possui regras de firewall bloqueando a comunicação entre seus nós.
- Certifique-se de que as interfaces que o cluster utiliza para uma comunicação entre nós, não está utilizando qualquer modo de vínculo a não ser o 0, 1 e 2. (Os modos de vínculo 0 e 2 são suportados desde o Red Hat Enterprise Linux 6.4).
9.3. Os Nós estão Incapazes de se Juntar ao Cluster depois de um Fence ou Reinicialização
- Clusters que estão passando seu tráfego por um switch Cisco Catalyst podem ter este problema.
- Certifique-se que todos os nós do cluster possuem a mesma versão do arquivo
cluster.conf
. Se o arquivocluster.conf
for diferente em qualquer um dos nós, então os nós podem ser incapazes de se ligar ao cluster após um fence.A partir do lançamento do Red Hat Enterprise 6.1, você pode usar o seguinte comando para verificar que todos os nós especificados no arquivo de configuração de cluster no host possuem arquivos de configurações idênticos:ccs -h host --checkconf
Para informações sobre o comandoccs
, veja o Capítulo 5, Configurando o Complemento de Alta Disponibilidade da Red Hat com o comando ccs e o Capítulo 6, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs. - Certifique-se que você tenha configurado o
chkconfig on
para serviços de cluster no nó que está tentando se ligar ao cluster. - Certifique-se que não há regras de firewall bloqueando o nó de se comunicar com outros nós no cluster.
9.4. O daemon do Cluster trava
rgmanager
falha inesperadamente. Isto faz com que o nó de cluster seja preso em um fence e que o rgmanager
recupere o serviço em outra máquina. Quando o daemon do watchdog detecta que o processo principal do rgmanager
travou, ele então reinicializa o nó de cluster, e os nós de cluster ativos irão detectar que o nó de cluster saiu e irá retirá-lo do cluster.
gcore
pode ajudar na solução de problemas de um daemon travado.
rgmanager
e rgmanager-debuginfo
são da mesma versão ou o núcleo do aplicativo capturado pode estar em desuso.
$ yum -y --enablerepo=rhel-debuginfo install gdb rgmanager-debuginfo
9.4.1. Capturar o Núcleo rgmanager
durante o tempo de execução.
rgmanager
que estão em execução desde o início. Você precisa capturar o núcleo para que o processo do rgmanager
com o PID mais alto.
ps
mostrando dois processos para rgmanager
.
$ ps aux | grep rgmanager | grep -v grep root 22482 0.0 0.5 23544 5136 ? S<Ls Dec01 0:00 rgmanager root 22483 0.0 0.2 78372 2060 ? S<l Dec01 0:47 rgmanager
pidof
é usado para determinar automaticamente o pid com maior número, o qual é o pid apropriado para criar um núcleo. O comando completo capta o núcleo de aplicativo para o processo 22483 o qual possui o número de pid maior.
$ gcore -o /tmp/rgmanager-$(date '+%F_%s').core $(pidof -s rgmanager)
9.4.2. Capturando o Núcleo Quando o Daemon Travar
/etc/init.d/functions
bloqueia os arquivos núcleo dos daemons chamados de /etc/init.d/rgmanager
. Para que o daemon crie os núcleos de aplicativos, você precisa habilitar aquela opção. Este procedimento deve ser feito em todos os nós de cluster que precisarem de um núcleo de aplicativo capturado.
/etc/sysconfig/cluster
. O parâmetro DAEMONCOREFILELIMIT
permite que o daemon crie os arquivos centrais se o processo travar. Existe uma opção -w
que previne que o processo do watchdog seja executado. O daemon do watchdog é responsável por reinicializar o nó de cluster se o rgmanager
travar e em alguns casos, se o daemon do watchdog estiver em execução o arquivo central não será gerado, portanto deve ser desabilitado para capturar arquivos centrais.
DAEMONCOREFILELIMIT="unlimited" RGMGR_OPTS="-w"
service rgmanager restart
Nota
rgmanager
.
ls /core*
/core.11926
rgmanager
para capturar o núcleo do aplicativo. O nó de cluster que experienciava o travamento do rgmanager
deve ser reinicializado ou em fence após o núcleo ser capturado para certificar de que o processo do watchdog não estava em execução.
9.4.3. Gravando um gdb
Backtrace Session
gdb
, o Depurador do GNU. Para gravar uma sessão do script do gdb
no arquivo núcleo a partir do sistema afetado, execute o seguinte:
$ script /tmp/gdb-rgmanager.txt $ gdb /usr/sbin/rgmanager /tmp/rgmanager-.core.
gdb
, enquanto o script
a grava no arquivo texto adequado. Enquanto estiver no gdb
, execute os seguintes comandos:
(gdb) thread apply all bt full (gdb) quit
ctrl-D
para interromper a sessão do script e salvá-la no arquivo texto.
9.5. Suspensão de Serviços de Cluster
- O cluster pode ter tentado fazer um fence em um nó e a operação de fence pode ter falhado.
- Veja no arquivo
/var/log/messages
em todos os nós e veja se há qualquer mensagem de falha de fence. Se sim, então reinicialize os nós no cluster e configure o fence corretamente. - Verifique que a partição da rede não ocorreu, conforme descrito na Seção 9.8, “Cada Nó em um Cluster de Dois Nós Reporta que o Segundo Nó está Desativado”, e verifique que a comunicação entre os nós é possível e que a rede está ativa.
- Se os nós deixam um cluster, os nós restantes podem estar fora de quorum. O cluster necessita estar em quorum para operar. Se os nós são removidos de maneira que o cluster não está mais em quorum, então os serviços e armazenamento estarão suspensos. Tanto ajuste os votos esperados ou retorne a quantidade requerida de nós ao cluster.
Nota
fence_node
ou com o Conga. Para informações, veja a página man fence_node
e a Seção 4.3.2, “Faz um nó sair ou se juntar a um Cluster”.
9.6. O Serviço de Cluster não inicia
- Pode haver um erro de sintaxe na configuração do serviço no arquivo
cluster.conf
. Você pode usar o comandorg_test
para validar a sintaxe em sua configuração. Se existir qualquer falha na configuração ou na sintaxe, org_test
informará qual é o problema.$
rg_test test /etc/cluster/cluster.conf start service servicename
Para informações sobre o comandorg_test
veja a Seção C.5, “Depurando e Testando Serviços e Ordenação de Recursos”.Se a configuração estiver válida, então aumente o recurso de log do gerenciador de grupo e então leia as mensagens de log para determinar o que está causando a falha do início de serviço. Você pode aumentar o nível de log adicionando o parametrologlevel="7"
à tagrm
no arquivocluster.conf
. Você então terá uma verbosidade aumentada em seus logs de mensagens em relação aos serviços de início, parada e migração em clusters.
9.7. Serviços de Controle do Cluster falham na Migração
- Certifique-se que os recursos requeridos para rodar um serviço determinado estão presentes em todos os nós no cluster que podem ser requeridos para rodar tal serviço. Por exemplo, se seu serviço de cluster pressupõe que um arquivo de script está em uma determinada locação ou sistema de arquivo está montado em um determinado ponto de montagem, então você deve se certificar que aqueles recursos estão disponíveis nos respectivos lugares em todos os nós no cluster.
- Certifique-se que domínios failover, dependencia de serviços e exclusividade de serviços não estão configurados de tal maneira que você fique incapaz de migrar serviços à nós da maneira que você espera.
- Se o serviço em questão é um recurso de máquina virtual, cheque a documentação para assegurar que toda a configuração esteja correta e completa.
- Aumente o recurso de log do gerenciador de grupo, conforme descrito na Seção 9.6, “O Serviço de Cluster não inicia”, e então leia os logs de mensagens para determinar o que está causando a falha de migração do início de serviço.
9.8. Cada Nó em um Cluster de Dois Nós Reporta que o Segundo Nó está Desativado
9.9. Nós estão em Fence na Falha de Caminho do LUN
9.10. O Disco de Quorum Não Aparece como Membro do Cluster
- Certifique-se que você definiu o
chkconfig on
para o serviçoqdisk
. - Certifique-se que você iniciou o serviço
qdisk
. - Note que isso pode levar vários minutos para o disco de quorum se registrar com o cluster. Isto é normal e esperado.
9.11. Comportamento Incomum de Failover
9.12. Fencing ocorre Aleatóriamente
- O causador principal de fences é sempre um nó perdendo um token, significando que perdeu comunicação com o resto do cluster e parou de retornar pulsações.
- Qualquer situação que resulta em um sistema não retornar pulsações dentro de um intervalo específico de token pode resultar em um fence. Por padrão o intervalo de token é de 10 segundos. Isso pode ser especificado adicionando o valor desejado (em milisegundos) ao parametro de token no rótulo totem no arquivo
cluster.conf
(por exemplo, configurandototem token="30000"
para 30 segundos). - Certifique-se que a rede está rodando perfeitamente conforme esperado.
- Certifique-se de que as interfaces que o cluster utiliza para uma comunicação entre nós, não está utilizando qualquer modo de vínculo a não ser o 0, 1 e 2. (Os modos de vínculo 0 e 2 são suportados desde o Red Hat Enterprise Linux 6.4).
- Tome medidas para determinar se um sistema está "congelado" ou o kernel em pânico. Configure o utilitário
kdump
e veja se você recebe um núcleo durante um destes fences. - Certifique-se que você não está atribuindo o problema a um fence erroneamente, por exemplo o disco de quorum expulsando um nó devido a uma falha de armazenamento ou um produto de terceitos como Oracle RAC reinicializando um nó devido a uma condição externa. As mensagens de log são muitas vezes úteis para determinar tais problemas. Toda vez que uma reinicialização de fence ou nó ocorrer, isso deve ser uma prática padrão verificar as mensagens de log de todos os nós no cluster a partir do momento que o reboot/fence tiver ocorrido.
- Verifique completamente o sistema por falhas em hardware que podem levar sistemas a não responder às pulsações quando esperados.
9.13. Autenticação de Depug para o Gerenciador de Bloqueio Distribuído (DLM) Precisa ser Habilitada
/etc/cluster/cluster.conf
para adicionar as opções de configuração a marcação de dlm
. A opção log_debug
habilita as mensagens de depuração do kernel do DLM, e a opção plock_debug
habilita as mensagens de depuração de bloqueio do POSIX.
/etc/cluster/cluster.conf
exibe a marcação dlm
que permite ambas opções de depuração do DLM:
<cluster config_version="42" name="cluster1"> ... <dlm log_debug="1" plock_debug="1"/> ... </cluster>
/etc/cluster/cluster.conf
, execute o comando cman_tool version -r
para propagar a configuração ao resto dos nós no cluster.
Capítulo 10. Configuração do SNMP com Complemento de Alta Disponibilidade da Red Hat
10.1. O SNMP e o Complemento de Alta Disponibilidade da Red Hat
foghorn
, que emite traps SNMP. O sub agente foghorn
conversa com o daemon snmpd
por meios do protocolo AgentX. O sub agente foghorn
somente cria traps SNMP. Ele não suporta outras operações SNMP tais como get
ou set
.
config
para o sub agente foghorn
. Ele não pode ser configurado para usar soquetes específicos; somente o soquete padrão AgentX é atualmente suportado.
10.2. Configurando o SNMP com o Complemento de Alta Disponibilidade da Red Hat
- Para usar o SNMP traps com o Complemento de Alta Disponibilidade da Red Hat, o serviço
snmp
é requerido e age como um agente master. Já que o serviçofoghorn
é o sub agente e usa o protocolo AgentX, você deve adicionar a seguinte linha ao arquivo/etc/snmp/snmpd.conf
para habilitar o suporte AgentX:master agentx
- Para especificar o host onde as notificações do SNMP trap devem ser enviadas, adicione a seguinte linha ao arquivo
/etc/snmp/snmpd.conf
:trap2sink host
Para mais informações sobre manuseio de notificações, veja a página mansnmpd.conf
. - Certifique-se que o daemon
snmpd
está habilitado e rodando executando os seguintes comandos:#
chkconfig snmpd on
#service snmpd start
- Se o daemon
messagebus
não estiver já habilitado e rodando, execute os seguintes comandos:#
chkconfig messagebus on
#service messagebus start
- Certfique-se que o daemon
foghorn
está habilitado e rodando executando os seguintes comandos:#
chkconfig foghorn on
#service foghorn start
- Execute o seguinte comando para configurar seu sistema para que então o
COROSYNC-MIB
gere SNMP traps (sinais) e garanta que o daemoncorosync-notifyd
está habilitado e rodando:#
echo "OPTIONS=\"-d\" " > /etc/sysconfig/corosync-notifyd
#chkconfig corosync-notifyd on
#service corosync-notifyd start
foghorn
e traduzidos em SNMPv2 traps. Estas traps (sinais) são então passados para o host que você definiu com a entrada trapsink
para receber SNMPv2 traps (sinais).
10.3. Encaminhando SNMP traps
snmptrapd
na máquina externa e personalizar como responder às notificações.
- Para cada nó no cluster, siga o procedimento descrito na Seção 10.2, “Configurando o SNMP com o Complemento de Alta Disponibilidade da Red Hat”, definindo a entrada
trap2sink host
no arquivo/etc/snmp/snmpd.conf
para especificar o host externo que estará rodando o daemonsnmptrapd
. - No host externo que receberá os traps, edite o arquivo de configuração
/etc/snmp/snmptrapd.conf
para especificar suas strings da comunidade. Por exemplo, você pode usar a seguinte entrada para permitir que o daemonsnmptrapd
para processar notificações usando a string da comunidadepublic
.authCommunity log,execute,net public
- No host externo que receberá as traps, certifique-se que o daemon
snmptrapd
está habilitado e rodando executando os seguintes comandos:#
chkconfig snmptrapd on
#service snmptrapd start
snmptrapd.conf
.
10.4. SNMP Traps Produzidas pelo Complemento de Alta Disponibilidade da Red Hat
foghorn
gera as seguintes traps:
fenceNotifyFenceNode
Esta trap (sinal) ocorre quando um nó em fence tenta fazer um fence em outro nó. Note que esta trap é somente gerada em um nó -- o nó que tentou realizar a operação de fence. A notificação inclui os seguintes campos:fenceNodeName
- nome do nó em fencefenceNodeID
- id do nó em fencefenceResult
- o resultado da operação fence (0 para com sucesso, -1 para se algo deu errado, -2 para nenhum método de fence definido)
rgmanagerServiceStateChange
Esta trap ocorre quando o estado de um serviço de cluster muda. A notificação inclui os seguintes campos:rgmanagerServiceName
- o nome do serviço, que inclui o tipo do serviço (por exemplo,service:foo
ouvm:foo
).rgmanagerServiceState
- o estado do serviço. Isto exclui estados transitórios comostarting
estopping
para reduzir desordem nas traps.rgmanagerServiceFlags
- as flags (bandeiras) do serviço:frozen
, indicando que um serviço foi congelado usandoclusvcadm -Z
, epartial
, indicando que um serviço no qual um recurso com falha recebeu uma flag comonon-critical
para que então o recurso possa falhar e seus componentes reiniciados manualmente sem que o serviço inteiro seja afetado.rgmanagerServiceCurrentOwner
- o proprietário do serviço. Se o serviço não estiver rodando, ele será(none)
(nenhum).rgmanagerServicePreviousOwner
- o último dono do serviço, se conhecido. Se o último não é conhecido, poderá indicar(none)
(nenhum).
corosync-nodifyd
gera as seguintes traps:
corosyncNoticesNodeStatus
Esta trap (sinal) ocorre quando um nó se junta ou deixa um cluster. A notificação inclui os seguintes campos:corosyncObjectsNodeName
- nome do nócorosyncObjectsNodeID
- id do nócorosyncObjectsNodeAddress
- node endereço IPcorosyncObjectsNodeStatus
- estado do nó (joined
(se juntou) ouleft
(saiu))
corosyncNoticesQuorumStatus
Esta trap ocorre quando um estado quorum muda. A notificação inclui os seguintes campos:corosyncObjectsNodeName
- nome do nócorosyncObjectsNodeID
- id do nócorosyncObjectsQuorumStatus
- novo estado do quorum (quorate
(em quorum) ouNOT quorate
(sem quorum))
corosyncNoticesAppStatus
Esta trap ocorre quando uma aplicação cliente se conecta ou desconecta do Corosync.corosyncObjectsNodeName
- nome do nócorosyncObjectsNodeID
- id do nócorosyncObjectsAppName
- nome da aplicaçãocorosyncObjectsAppStatus
- novo estado da aplicação (connected
(conectado) oudisconnected
(desconectado))
Capítulo 11. Configurações do Samba em Cluster
Nota
11.1. Visão Geral do CTDB
11.2. Pacotes Requeridos
ctdb
samba
samba-common
samba-winbind-clients
11.3. Configuração de GFS2
/dev/csmb_vg/csmb_lv
, que irá manter os dados de usuário que serão exportados via compartilhamento do Samba e devem ser do tamanho ideal. Este exemplo cria um volume lógico de 100GB de tamanho./dev/csmb_vg/ctdb_lv
, que irão armazenar as informações do estado do CTDB compartilhado e precisa ter 1GB.
mkfs.gfs2
. Você executa este comando em somente um nó de cluster.
/dev/csmb_vg/csmb_lv
, execute o seguinte comando:
[root@clusmb-01 ~]# mkfs.gfs2 -j3 -p lock_dlm -t csmb:gfs2 /dev/csmb_vg/csmb_lv
-j
- Especifica o número de diários a criar no sistema de arquivo. Este exemplo usa um cluster com três nós, para que possamos criar um diário por nó.
-p
- Especifica o protocolo de bloqueio. O
lock_dlm
é o protocolo de bloqueio que o GFS2 usa para a comunicação entre nós. -t
- Especifica o nome da tabela de bloqueio e é de formato cluster_name:fs_name. Neste exemplo, o nome do cluster como especificado no arquivo
cluster.conf
écsmb
, e usamos ogfs2
como o nome para o sistema de arquivo.
This will destroy any data on /dev/csmb_vg/csmb_lv.
It appears to contain a gfs2 filesystem.
Are you sure you want to proceed? [y/n] y
Device:
/dev/csmb_vg/csmb_lv
Blocksize: 4096
Device Size 100.00 GB (26214400 blocks)
Filesystem Size: 100.00 GB (26214398 blocks)
Journals: 3
Resource Groups: 400
Locking Protocol: "lock_dlm"
Lock Table: "csmb:gfs2"
UUID:
94297529-ABG3-7285-4B19-182F4F2DF2D7
/dev/csmb_vg/csmb_lv
será montado em /mnt/gfs2
em todos os nós. Este ponto de montagem deve coincidir o valor que você especifica como o local do diretório de share
com a opção do path =
no arquivo /etc/samba/smb.conf
como descrito em Seção 11.5, “Configuração do Samba”.
/dev/csmb_vg/ctdb_lv
, execute o seguinte comando:
[root@clusmb-01 ~]# mkfs.gfs2 -j3 -p lock_dlm -t csmb:ctdb_state /dev/csmb_vg/ctdb_lv
/dev/csmb_vg/csmb_lv
. Isto difere dos nomes de tabela de bloqueio para dispositivos diferentes usados para o sistema de arquivo.
mkfs.gfs2
se assemelha a este abaixo:
This will destroy any data on /dev/csmb_vg/ctdb_lv.
It appears to contain a gfs2 filesystem.
Are you sure you want to proceed? [y/n] y
Device:
/dev/csmb_vg/ctdb_lv
Blocksize: 4096
Device Size 1.00 GB (262144 blocks)
Filesystem Size: 1.00 GB (262142 blocks)
Journals: 3
Resource Groups: 4
Locking Protocol: "lock_dlm"
Lock Table: "csmb:ctdb_state"
UUID:
BCDA8025-CAF3-85BB-B062-CC0AB8849A03
/dev/csmb_vg/ctdb_lv
será montado em /mnt/ctdb
em todos os nós. Este ponto de montagem deve coincidir o valor que você especifica como o local do diretório de .ctdb.lock
com a opção do CTDB_RECOVERY_LOCK
no arquivo /etc/sysconfig/ctdb
como descrito em Seção 11.4, “Configurações CTDB”.
11.4. Configurações CTDB
/etc/sysconfig/ctdb
. Os campos obrigatórios que precisam ser configurados para a operação do CTDB são estas a seguir:
CTDB_NODES
CTDB_PUBLIC_ADDRESSES
CTDB_RECOVERY_LOCK
CTDB_MANAGES_SAMBA
(deve ser habilitado)CTDB_MANAGES_WINBIND
(deve ser habilitado se estiver sendo executado em um sevidor de membro)
CTDB_NODES=/etc/ctdb/nodes CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses CTDB_RECOVERY_LOCK="/mnt/ctdb/.ctdb.lock" CTDB_MANAGES_SAMBA=yes CTDB_MANAGES_WINBIND=yes
CTDB_NODES
- Especifica o local do arquivo que contém a lista de nó de cluster.O arquivo
/etc/ctdb/nodes
onde oCTDB_NODES
referencia, simplesmente lista os endereços IP dos nós de cluster como se segue no exemplo:192.168.1.151 192.168.1.152 192.168.1.153
Neste exemplo, existe somente uma interface/IP em cada nó que seja usada para ambos clientes de comunicação e serviços do cluster/CTDB. Entretanto, é altamente recomendado que cada nó de cluster possua duas interfaces de rede para que um conjunto de interfaces possa ser dedicado a comunicação de cluster/CTDB e outro conjunto de interfaces possa ser dedicado ao acesso de cliente público. Use os endereços iP apropriados da rede de cluster aqui e certifique-se que os endereços de hostname/IP no arquivocluster.conf
sejam o mesmo. Da mesma forma, use as interfaces apropriadas de rede pública para acesso ao cliente no arquivopublic_addresses
.É crucial que o arquivo/etc/ctdb/nodes
seja idêntico em todos os nós porque a ordem é mais importante e o CTDB irá falhar se encontrar informações diferentes em nós diferentes. CTDB_PUBLIC_ADDRESSES
- Especifica o local do arquivo que lista os endereços IP que podem ser usados para acessar os compartilhamentos do Samba exportados pelo cluster. Estes são endereços IP que você de configurar no DNS para o nome do servidor Samba em cluster e são endereços que os clientes CIFS se conectarão. Configure o nome do servidor Samba em cluster como uma gravação tipo A de DNS com endereços IP múltiplos e deixe os DNS de repetição alternada distribuídos entre clientes nos nós de cluster.Para este exemplo, configuramos a entrada do DNS de repetição alternada
csmb-server
com todos os endereços listados no arquivo/etc/ctdb/public_addresses
. O DNS irá distribuir os clientes que utilizam esta entrda entre os clusters como repetição alternada.O conteúdo do arquivo/etc/ctdb/public_addresses
em cada nó segue abaixo:192.168.1.201/0 eth0 192.168.1.202/0 eth0 192.168.1.203/0 eth0
Este exemplo utiliza três endereços que estão em desuso atualmente na rede. Em sua própria configuração, escolha os endereços que podem ser acessados pelos clientes pretendidos.Como forma alternativa, este exemplo demonstra que o conteúdo dos arquivo/etc/ctdb/public_addresses
em um cluster no qual existem três nós mas um total de quatro endereços públicos.Neste exemplo o endereço IP 198.162.2.1 pode ser acomodado pelo nó 0 ou nó 1 e estará disponível aos clientes desde que ao menos um destes nós estejam disponíveis. Somente se ambos os nós 0 e 1 falharem, o endereço público se tornará indisponível aos clientes. Todos os outros endereços públicos podem ser servidos somente por um único nó respectivamente e estará disponível se o nó respectivo também estiver disponível.O arquivo/etc/ctdb/public_addresses
no nó 0 inclui o seguinte conteúdo:198.162.1.1/24 eth0 198.162.2.1/24 eth1
O arquivo/etc/ctdb/public_addresses
no nó 1 inclui o seguinte conteúdo:198.162.2.1/24 eth1 198.162.3.1/24 eth2
O arquivo/etc/ctdb/public_addresses
no nó 2 inclui o seguinte conteúdo:198.162.3.2/24 eth2
CTDB_RECOVERY_LOCK
- Especifica um arquivo de bloqueio que o CTDB utiliza internamente para a recuperação. Este arquivo deve residir em armazenamento compartilhado de tal forma que todos os nós de cluster possuam acesso à ele. O exemplo nesta seção utiliza o sistema de arquivo GFS2 que será montado em
/mnt/ctdb
em todos os nós. Isto é diferente do sistema de arquivo GFS2 que acomodará o compartilhamento do Samba que será exportado. Este arquivo de bloqueio de recuperação é utilizado para prevenir cenários de quebra de memória (split-brain). Com versões mais recentes do CTDB (1.0.112 e posteriores), especificar este arquivo é opcional desde que seja substituído por outro mecanismo de prevenção split-brain. CTDB_MANAGES_SAMBA
- Quando você habilitar utilizando a definição
yes
, especifique se o CTDB pode iniciar e interromper o serviço do Samba como deve para fornecer serviço de migração/failover.Quando oCTDB_MANAGES_SAMBA
estiver habilitado, você precisará desabilitar a inicialização automáticainit
dos daemonssmb
enmb
executando os seguintes comandos:[root@clusmb-01 ~]#
chkconfig snb off
[root@clusmb-01 ~]#chkconfig nmb off
CTDB_MANAGES_WINBIND
- Quando você habilitar utilizando a definição
yes
,especifique que o CTDB pode iniciar e interromper o daemonwinbind
como requerido. Isto deve ser habilitado quando você estiver utilizando CTDB em um domínio de Windows ou em um modo de segurança de diretório ativo.Quando oCTDB_MANAGES_SAMBA
estiver habilitado, você precisará desabilitar a inicialização automáticainit
dos daemonswinbind
executando o seguinte comando:[root@clusmb-01 ~]#
chkconfig windinbd off
11.5. Configuração do Samba
smb.conf
está localizado em /etc/samba/smb.conf
neste exemplo. Ele contém os parâmetros a seguir:
[global] guest ok = yes clustering = yes netbios name = csmb-server [csmb] comment = Clustered Samba public = yes path = /mnt/gfs2/share writeable = yes ea support = yes
csmb
localizado em /mnt/gfs2/share
. Isto é diferente do sistema de arquivo compartilhado GFS2 em /mnt/ctdb/.ctdb.lock
que especificamos como o parâmetro CTDB_RECOVERY_LOCK
no arquivo de configuração do CTDB /etc/sysconfig/ctdb
.
share
em /mnt/gfs2
quando montamos ele pela primeira vez. A entrada clustering = yes
instrui o Samba para utilizar o CTDB. A entrada netbios name = csmb-server
define explicitamente todos os nós para terem o nome do NetBIOS em comum. O parâmetro ea support
é necessário se você planejar utilizar atributos estendidos.
smb.conf
deve ser idêntico a todos os nós de cluster.
net conf
para manter a configuração automaticamente em sincronização entre os membros do cluster sem precisar copiar os arquivos de configuração entre os nós de cluster. Para informações sobre o comando net conf
consulte a página man do net
(8)
11.6. Iniciando o CTDB e os Serviços do Samba
share
e contas de usuário nos nós de cluster deve ser definido para acesso de clientes.
ctdbd
. Como este exemplo configurou o CTDB com CTDB_MANAGES_SAMBA=yes
, CTDB também iniciará o serviço Samba em todos os nós e exportará todas as partes do Samba configuradas.
[root@clusmb-01 ~]# service ctdb start
ctdb status
exibe o status do CTDB, como no exemplo a seguir:
[root@clusmb-01 ~]# ctdb status
Number of nodes:3
pnn:0 192.168.1.151 OK (THIS NODE)
pnn:1 192.168.1.152 OK
pnn:2 192.168.1.153 OK
Generation:1410259202
Size:3
hash:0 lmaster:0
hash:1 lmaster:1
hash:2 lmaster:2
Recovery mode:NORMAL (0)
Recovery master:0
11.7. Usando o Servidor Samba em Cluster
/etc/ctdb/public_addresses
ou utilizando a entrada do DNS csmb-server
que configuramos anteriormente, como exibido abaixo:
[root@clusmb-01 ~]# mount -t cifs //csmb-server/csmb /mnt/sambashare -o user=testmonkey
[user@clusmb-01 ~]$ smbclient //csmb-server/csmb
Apêndice A. Parâmetros de Dispositos Fence
ccs
ou editando o etc/cluster/cluster.conf
. Para uma lista compreensiva e descrição dos parâmetros de dispositivo do fence para cada agente fence, consulte a página man para aquele agente.
Nota
Nota
/etc/cluster/cluster.conf
).
Tabela A.1. Sumário de Dispositos Fence
fence_apc
, o agente do fence para APC sob telnet/SSH.
Tabela A.2. Switch de Energia APC (telnet/SSH)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo APC conectado ao cluster no qual o daemon faz um log via telnet/ssh. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para se conectar ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Power wait | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | TCP port |
Switch (opcional) | switch | O número do switch para o switch APC que se conecta ao nó quando você tiver múltiplos switches daisy-chained. |
Use SSH | secure | Indica que o sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
fence_apc_snmp
, o agente de fence para o APC que autentica no dispositivo SNP via protocolo SNMP.
Tabela A.3. APC Power Switch pelo SNMP
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome do dispositivo APC conectado ao cluster no qual o daemon fence faz logs via protocolo SNMP. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
UDP/TCP port | udpport | A porta UDP/TCP a ser usada para conexão com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A série da comunidade SNMP; o valor padrão é private . |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Número de Porta (Outlet) | port | TCP port |
fence_brocade
, o agente de fence para os interruptores Brocade FC.
Tabela A.4. Brocade Fabric Switch
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome para o dispositivo Brocade conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP atribuído ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Port | port | O número da saída do switch. |
fence_cisco_mds
, o agente de fence para o Cisco MDS.
Tabela A.5. Cisco MDS
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo Cisco MDS 9000 series com o SNMP habilitado. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
UDP/TCP port | udpport | A porta UDP/TCP a ser usada para conexão com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Número de Porta (Outlet) | port | TCP port |
Versão SNMP | snmp_version | A versão SNMP para usar (1, 2c, 3). |
Comunidade SNMP | comunidade | A séria da comunidade SNMP. |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
fence_cisco_ucs
, o agente de fence para Cisco UCS.
Tabela A.6. Cisco UCS
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome do dispositivo Cisco UCS. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP port (opcional) | ipport | A porta TCP a ser usada para se conectar ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Use SSH | ssl | A porta TCP a ser usada para uma conexão com o dispositivo. |
Sub-Organização | suborg | Caminho adicional necessário para acessar a suborganização. |
Número de Porta (Outlet) | port | Máquina Virtual |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
fence_drac5
, o agente de fence para o Dell DRAC 5.
Tabela A.7. Dell DRAC 5
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome atribuído para o DRAC. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao DRAC. |
IP Port (opcional) | ipport | A porta TCP a ser usada para se conectar ao dispositivo. |
Login | login | O nome de login usado para acessar o DRAC. |
Password | passwd | A senha usada para autenticar a conexão ao DRAC. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Use SSH | secure | Indica que um sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
Nome do Módulo | module_name | (opcional) O nome do módulo para o DRAC quando você tiver múltiplos módulos DRAC. |
Solicitação de comando de força | cmd_prompt | O prompt de comando a ser usado. O valor padrão é ’\$’. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
fence_eaton_snmp
, o agente do fence para o Eaton sob o interruptor de força da rede SNMP.
Tabela A.8. Eaton Network Power Controller (SNMP Interface) (Red Hat Enterprise Linux 6.4 e posteriores)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o interruptor de força da rede Eaton conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Porta UDP/TCP (opcional) | udpport | A porta UDP/TCP a ser usada para conexão com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A série da comunidade SNMP; o valor padrão é private . |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de energia (segundos) | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Número de Porta (Outlet) | port | Número do plug físico ou nome da máquina virtual. Este parâmetro é sempre necessário. |
fence_egenera
, agente de fence para o Egenera BladeFrame.
Tabela A.9. Egenera SAN Controller
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome para o dispositivo EGenera BladeFrame conectado ao cluster. |
CServer | cserver | O hostname (e opcionalmente o nome de usuário no formato username@hostname ) atribuído ao dispositivo. Consulte a página man fence_egenera(8) para maiores informações. |
ESH Path (opcional) | esh | O caminho do comando esh no cserver (padrão é /opt/pan- mgr/bin/esh) |
Nome de Usuário | usuário | O nome de login. O valor padrão é root . |
Ipan | lpan | A rede de área de processo lógico (LPAN) do dispositivo. |
pserver | pserver | O nome do processo blade (pserver) do dispositivo. |
fence_eps
, o agente de fence para ePowerSwitch.
Tabela A.10. ePowerSwitch
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo ePowerSwitch conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Nome da página Escondida | hidden_page | O nome da página escondida para o dispositivo. |
Número de Porta (Outlet) | port | Número de plug físico ou nome de uma máquina virtual. |
fence_virt
, o agente de fence para um dispositivo fence Fence virt.
Tabela A.11. Fence virt
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo Fence virt fence |
Dispositivo em Série | serial_device | No host, o dispositivo serial deve ser mapeado em cada arquivo de configuração de domínio. Para mais informações, veja a página man fence_virt.conf . Se este campo estiver especificado, ele faz que o agente fence fence_virt opere em modo serial. Sem especificar um valor fará o agente fence fence_virt operar no modo de canal VM. |
Parâmetros em Série | serial_params | Os parâmetros seriais. O padrão é 115200, 8N1. |
Endereço IP do Canal VM | channel_address | O canal IP. O valor padrão é 10.0.2.179. |
Porta ou Domínio (obsoleto) | port | Máquina Virtual (domínio UUID ou nome) para fazer fence. |
ipport | A porta do canal. O valor padrão é 1229, o qual é o valor usado ao configurar este dispositivo de fence com o luci. |
fence_rsb
, o agente do fence para Fujitsu-Siemens RSB.
Tabela A.12. Fujitsu Siemens Remoteview Service Board (RSB)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome para o RSB usar como um dispositivo fence. |
Endereço IP ou Hostname | ipaddr | O hostname atribuído ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Porta TCP | ipport | O número de porta no qual o serviço de telnet escuta. O valor padrão é 3172 |
fence_hpblade
, o agente de fence para os dispositivos HP BladeSystem.
Tabela A.13. HP BladeSystem (Red Hat Enterprise Linux 6.4 and later)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome atribuído ao dispositivo HP Bladesystem conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo HP BladeSystem. |
IP Port (opcional) | ipport | A porta TCP a ser usada para se conectar ao dispositivo. |
Login | login | O nome de login utilizado para acessar o dispositivo HP BladeSystem. Este parâmetro é requerido. |
Password | passwd | A senha utilizada para autenticar a conexão ao dispositivo do fence. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Solicitação de comando de força | cmd_prompt | O prompt de comando a ser usado. O valor padrão é ’\$’. |
Porta que está faltando retorna como OFF ao invés de falha. | missing_as_off | Porta que está faltando retorna como OFF ao invés de falha. |
Espera de Energia (segundos) | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Use SSH | secure | Indica que um sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
fence_ilo
, o agente de fence para os dispositivos HP iLO.
Tabela A.14. HP iLO/iLO2 (Integrated Lights Out)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o servidor com suporte HP iLO. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para uma conexão com o dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
fence_ilo_mp
, o agente de fence para os dispositivos HP iLO MP.
Tabela A.15. HP iLO (Integrated Lights Out) MP
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o servidor com suporte HP iLO. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para uma conexão com o dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Use SSH | secure | Indica que um sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
Solicitação de comando de força | cmd_prompt | O prompt de comando a ser usado. O valor padrão é ’MP>’, ’hpiLO->’. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
fence_bladecenter
, o agente de fence para o IBM BladeCenter.
Tabela A.16. IBM BladeCenter
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo IBM BladeCenter conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP port (opcional) | ipport | A porta TCP a ser usada para uma conexão com o dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Use SSH | secure | Indica que o sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
fence_ibmblade
, o agente de fence para o IBM BladeCenter sob SNMP.
Tabela A.17. IBM BladeCenter SNMP
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo IBM BladeCenter SNMP conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Porta UDP/TCP (opcional) | udpport | A porta UDP/TCP a ser usada para conexões com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A séria da comunidade SNMP. |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
SNMP privacy protocol password | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | Número de plug físico ou nome de uma máquina virtual. |
fence_ipdu
, o agente fence para o iPDU sobre dispositivos SNMP.
Tabela A.18. IBM iPDU (Red Hat Enterprise Linux 6.4 e posteriores)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | O nome para o dispositivo IBM iPDU conectado ao cluster no qual o daemon do fence se autentica via protocolo SNMP. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
UDP/TCP Port | udpport | A porta UDP/TCP a ser usada para conexão com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A série da comunidade SNMP; o valor padrão é private . |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O Protocolo de Autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | TCP port |
fence_ifmib
, o agente de fence para os dispositivos IF-MIB.
Tabela A.19. IF MIB
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo IF MIB conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Porta UDP/TCP (opcional) | udpport | A porta UDP/TCP a ser usada para conexão com o dispositivo; o valor padrão é 161. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A séria da comunidade SNMP. |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | Número de plug físico ou nome de uma máquina virtual. |
fence_intelmodular
, o agente de fence para o Intel Modular.
Tabela A.20. Intel Modular
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo Intel Modular conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Versão SNMP | snmp_version | A versão SNMP a ser usada (1, 2c, 3); o valor padrão é 1. |
Comunidade SNMP | comunidade | A série da comunidade SNMP; o valor padrão é private . |
Nível de segurança SNMP | snmp_sec_level | O nível de segurança SNMP (noAuthNoPriv, authNoPriv, authPriv). |
Protocolo de autenticação do SNMP | snmp_auth_prot | O protocolo de autenticação SNMP (MD5, SHA). |
Protocolo de privacidade do SNMP | snmp_priv_prot | O protocolo de privacidade SNMP (DES, AES). |
Senha do Protocolo de privacidade do SNMP | snmp_priv_passwd | A senha do protocolo de privacidade SNMP. |
Script do Protocolo de Privacidade SNMP | snmp_priv_passwd_script | O script que fornece uma senha para o protocolo de privacidade SNMP. Usando isto se substitui o parâmetro SNMP privacy protocol password. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | Número de plug físico ou nome de uma máquina virtual. |
fence_ipmilan
, o agente de fence para os dispositivos IPMI sob LAN.
Tabela A.21. IPMI (Intelligent Platform Management Interface) LAN
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo IPMI LAN conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
Login | login | O nome de login para um usuário ser capaz de emitir comando de ligar e desligar à porta IPMI dada. |
Password | passwd | A senha a ser usada para autenticar a conexão à porta IPMI. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Authentication Type | auth | IPMI LAN authentication type: none , password , or md5 . |
Use Lanplus | lanplus | True ou 1 . Se em branco, então o valor éFalse . |
Ciphersuite to use | cipher | A autenticação remota do servidor, intergridade e algorítmos de encriptação para usado para conexões IPMIv2 lanplus. |
Nível de Privilégio | privlvl | O nível de privilégio no dispositivo IPMI, |
fence_rhevm
, o agente de fence para o RHEV-M REST API.
Tabela A.22. RHEV-M REST API (RHEL 6.2 e posteriores em RHEV 3.0 e posteriores)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo de fence RHEV-M REST API |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para uma conexão com o dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Use SSH | ssl | A porta TCP a ser usada para uma conexão com o dispositivo. |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Port | port | Número de plug físico ou nome de uma máquina virtual. |
fence_scsi
, o agente de fence para as reservas persistentes do SCSI.
Nota
- Quando usar um fence SCSI, todos os nós no cluster devem se registrar com o os mesmos dispositivos para que cada nó possa remover a chave de registro de outros nós a partir de todos os dispositivos em que se está registrado.
- Dispositivos usados para os volumes de cluster devem ser um LUN completo, não partições. Reservas persistentes SCSI trabalham somente em um LUN inteiro, significando que o acesso é controlado para cada LUN, não partições individuais.
Tabela A.23. SCSI Fencing
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo SCSI fence |
Node name | | |
Chave para ação atual | | (sobrescreve o nome do nó) |
fence_vmware_soap
, o agente de fence para o VMWARE sob SOAP API.
Tabela A.24. Fencing do VMware (Interface SOAP) (Red Hat Enterprise Linux 6.2 e posterior)
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o dispositivo Fence virt fence |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuído ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para uma conexão com o dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Separador | separador | Separador para o CSV criado pela lista de operação. O valor padrão é uma vírgula (,). |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Nome VM | port | Nome da máquina virtual no formato de caminho do inventário (ex.: /datacenter/vm/Discovered_virtual_machine/myMachine). |
VM UUID | uuid | O UUID da máquina virtual para fazer o fence. |
Use SSH | ssl | A porta TCP a ser usada para uma conexão com o dispositivo. |
fence_wti
, o agente de fence para o interruptor de energia de rede WTI .
Tabela A.25. WTI Power Switch
Campo luci | Recursos cluster.conf | Descrição |
---|---|---|
Name | name | Um nome para o WTI power switch conectado ao cluster. |
Endereço IP ou Hostname | ipaddr | O endereço IP ou hostname atribuídos ao dispositivo. |
IP Port (opcional) | ipport | A porta TCP a ser usada para se conectar ao dispositivo. |
Login | login | O nome de login usado para acessar o dispositivo. |
Password | passwd | A senha usada para autenticar a conexão ao dispositivo. |
Password Script (opcional) | passwd_script | O script que fornece uma senha para acesso ao dispositivo de fence. Usando isto se substitui o parâmetro de Password. |
Port | port | Número de plug físico ou nome de uma máquina virtual. |
Force command prompt | cmd_prompt | O prompt de comando a ser usado. O valor padrão é [’RSM>’, ’>MPC’, ’IPS>’, ’TPS>’, ’NBB>’, ’NPS>’, ’VMR>’] |
Espera de Energia | power_wait | Número de segundos para esperar depois de emitir um comando de ligar ou desligar. |
Use SSH | secure | Indica que o sistema usará o SSH para acessar o dispositivo. |
Caminho para identificar o arquivo SSH | identity_file | O arquivo de identificação para o SSH. |
Apêndice B. Parâmetros dos Recursos de Alta Disponibilidade
ccs
ou editando o etc/cluster/cluster.conf
. O Tabela B.1, “Resumo de Recursos HA (Alta Disponibilidade)” lista os recursos, seus agentes de recursos correspondentes e referências para outras tabelas contendo descriços de parâmetros. Para entender os agentes de recursos com mais detalhes você pode vizualiza-los no /usr/share/cluster
em qualquer nó no cluster.
/usr/share/cluster
inclui um script do OCF dummy para um grupo de recursos, service.sh
. Para mais informações sobre os parâmetros incluídos neste script, consulte o próprio service.sh
.
cluster.conf
, consulte o esquema de cluster em /usr/share/cluster/cluster.rng
, e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
Tabela B.1. Resumo de Recursos HA (Alta Disponibilidade)
Recurso | Agente de Recursos | Descrição de Parâmetro de Referência |
---|---|---|
Apache | apache.sh | Tabela B.2, “Servidor Apache” |
Instância de Condor | condor.sh | Tabela B.3, “Instância de Condor” |
Sistema de Arquivo | fs.sh | Tabela B.4, “Sistema de Arquivo” |
Sistema de Arquivo GFS2 | clusterfs.sh | Tabela B.5, “GFS2” |
Endereço IP | ip.sh | Tabela B.6, “Endereço IP” |
HA LVM | lvm.sh | Tabela B.7, “HA LVM” |
MySQL | mysql.sh | Tabela B.8, “MySQL” |
NFS Client | nfsclient.sh | Tabela B.9, “NFS Client” |
Exportar NFS | nfsexport.sh | Tabela B.10, “Exportar NFS” |
NFS Server | nfsserver.sh | Tabela B.11, “NFS Server” |
NFS/CIFS Mount | netfs.sh | Tabela B.12, “NFS/CIFS Mount” |
Open LDAP | openldap.sh | Tabela B.13, “Open LDAP” |
Oracle 10g/11g Instância de Failover | oracledb.sh | Tabela B.14, “Oracle 10g/11G Instância do Failover” |
Oracle 10g Instância de Failover | orainstance.sh | Tabela B.15, “Oracle 10g Instância de Failover” |
Oracle 10g Listener | oralistener.sh | Tabela B.16, “Oracle 10g Listener” |
PostgreSQL 8 | postgres-8.sh | Tabela B.17, “PostgreSQL 8” |
SAP Database | SAPDatabase | Tabela B.18, “SAP Database” |
Instância SAP | SAPInstance | Tabela B.19, “Instância SAP” |
Samba | samba.sh | Tabela B.20, “Servidor Samba” |
Script | script.sh | Tabela B.21, “Script” |
Sybase ASE | ASEHAagent.sh | Tabela B.22, “Instância do Failover do ASE Sybase” |
Tomcat 6 | tomcat-6.sh | Tabela B.23, “Tomcat 6” |
Máquina Virtual | vm.sh | Tabela B.24, “Máquina Virtual”
Nota: o luci exibe isso como uma máquina virtual se o cluster do host pode suportar máquinas virtuais.
|
Tabela B.2. Servidor Apache
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | O nome do Serviço Apache |
Servidor Root | server_root | O valor padrão é /etc/httpd . |
Arquivo Config | config_file | Especifica o arquivo de configuração do Apache. O valor padrão é /etc/httpd/conf . |
Opções de httpd | httpd_options | Outras opções de linha de comando para o httpd . |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto de desligamento do serviço. |
Tabela B.3. Instância de Condor
Campo | Campo luci | Atributo cluster.conf |
---|---|---|
Nome da Instância | nome | Especifica um nome único para a instância Condor. |
Tipo de Subsistema do Condor | tipo | Especifica o tipo de subsistema do Condor para esta instância: schedd , job_server , ou query_server . |
Tabela B.4. Sistema de Arquivo
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica um nome para o recurso do sistema de arquivo. |
Tipo de Sistema de Arquivo | fstype | Se não especificado, o mount tenta determinar o tipo de sistema de arquivo. |
Mount Point | mountpoint | O caminho na hierarquia do sistema de arquivo para montar este sistema de arquivo. |
Dispositivo, Rótulo FS, ou UUID | dispositivo | Especifica o dispositivo associado com o recurso de sistema de arquivo. Este pode ser um dispositivo de bloco, rótulo do sistema de arquivo ou o UUID de um sistema de arquivo. |
Opções de montagem. | opções | Opções de montagem; que são opções usadas quando um sistema de arquivo é montado. Este pode ser um especifico sistema de arquivo. Consulte a página man mount (8) para opções de montagem suportadas. |
File System ID (opcional) | fsid | Nota ID do Sistema de Arquivo é usado somente pelos serviços NFS.
Quando criar um novo recurso de sistema de arquivo, você pode deixar este campo em branco. Deixando o campo em branco faz o ID do sistema de arquivos ser atribuido automaticamente depois de você enviar o parâmetro durante a configuração. Se você precisar atribuir um ID de sistema de arquivo explicitamente, especifique-o neste campo.
|
Forçar Desmontagem (Force Unmount) | force_unmount | Se habilitado, força o sistema de arquivos a desmontar. A configuração padrão é disabled (desabilitado). O Force Unmount (forçar desmontagem) termina todos os processos usando o ponto de montagem para liberar a montagem quando tentar desmontar. |
Forçar fsck | force_fsck | Se habilitado, faz que o fsck ser executado no sistema de arquivo antes de monta-lo. A definição padrão é disabled (desabilitado). |
Habilita o daemon do NFS e reparo bloqueado (Red Hat Enterprise Linux 6.4 e posteriores) | nfsrestart | Se seu sistema de arquivo é exportado via NFS e raramente falha em desmontar (tanto ao fechar quanto na realocação do serviço), configurar esta opção irá apagar todas as referências do sistema de arquivo antes de desmontar a operação. Configurar esta opção requer que você habilite a opção Force unmount e não deve ser utilizada junto com o recurso NFS Server . Você deve configurar esta opção como último recurso, pois é uma tentatica muito difíciç de descmontar um sistema de arquivo. |
Usar as Verificações do Quick Status | quick_status | Caso esteja habilitado, realizar verificações do quick status. |
Reinicializar o Nó da Máquina Caso a Desmontagem Falhar | self_fence | Se habilitado, renicializa o nó caso a desmontagem deste sistema de arquivo falhar. O agente de recurso filesystem aceita o valor 1, yes , on , ou true para habilitar este parâmetro e um valorf 0, no , off , ou false para desabilitá-lo. A configuração padrão é disabled . |
Tabela B.5. GFS2
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | O nome do recurso do sistema de arquivo. |
Mount Point | mountpoint | O caminho o qual o recursos do sistema de arquivo está montado. |
Dispositivo, Rótulo FS, ou UUID | dispositivo | O arquivo de dispositivo associado com o recurso do sistema de arquivo. |
Tipo de Sistema de Arquivo | fstype | Definir para GFS2 no luci |
Opções de montagem. | opções | Opções de montagem. |
File System ID (opcional) | fsid | Nota ID do Sistema de Arquivo é usado somente pelos serviços NFS.
Quando criar um novo recurso GFS2, você pode deixar este campo em branco. Deixando este campo em branco faz com que o ID do sistema de arquivo ser atribuído automaticamente depois de você enviar o parâmetro durante a configuração. Se você precisar atribuir um ID do sistema de arquivo explicitamente, especifique neste campo.
|
Forçar Desmontagem (Force Unmount) | force_unmount | Se habilitado, força o sistema de arquivos desmontar. A definição padrão é disabled (desabilitado). O Force Unmount termina todos os processos usando o ponto de montagem para liberar a montagem quando ele tentar a desmontagem. Com recursos GFS2, o ponto de montagem não é desmontado no desmantelamento do serviço a menos que Force Unmount esteja desabilitado (habilitado). |
Habilita o daemon do NFS e reparo bloqueado (Red Hat Enterprise Linux 6.4 e posteriores) | nfsrestart | Se seu sistema de arquivo é exportado via NFS e raramente falha em desmontar (tanto ao fechar quanto na realocação do serviço), configurar esta opção irá apagar todas as referências do sistema de arquivo antes de desmontar a operação. Configurar esta opção requer que você habilite a opção Force unmount e não deve ser utilizada junto com o recurso NFS Server . Você deve configurar esta opção como último recurso, pois é uma tentatica muito difíciç de descmontar um sistema de arquivo. |
Reinicializar o Nó da Máquina Caso a Desmontagem Falhar | self_fence | Se habilitado, e a desmontagem deste sistema de arquivo falhar, o nó irá reinicializar imediatamente. Geralmente, isto é usado com o suporte do forçar demontagem, mas não é necessário. O agente de recurso GFS2 aceita o valor 1, yes , on , ou true para habilitar este parâmetro e um valorf 0, no , off , ou false para desabilitá-lo. |
Tabela B.6. Endereço IP
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Endereço IP, Netmask Bits | endereço | O endereço IP (e, opcionalmente os bits de netmask) para o recurso. Os bits de netmask, ou comprimento de prefixo de rede, podem vir depois do endereço com uma barra como um separador, condizente com a anotação do CIDR (por exemplo, 10.1.1.1/8). Este é um endereço IP virtual. Os endereços IPv4 são suportados, assim como acontece no monitoramento de link do NIC para cada endereço IP. |
Monitor Link | monitor_link | Habilitando este faz com que a verificação do estado falhe se o link no NIC no qual o endereço de IP estiver ligado não está presente. |
Desabilitar Atualizações para Rotas Estáticas | disable_rdisc | Desabilitar atualização de roteamento usando o protocolo RDISC |
Número de Segundos para Esperar Após Remoção do Endereço IP | sleeptime | Especifica quanto tempo esperar (em segundos) |
Tabela B.7. HA LVM
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Um nome único para este recurso LVM. |
Volume Group Name | vg_name | Um nome descritivo do grupo de volume sendo gerenciado. |
Logical Volume Name (opcional) | lv_name | O nome do volume lógico sendo gerenciado. Este parâmetro é opcional se não há mais que um volume lógico no grupo de volume sendo gerenciado. |
Fazer um fence do Nó caso seja incapaz de limpar as marcações UP LVM. | self_fence | Faça um fence no nó caso não consiga limpar as marcações do LV. O agente de recurso do LVM aceita um valor de 1 ou yes para habilitar este parâmetro, e um valor de 0 ou no para desabilitá-lo. |
Tabela B.8. MySQL
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica um nome do recurso do servidor MySQL. |
Arquivo Config | config_file | Especifica o arquivo de configuração. O valor padrão é /etc/my.cnf . |
Listen Address | listen_address | Especifica o endereço de IP para o servidor MySQL. Se um endereço de IP não é fornecido, o primeiro endereço IP para o serviço é tomado. |
mysqld Options | mysqld_options | Outras opções de linha de comando para o httpd . |
Iniciar Espera (segundos) | startup_wait | Especifica o número de segundos para esperar pelo término correto da inicialização do serviço. |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto de desligamento do serviço. |
Tabela B.9. NFS Client
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Este é um nome simbólico de um cliente usado para referenciar-lo na árvore de recursos. Este não é a mesma coisa que a opção Target . |
Target Hostname, Wildcard, ou Netgroup | target | Este é o servidor no qual você está montando. Ele pode ser especificado usando um nome de host, um curinga (baseado em endereço IP e nome de host), ou um netgroup definindo um host ou hosts para serem exportados. |
Permitir Recuperação deste Cliente NFS | allow_recover | Permitir Recuperação. |
Options | opções | Define uma lista de opções para este cliente — por exemplo, direitos de acesso do cliente adicional. Para mais informações, consulte a página man exports (5), Opções Gerais. |
Tabela B.10. Exportar NFS
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome |
Nome do descritivo do recurso. O recurso de exportação NFS certifica que os daemons NFS estejam rodando. Ele é totalmente reusável, tipicamente, somente um recurso de Exportação NFS é necessário.
Nota
Nomeie o recurso de Exportação NFS para que seja claramente distinguível de outros recursos NFS.
|
Tabela B.11. NFS Server
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome |
O nome descriptivo do recurso de servidor do NFS. O recurso de servidor NFS é útil para exportar o sistema de arquivo NFSv4 para clientes. Por causa da forma que o NFSv4 funciona, somente um recurso NFSv4 pode existir em um servidor por vez. Além disso, não é possível utilizar o recurso do servidor NFS quando estiver utilizando também instâncias locais do NFS em cada nó de cluster.
|
Tabela B.12. NFS/CIFS Mount
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome |
Nome simbólico para a montagem NFS ou CIFS.
Nota
Este recurso é requerido quando um serviço de cluster estiver configurado para ser um cliente NFS.
|
Mount Point | mountpoint | O caminho no qual o recurso do sistema de arquivo é montado |
Host | host | Endereço de IP do servidor NFS/CIFS ou hostname. |
Nome do Diretório de Exportação de NFS ou compartilhar CIFS | export | Nome do diretório de exportação NFS ou nome de compartilhamento CIFS. |
Tipo do sistema de arquivo | fstype |
Tipo do sistema de arquivo:
|
Forçar Desmontagem (Force Unmount) | force_unmount | Se o Force Unmount estiver habilitado, o cluster termina todos os processos usando o sistema de arquivo quando o serviço é parado. Terminando todos processos usando o sistema de arquivo libera o sistema de arquivo. De outra maneira, a desmontagem falhará e o serviço será reinicializado. |
Não desmonte o sistema de arquivo durante a interrupção da operação de relocação. | no_unmount | Se habilitado, especifica que o sistema de arquivo não deve ser desmontado durante uma parada ou operação de realocação. |
Options | opções | Opções de montagem. Especifica uma lista de opções de montagem. Se nenhuma é especificada, o sistema de arquivo é montado -o sync . |
Tabela B.13. Open LDAP
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica um nome de serviço para o log e outros propósitos. |
Arquivo Config | config_file | Especifica o caminho absoluto do arquivo de configuração. O valor padrão é /etc/openldap/slapd.conf . |
URL List | url_list | O valor padrão é ldap:/// . |
slapd Options | slapd_options | Outras opções da linha de comando para o slapd . |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto de desligamento do serviço. |
Tabela B.14. Oracle 10g/11G Instância do Failover
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Instance name (SID) of Oracle instance | nome | Nome da Instância. |
Nome do Usuário da Oracle | user | Este é o nome de usuário do usuário Oracle de que como a instância Oracle AS roda. |
Diretório Home do Aplicativo Oracle | home | Este é o diretório home do Oracle (aplicativo, não usuário). Ele é configurado quando você instala o Oracle. |
Tipo de Instalação da Oracle | tipo | O tipo de instalação da Oracle. Padrão: 10g , Instância de Database e Listener somente. base , Database, Listener, Gerenciador de Empresas e ISQL*Plus: base-em (ou 10g ), ou Servidor de Aplicativo de Internet (Infraestrutura): ias (ou 10g-ias ). |
Virtual hostname (opcional) | vhost | O Hostname Virtual corresponde com a instalação hostname do Oracle 10g. Note que durante o início/parada de um recurso oracledb, seu hostname é alterado temporariamente para este hostname. Portanto, você deve configurar um recurso oracledb como parte de um serviço exclusivo somente. |
Tabela B.15. Oracle 10g Instância de Failover
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Instance name (SID) of Oracle instance | nome | Nome da Instância. |
Nome do Usuário da Oracle | user | Este é o nome do usuário da Oracle com o qual a instância Oracle AS é executada. |
Diretório Home do Aplicativo Oracle | home | Este é o diretório home do Oracle (aplicativo, não usuário). Ele é configurado quando você instala o Oracle. |
Lista de Ouvintes (Listeners) da Oracle (opcional, separado por espaços) | listeners | Lista de ouvintes (listeners) da Oracle que será iniciado com a instância do banco de dados. Os nomes dos listeners são separados por um espaço em branco. Padrão definido para vazio que desabilita os listeners. |
Caminho para Bloquear Arquivo (opcional) | lockfile | Localização do lockfile que será usado para verificar se a Oracle deve estar sendo executada ou não. Padrão definido para local sob o /tmp . |
Tabela B.16. Oracle 10g Listener
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome do Listener | nome | Nome do Listener. |
Nome do Usuário da Oracle | user | Este é o nome do usuário da Oracle com o qual a instância Oracle AS é executada. |
Diretório Home do Aplicativo Oracle | home | Este é o diretório home do Oracle (aplicativo, não usuário). Ele é configurado quando você instala o Oracle. |
Tabela B.17. PostgreSQL 8
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica um nome de serviço para o log e outros propósitos. |
Arquivo Config | config_file | Defina um caminho absoluto para o arquivo de configuração. O valor padrão é /var/lib/pgsql/data/postgresql.conf . |
Postmaster User | postmaster_user | O usuário que roda o servidor de banco de dados porque ele não pode ser rodado pelo root. O valor padrão é postgres. |
Postmaster Options | postmaster_options | Outras opções da linha de comando para o postmaster. |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto de desligamento do serviço. |
Tabela B.18. SAP Database
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
SAP Database Name | SID | Especifica um identificador de sistema SAP único. Por exemplo, P01. |
Diretório de executáveis do SAP | DIR_EXECUTABLE | Especifica o caminho totalmente qualificado para o sapstartsrv e sapcontrol . |
Tipo de Banco de Dados | DBTYPE | Especifica um dos seguintes tipos de banco de dados: Oracle, DB6 ou ADA. |
Nome do Listener da Oracle | NETSERVICENAME | Especifica o ouvinte do Oracle TNS. |
A pilha ABAP não está instalada, Somente a Pilha do Java está instalada. | DBJ2EE_ONLY | Se você não tem um stack ABAP instalado no banco de dados SAP, habilite este parâmetro. |
Monitoramento do Nível de Aplicativo. | STRICT_MONITORING | Ativa o monitoramento de nível do aplicativo. |
Inicia Recuperação Automaticamente | AUTOMATIC_RECOVER | Habilitar ou desabilitar inicialização de recuperação automática. |
Caminho para o Java SDK | JAVE_HOME | Caminho para o Java SDK. |
Nome do Arquivo do JDBC Driver. | DB_JARS | O nome do arquivo do driver JDBC |
Caminho para Pré-Iniciar o Script. | PRE_START_USEREXIT | Caminho para pré-iniciar script. |
Caminho para pós-início do Script. | POST_START_USEREXIT | Caminho para um pós-início script. |
Caminho para um pré-interromper Script. | PRE_STOP_USEREXIT | Caminho para um script de pré-interrupção |
Caminho para um Script de pós-interrupção | POST_STOP_USEREXIT | Caminho para um script de pós-interrupção |
Diretório de bootstrap de Instância J2EE | DIR_BOOTSTRAP | O caminho totalmente qualificado para o diretório bootstrap da instância J2EE. Por exemplo, /usr/sap/P01/J00/j2ee/cluster/bootstrap . |
Caminho de armazenamento de segurança J2EE | DIR_SECSTORE | O caminho totalmente qualificado do diretório de armazenamento de segurança J2EE. Por exemplo, /usr/sap/P01/SYS/global/security/lib/tools . |
Tabela B.19. Instância SAP
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
SAP Instance Name | InstanceName | O nome totalmente qualificado da instância SAP. Por exemplo, P01_DVEBMGS00_sapp01ci. |
Diretório de executáveis do SAP | DIR_EXECUTABLE | O caminho totalmente qualificado para o sapstartsrv e sapcontrol . |
Directory containing the SAP START profile | DIR_PROFILE | O caminho totalmente qualificado para o perfil SAP START. |
Nome do perfil SAP START | START_PROFILE | Especifica o nome do perfil SAP START. |
Número de Segundos para Esperar Antes de Verificar o Status de Inicialização | START_WAITTIME | Especifica o número de segundos para esperar antes do status de inicialização (não esperar pelo J2EE-Admin). |
Habilitar Recuperação de Inicialização Automático | AUTOMATIC_RECOVER | Habilitar ou desabilitar inicialização de recuperação automática. |
Caminho para Pré-Iniciar o Script. | PRE_START_USEREXIT | Caminho para pré-iniciar script. |
Caminho para pós-início do Script. | POST_START_USEREXIT | Caminho para um pós-início script. |
Caminho para um pré-interromper Script. | PRE_STOP_USEREXIT | Caminho para um script de pré-interrupção |
Caminho para um Script de pós-interrupção | POST_STOP_USEREXIT | Caminho para um script de pós-interrupção |
Nota
Tabela B.20. Servidor Samba
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica o nome do servidor Samba. |
Arquivo Config | config_file | O arquivo de configuração do Samba |
Outras opções de Linha de Comando para o smbd | smbd_options | Outras opções da linha de comando para smbd. |
Outras opções da linha de comando para nmbd. | nmbd_options | Outras opções da linha de comando para o nmbd. |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto de desligamento do serviço. |
Tabela B.21. Script
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica o nome para o script de usuário personalizado. O recurso de script permite um script init compatível LSB padrão para ser usado para iniciar um serviço clusterizado. |
Caminho completa para o Arquivo do Script | file | Digite o caminho onde este script personalizado está localizado (por exemplo, /etc/init.d/userscript ). |
Tabela B.22. Instância do Failover do ASE Sybase
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome da Instância | nome | Especifica o nome da instância do recurso Sybase ASE |
Nome do Servidor ASE | server_name | O nome do servidor ASE que é configurado para o serviço HA. |
Diretório do Home SYBASE | sybase_home | O diretório home dos produtos Sybase. |
Arquivo de Login | login_file | O caminho completo do arquivo de login que contém o par de senha do login. |
Arquivos de Interface | interfaces_file | O caminho completo do arquivo de interface que é usado para iniciar/acessar o servidor ASE. |
Nome de Diretório SYBASE_ASE | sybase_ase | O nome do diretório sob o sybase_home onde os produtos ASE estão instalados. |
Nome do diretório SYBASE_OCS | sybase_ocs | O nome do diretório sob o sybase_home onde os produtos OCS estão instalados. Por exemplo, ASE-15_0. |
Usuário Sybase | sybase_user | O usuário que pode rodar o servidor ASE. |
Iniciar Timeout (segundos) | start_timeout | O valor do O valor de expiração de sessão da afiliação CMAN |
Fechamento do Timeout (segundos) | shutdown_timeout | O valor de fechamento do timeout |
Timeout de análise profunda | deep_probe_timeout | O número máximo de segundos para esperar pela resposta do servidor ASE antes de determinar que o servidor não tinha resposta enquanto rodando a deep probe. |
Tabela B.23. Tomcat 6
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome | nome | Especifica um nome de serviço para o log e outros propósitos. |
Arquivo Config | config_file | Especifica o caminho absoluto para a configuração do arquivo. O valor padrão é /etc/tomcat6/tomcat6.conf . |
Espera de fechamento (segundos) | shutdown_wait | Especifica o número de segundos para esperar pelo término correto do desligamento do serviço. O padrão é 30. |
Importante
rgmanager
para iniciar e interromper as máquinas virtuais. Usar o virsh
para iniciar a máquina pode resultar na execução da máquina virtual em mais de um local, o qual pode causar a danos de dados na máquina virtual. Para informações sobre configuração de seu sistema para reduzir as chances de administradores acidentalmente "duplo-início" máquinas virtuais por usar ambos cluster e ferramentas sem cluster, consulte o Seção 2.14, “Configurando as Máquinas Virtuais em um Ambiente Cluster”.
Nota
Virtual Machine
como tipo de recurso e inserindo os parâmetros de recurso de máquina virtual. Para informação sobre configurar uma máquina virtual com o ccs
, consulte o Seção 5.12, “Recursos de Máquina Virtual”.
Tabela B.24. Máquina Virtual
Campo luci | Atributo cluster.conf | Descrição |
---|---|---|
Nome do Serviço | nome | Especifica o nome da máquina virtual. Quando usar a interface luci, você o especifica como um nome de serviço. |
Iniciar este serviço automaticamente | autostart | Se habilitado, esta máquina virtual é iniciada automaticamente depois do cluster formar um quorum. Se este parâmetro estiver disabled, esta máquina virtual não é iniciada automaticamente depois do cluster formar um quorum; a máquina virtual é colocada no estado disabled . |
Executar exclusivo | exclusive | Se habilitado, esta máquina virtual pode somente ser realocada para rodar em um outro nó exclusivamente; que é, rodar em um nó que não possui outras máquinas virtuais rodando nela. Se não houverem nós disponíveis para uma máquina virtual rodar exclusivamente, a máquina virtual não é reiniciada depois da falha. Além disso, outras máquinas virtuais não realocam automaticamente para um nó rodando esta máquina virtual como Run exclusive . Você pode sobrescrever esta opção para inicial manual ou realocar operações. |
Failover Domain | domain | Define listas de membros do cluster para tentar no evento que uma máquina virtual falha. |
Política de recuperação | recovery | Política de Recuperação fornece as seguintes opções:
|
Opções de reinício | max_restarts , restart_expire_time | Com o Restart ou Restart-Disable selecionados como a política de recuperação para um serviço, se especifica o número máximo de falhas de reinicialização antes de realocar ou desabilitar o serviço e especifica o período de tempo em segundos após para parar uma reinicialização. |
Tipo de Migração | migrate | Especifica o tipo de migração de live (viva) or pause (pausa). A definição padrão é live (viva). |
Mapeamento de migração | migration_mapping |
Especifica uma interface alternada para migração. Você pode especificar isto quando, por exemplo, o endereço de rede usado para a migração de máquina virtual em um nó difere do endereço do nó usado para comunicação do cluster.
Especificando o seguinte indica que quando você migrar uma máquina virtual do
member para o member2 , você pode na verdade migrar para o target2 . Igualmente, quando você migrar do member2 para o member , você pode migrar usando o target .
member:target,member2:target2
|
Status Program | status_program |
O estado do programa para rodar além da verificação padrão de presença de uma máquina virtual. Se especificado, o estado do programa é executado uma vez por minuto. Isto lhe permite determinar o estado de serviços críticos dentro de uma máquina virtual. Por exemplo, se uma máquina virtual roda um servidor web, seu programa de estado pode checar se um servidor web está ativo e em execução; se a verificação de estado falhar (mostrado com o retorno de um valor diferente de zero), a máquina virtual é recuperada.
Depois que uma máquina virtual é iniciada, o agente de recurso de máquina virtual chamará periodicamente o programa de estado e espera pelo retorno de um código de sucesso (zero). Ele expira depois de cinco minutos.
|
Caminho para o arquivo XML usado para criar o VM | xmlfile | O caminho completo para o arquivo XML libvirt que contém a definição do domínio libvirt . |
Caminho de arquivo de configuração VM | path |
Uma especificação de caminho de dois pontos que o Agente de Recurso de Máquina Virtual (
vm.sh ) busca para o arquivo de configuração da máquina virtual. Por exemplo: /mnt/guests/config:/etc/libvirt/qemu .
Importante
O caminho nunca deve apontar diretamente para o arquivo de configuração da máquina virtual.
|
Caminho para o diretório de snapshot VM | snapshot | Caminho para o diretório snapshot onde a imagem da máquina virtual será armazenada. |
Hypervisor URI | hypervisor_uri | Hypervisor URI (normalmente automático). |
Migration URI | migration_uri | Migration URI (normalmente automático). |
Dados de túnel sob ssh durante a migração | tunnelled | Dados de túnel sob ssh durante a migração |
Apêndice C. Comportamento do Recurso de Alta Disponibilidade
etc/cluster/cluster.conf
. Para descrições dos parâmetros de recursos HA, consulte o Apêndice B, Parâmetros dos Recursos de Alta Disponibilidade. Para entender agentes de recursos em mais detalhes você pode vizualiza-los em /usr/share/cluster
de qualque nó no cluster.
Nota
/etc/cluster/cluster.conf
.
/etc/cluster/cluster.conf
(em cada nó no cluster). No arquivo de configuração do cluster, cada árvore de recursos é uma representação XML que especifica cada recurso, seus atributos e seu relacionamento entre outros recursos na árvore de recursos (relacionamentos pai, filhos e irmãos).
Nota
Nota
/etc/cluster/cluster.conf
, para propósitos ilustrativos somente.
C.1. Relacionamentos de níveis Pai, Filho e Irmãos entre Recursos
rgmanager
. Todos os recursos em um serviço rodam no mesmo nó. Da perspectiva do rgmanager
, um serviço de cluster é somente uma entidade que pode ser iniciada, parada ou realocada. Dentro de um serviço de cluster, entretanto, a hierarquia é iniciada e parada. Os níveis hierarquicos consistem em pai, filho e irmãos.
fs:myfs
(<fs name="myfs" ...>) eip:10.1.1.2
(<ip address="10.1.1.2 .../>) são irmãos.- O
fs:myfs
(<fs name="myfs" ...>) é o pai doscript:script_child
(<script name="script_child"/>). - O
script:script_child
(<script name="script_child"/>) é o filho dofs:myfs
(<fs name="myfs" ...>).
Exemplo C.1. Hierarquia de Recursos do Serviço foo
<service name="foo" ...> <fs name="myfs" ...> <script name="script_child"/> </fs> <ip address="10.1.1.2" .../> </service>
- Pais são iniciados antes dos filhos.
- Filhos devem todos serem parados antes de um pai ser parado.
- Para um recurso ser considerado em boa saúde, todos os filhos devem estar em boa saúde.
C.2. Ordenação de Início de Irmãos e Ordenação de Recursos Filhos
- Designa o atributo tipo filho (recurso filho tipificado — Se o recurso de serviço designa um atributo tipo filho para um recurso filho, o recurso filho é tipificado. O atributo tipo filho determina explicitamente a ordem de início e parada do recurso filho.
- Não designa o atributo tipo filho (recurso filho não tipificado) — Se o recurso de Serviço não designa um atributo tipo filho para um recurso filho, o recurso filho é não tipificado. O recurso de serviço não controla explicitamente a ordem de início e ordem de parada de um recurso filho não tipificado. Entretanto, um recurso filho não tipificado é iniciado e parado de acordo com sua ordem no
/etc/cluster.cluster.conf
. Além disso, recursos filhos não especificados são iniciados depois de todos recursos filhos tipificados terem iniciado e são parados antes de qualquer recursos filhos tiverem parado.
Nota
C.2.1. Ordenação de Início e Parada de Recursos Filhos Tipificados
service.sh
” mostra os valores de início e parada conforme eles aparecem no agente de recurso de Serviço, o service.sh
. Para o recurso de Serviço, todos os filhos LVM são iniciados primeiro, seguidos por todos os filhos Sistema de Arquivo, seguidos por todos filhos Script e assim por diante.
Tabela C.1. Ordem de Início e Parada de Tipo de Recurso Filho
Recurso | Tipo Filho | Valor ordem-início | Valor ordem-parada |
---|---|---|---|
LVM | lvm | 1 | 9 |
Sistema de Arquivo | fs | 2 | 8 |
Sistema de Arquivo GFS2 | clusterfs | 3 | 7 |
Montagem NFS | netfs | 4 | 6 |
Exportar NFS | nfsexport | 5 | 5 |
NFS Client | nfsclient | 6 | 4 |
Endereço IP | ip | 7 | 2 |
Samba | smb | 8 | 3 |
Script | script | 9 | 1 |
Exemplo C.2. Valores de Início e Parada de Recursos: Resumo do Agente de Recurso de Serviço service.sh
<special tag="rgmanager"> <attributes root="1" maxinstances="1"/> <child type="lvm" start="1" stop="9"/> <child type="fs" start="2" stop="8"/> <child type="clusterfs" start="3" stop="7"/> <child type="netfs" start="4" stop="6"/> <child type="nfsexport" start="5" stop="5"/> <child type="nfsclient" start="6" stop="4"/> <child type="ip" start="7" stop="2"/> <child type="smb" start="8" stop="3"/> <child type="script" start="9" stop="1"/> </special>
/etc/cluster/cluster.conf
. Por exemplo, considere a ordem de início e ordem de parada dos recursos filhos tipificados no Exemplo C.3, “Ordenação Dentro de um Tipo de Recurso”.
Exemplo C.3. Ordenação Dentro de um Tipo de Recurso
<service name="foo"> <script name="1" .../> <lvm name="1" .../> <ip address="10.1.1.1" .../> <fs name="1" .../> <lvm name="2" .../> </service>
C.2.1.1. Ordem de Início do Recurso Filho Tipificado
lvm:1
— Este é um recurso LVM. Todos os recursos LVM são iniciados primeiro. Olvm:1
(<lvm name="1" .../>
) é o primeiro recurso LVM iniciado entre os recursos LVM porque ele é o primeiro recurso LVM listado na porção do Serviço foo do/etc/cluster/cluster.conf
.- O
lvm:2
— Este é um recurso LVM. Todos os recursos LVM são iniciados primeiro. Olvm:2
(<lvm name="2" .../>
) é iniciado depois dolvm:1
porque ele é listado depois dolvm:1
na porção do Serviço foo do/etc/cluster/cluster.conf
. - O
fs:1
— Este é um recurso do Sistema de Arquivo. Se existissem outros recursos do Sistema de Arquivo no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
. ip:10.1.1.1
— Este é um recurso de Endereço IP. Se houvessem outros recursos de endereço IP no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
.script:1
— Este é um recurso de Script. Se houvessem outros recursos de Script no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
.
C.2.1.2. Ordem de Parada do Recurso Filho Tipificado
script:1
— Este é um recurso de Script. Se houvessem outros recursos Scripts no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.ip:10.1.1.1
— Este é um recurso de Endereço IP. Se houvessem outros recursos de endereço IP no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.fs:1
— Este é um recurso de Sistema de Arquivo. Se houvessem outros recursos de Sistema de Arquivo no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.lvm:2
— Este é um recurso LVM. Todos recursos LVM são parados por último. Olvm:2
(<lvm name="2" .../>
) é parado antes dolvm:1
; recursos dentro de um grupo de um tipo de recurso são parados pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.lvm:1
— Este é um recurso LVM. Todos recursos LVM são parados por último. Olvm:1
(<lvm name="1" .../>
) é parado depois dos recursoslvm:2
; dentro de um grupo de um tipo de recurso são parados pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.
C.2.2. Ordenação de Início e Parada de Recurso Filho Não Tipificado
/etc/cluster/cluster.conf
. Além disso, os recursos filho não especificados são iniciados depois de todos os recursos filho especificados e parados antes de qualquer recurso filho.
Exemplo C.4. Recursos Filhos Não tipificados e Tipificados em um Serviço
<service name="foo"> <script name="1" .../> <nontypedresource name="foo"/> <lvm name="1" .../> <nontypedresourcetwo name="bar"/> <ip address="10.1.1.1" .../> <fs name="1" .../> <lvm name="2" .../> </service>
C.2.2.1. Ordem de Início do Recurso Filho Não tipificado
lvm:1
— Este é um recurso LVM. Todos os recursos LVM são iniciados primeiro. Olvm:1
(<lvm name="1" .../>
) é o primeiro recurso LVM iniciado entre os recursos LVM porque ele é o primeiro recurso LVM listado na porção do Serviço foo do/etc/cluster/cluster.conf
.- O
lvm:2
— Este é um recurso LVM. Todos os recursos LVM são iniciados primeiro. Olvm:2
(<lvm name="2" .../>
) é iniciado depois dolvm:1
porque ele é listado depois dolvm:1
na porção do Serviço foo do/etc/cluster/cluster.conf
. - O
fs:1
— Este é um recurso do Sistema de Arquivo. Se existissem outros recursos do Sistema de Arquivo no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
. ip:10.1.1.1
— Este é um recurso de Endereço IP. Se houvessem outros recursos de endereço IP no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
.script:1
— Este é um recurso de Script. Se houvessem outros recursos de Script no Serviço foo, eles iniciariam na ordem listada na porção do Serviço foo do/etc/cluster/cluster.conf
.nontypedresource:foo
— Este é recurso não tipificado. Pelo Motivo este é um recurso não tipificado, ele é iniciado depois depois que os recursos tipificados iniciam. Além disso, sua ordem no recurso do Serviço é antes do outro recurso não tipificado,nontypedresourcetwo:bar
; portanto, ele é iniciado antes donontypedresourcetwo:bar
. (Recursos não tipificados são iniciados na ordem que eles aparecem no recurso do Serviço).nontypedresourcetwo:bar
— Este é um recurso não tipificado. Por causa que é um recurso não tipificado, ele é iniciado depois dos recursos tipificados iniciarem. Além disso, sua ordem no recurso de Serviço é depois do outro recurso não tipificado, onontypedresource:foo
; portanto é iniciado depois donontypedresource:foo
. (Recursos não tipificados são iniciados na ordem que eles aparecem no recurso do Serviço).
C.2.2.2. Ordem de Parada do Recurso Filho Não tipificado
nontypedresourcetwo:bar
— Este é um recurso não tipificado. Por causa que é um recurso não tipificado, ele é parado antes que os recursos tipificados são parados. Além disso, sua ordem no recurso de Serviço é depois dos outros recursos não tipificados, onontypedresource:foo
; portanto é parado antes donontypedresource:foo
. (Recursos não tipificados são parados pela ordem reversa que eles aparecem no recurso do Serviço).nontypedresource:foo
— Este é um recurso não tipificado. Por causa que é um recurso não tipificado, ele é parado antes que os recursos tipificados são parados. Além disso, sua ordem no recurso do Serviço é antes do outro recurso não tipificado,nontypedresourcetwo:bar
; portanto, ele é parado depois donontypedresourcetwo:bar
. (Recursos Não tipificados são parados pela ordem reversa que eles aparecem no recurso do Serviço).script:1
— Este é um recurso de Script. Se houvessem outros recursos Scripts no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.ip:10.1.1.1
— Este é um recurso de Endereço IP. Se houvessem outros recursos de endereço IP no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.fs:1
— Este é um recurso de Sistema de Arquivo. Se houvessem outros recursos de Sistema de Arquivo no Serviço foo, eles parariam pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.lvm:2
— Este é um recurso LVM. Todos recursos LVM são parados por último. Olvm:2
(<lvm name="2" .../>
) é parado antes dolvm:1
; recursos dentro de um grupo de um tipo de recurso são parados pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.lvm:1
— Este é um recurso LVM. Todos recursos LVM são parados por último. Olvm:1
(<lvm name="1" .../>
) é parado depois dos recursoslvm:2
; dentro de um grupo de um tipo de recurso são parados pela ordem reversa listada na porção do Serviço foo do/etc/cluster/cluster.conf
.
C.3. Herança, os Blocos de <recursos< e Reusando Recursos
Exemplo C.5. Configuração do Serviço NFS para Reuso e Herança do Recurso
<resources> <nfsclient name="bob" target="bob.example.com" options="rw,no_root_squash"/> <nfsclient name="jim" target="jim.example.com" options="rw,no_root_squash"/> <nfsexport name="exports"/> </resources> <service name="foo"> <fs name="1" mountpoint="/mnt/foo" device="/dev/sdb1" fsid="12344"> <nfsexport ref="exports"> <!-- nfsexport's path and fsid attributes are inherited from the mountpoint & fsid attribute of the parent fs resource --> <nfsclient ref="bob"/> <!-- nfsclient's path is inherited from the mountpoint and the fsid is added to the options string during export --> <nfsclient ref="jim"/> </nfsexport> </fs> <fs name="2" mountpoint="/mnt/bar" device="/dev/sdb2" fsid="12345"> <nfsexport ref="exports"> <nfsclient ref="bob"/> <!-- Because all of the critical data for this resource is either defined in the resources block or inherited, we can reference it again! --> <nfsclient ref="jim"/> </nfsexport> </fs> <ip address="10.2.13.20"/> </service>
- O serviço precisaria de quatro recursos nfsclient — um por sistema de arquivo (um total de dois por sistema de arquivo) e um por máquina alvo (um total de dois por máquina alvo).
- O serviço precisaria especificar o caminho de exportação e o ID do sistema de arquivo para cada nfsclient, que apresenta chances de erros na configuração.
C.4. Recuperação de Falhas e Sub Árvores Independentes
__independent_subtree
. Por exemplo, no Exemplo C.7, “A Recuperação de Falha do Serviço foo com o Atributo __independent_subtree
.”, o atributo __independent_subtree
é usado para fazer as seguintes ações:
- Se o script:script_one falhar, reinicie script:script_one, script:script_two, e script:script_three.
- Se o script:script_two falhar, reinicie apenas o script:script_two.
- Se o script:script_three falhar, reinicie o script:script_one, script:script_two, e script:script_three.
- Se o script:script_four falhar, reinicie o serviço inteiro.
Exemplo C.6. Recuperação de Falha Normal do Serviço foo
<service name="foo"> <script name="script_one" ...> <script name="script_two" .../> </script> <script name="script_three" .../> </service>
Exemplo C.7. A Recuperação de Falha do Serviço foo com o Atributo __independent_subtree
.
<service name="foo"> <script name="script_one" __independent_subtree="1" ...> <script name="script_two" __independent_subtree="1" .../> <script name="script_three" .../> </script> <script name="script_four" .../> </service>
__independent_subtree="2"
, que designa a subárvore independente como não crítica.
Nota
- O
__max_restarts
configura o número máximo de reinicializações toleradas antes de desistir. __restart_expire_time
configura o período de tempo, em segundos, depois que uma reinicialização não é mais tentada.
C.5. Depurando e Testando Serviços e Ordenação de Recursos
rg_test
. O rg_test
é um utilitário de linha de comando fornecido pelo pacote rgmanager
que é executado a partir do shell ou um terminal (não disponível no Conga). A Tabela C.2, “Resumo do Utilitário rg_test
” resume as ações e sintaxes do utilitário rg_test
.
Tabela C.2. Resumo do Utilitário rg_test
Ação | Sintaxe |
---|---|
Exibe as regras do recurso que o rg_test entende. | rg_test rules |
Testa a configuração (e o /usr/share/cluster) por erros ou agentes de recursos redundantes. | rg_test test /etc/cluster/cluster.conf |
Exibe a ordem de início e parada de um serviço. |
Exibe a ordem de início:
rg_test noop /etc/cluster/cluster.conf start service
Exibe a ordem de parada:
rg_test noop /etc/cluster/cluster.conf stop service
|
Explicitamente inicia ou para um serviço. | Importante
Somente faça isso em um nó e sempre desabilite o serviço no rgmanager primeiro.
Inicie um serviço:
rg_test test /etc/cluster/cluster.conf start service
Pára um serviço:
rg_test test /etc/cluster/cluster.conf stop service
|
Calcular e exibir a árvore delta de recurso entre dois arquivos cluster.conf. | rg_test delta
Por exemplo:
rg_test delta /etc/cluster/cluster.conf.bak /etc/cluster/cluster.conf
|
Apêndice D. Checagem de Recursos de Serviço de Cluster e Expiração de Failover
rgmanager
monitora o estado dos recursos do cluster, e como modificar o estado do intervalo de verificação. O apêndice também descreve o parâmetro do serviço __enforce_timeouts
, o qual indica que um timeout para uma operação deve causar falha no serviço.
Nota
/etc/cluster/cluster.conf
. Para uma lista compreensiva e a descrição dos elementos e atributos do cluster.conf
, consulte o esquema de cluster em /usr/share/cluster/cluster.rng
e o esquema anotado em /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html
(por exemplo /usr/share/doc/cman-3.0.12/cluster_conf.html
).
D.1. Modificando o Intervalo de Checagem de Estado do Recurso
rgmanager
checa o estado de recursos individuais, não os serviços inteiros. A cada 10 segundos, o rgmanager escaneia o árvore de recursos, buscando por recursos que tiveram seus intervalos "de verficação do estado" passados.
cluster.conf
usando a tag especial <action>
:
<action name="status" depth="*" interval="10" />
cluster.conf
. Por exemplo, se você tiver um recurso de sistema de arquivos para o qual você quer sobrescrever o intervalo de verificação de estado você pode especificar o recurso de sistema de arquivos no arquivo cluster.conf
como se segue:
<fs name="test" device="/dev/sdb3"> <action name="status" depth="*" interval="10" /> <nfsexport...> </nfsexport> </fs>
depth
está configurada para *
, que indica que estes valores devem ser usados para todas as profundidades. O resultado é que o sistema de arquivos test
é checado no nível mais alto de profundidade fornecido pelo agente de recurso (no caso, 20) a cada 10 segundos.
D.2. Forçando Expirações de Recursos
__enforce_timeouts="1"
à referência no arquivo cluster.conf
.
_enforce_timeouts
ajustado para o recurso netfs
. Com este atributo ajustado, então se durante uma recuperação demorar mais de 30 segundos para desmontar o sistema de arquivos NFS, a operação expirará, fazendo o serviço entrar no estado de falha.
</screen> <rm> <failoverdomains/> <resources> <netfs export="/nfstest" force_unmount="1" fstype="nfs" host="10.65.48.65" mountpoint="/data/nfstest" name="nfstest_data" options="rw,sync,soft"/> </resources> <service autostart="1" exclusive="0" name="nfs_client_test" recovery="relocate"> <netfs ref="nfstest_data" __enforce_timeouts="1"/> </service> </rm>
Apêndice E. Resumo das Ferramentas da Linha de Comando
Tabela E.1. Resumo das Ferramentas da Linha de Comando
Ferramentas da Linha de Comando | Usadas com | Propósito |
---|---|---|
ccs_config_dump — Ferramenta de Dump de Configuração de Cluster | Infraestrutura do cluster | O ccs_config_dump gera um resultado XML para configuração de execução. A configuração de execução é, as vezes, diferente da configuração armazenada no arquivo porque alguns subsistemas armazenam ou definem algumas informações padrões na configuração. Aqueles valores geralmente não estão presentes na versão do disco de configuração mas são requeridos no tempo de execução para o cluster trabalhar apropriadamente. Para mais informações sobre esta ferramenta, consulte a página man ccs_config_dump(8). |
ccs_config_validate — Ferramenta de Validação de Configuração de Cluster | Infraestrutura do cluster | A ccs_config_validate valida o cluster.conf contra o esquema, cluster.rng (localizado em /usr/share/cluster/cluster.rng em cada nó. Para mais informações sobre esta ferramenta, consulte a página man ccs_config_validate(8). |
clustat — Utilitário de Estado do Cluster | Componentes de Gerenciamento de Serviços de Alta Disponibilidade | O comando clustat mostra o estado do cluster. Ele exibe informações de afiliação, vizualização do quorum e o estado de todos os serviços de usuários configurados. Para mais informações sobre esta ferramenta, consulte a página man clustat(8). |
clusvcadm — Utilitário de Serviço de Usuários do Cluster | Componentes de Gerenciamento de Serviços de Alta Disponibilidade | O comando clusvcadm lhe permite habilitar, desabilitar, realocar e reiniciar os serviços de alta disponibilidade em um cluster. Para mais informações sobre esta ferramenta, consulte a página man clusvcadm(8). |
cman_tool — Ferramenta de Gerenciamento do Cluster | Infraestrutura do cluster | O cman_tool é um programa que gerencia o gerenciador de cluster CMAN. Ele fornece a capacidade de se unir a um cluster, deixar um cluster, matar um nó ou mudar os votos quorum esperados de um nó em um cluster. Para mais informações sobre esta ferramenta, consulte a página man cman_tool(8). |
fence_tool — Ferramenta Fence | Infraestrutura do cluster | A fence_tool é um programa usado para se unir e deixar um domínio fence. Para mais informações sobre esta ferramenta, consulte a página man fence_tool(8). |
Apêndice F. Alta Disponibilidade LVM (HA-LVM)
- Caso os aplicativos sejam conscientes do cluster e foram ajustados para rodar simultaneamente em máquinas múltiplas de uma só vez, depois o CLVM deve ser usado. Especialmente se mais de um nó de seu cluster precisar acessar seu armazenamento que é então compartilhado entre nós ativos, aí então você precisará usar o CLVM. O CLVM permite que um usuário configure volumes lógicos em armazenamento compartilhado bloqueando acesso em armazenamento físico enquanto um volume lógico estiver sendo configurado, e utiliza serviços de bloqueio em cluster para gerenciar o armazenamento compartilhado. Para mais informações sobre o CLVM, e sobre a configuração do LVM em geral, consulte o Logical Volume Manager Administration.
- Se os aplicativos rodarem de forma ideal em configurações ativa/passiva (failover), onde somente um único nó que acessa o armazenamento está ativa em qualquer momento, você deve utilizar agentes do Gerenciamento de Volume Lógico de Disponibilidade (HA-LVM).
- O método preferido usa o CLVM, mas ele irá ativar os volumes lógicos somente de forma exclusiva. Isto tem a vantagem de uma configuração mais fácil e melhor prevenção de erros administrativos (como remover um volume lógico que esteja em uso). Para usar o CLVM, o Complemento de Alta Disponibilidade e Software de complemento de armazenamento resiliente, incluindo o daemon
clvmd
, devem estar em execução.O procedimento para configuração do HA-LVM utilizando este método é descrito no Seção F.1, “Configurando um Failover HA-LVM com o CLVM (preferido)”. - O segundo método usa bloqueio de máquina local e "marcações" de LVM. Este método possui uma vantagem de não precisar de qualquer pacote de cluster LVM; no entanto, existem mais passos envolvidos na configuração do mesmo e não previne um administrador de remover um volume lógico por engano de um nó no cluster, onde ele não é ativo. O procedimento para a configuração do HA-LVM usando este método está descrito em Seção F.2, “Configurando um Failover de HA-LVM com a Marcação”.
F.1. Configurando um Failover HA-LVM com o CLVM (preferido)
- Certifique-se de que seu sistema está configurado para suportar o CLVM, o qual requer o seguinte:
- Os Complementos de Alta Disponibilidade e Armazenamento Resiliente estão instalados, incluindo o pacote
cmirror
se os volumes lógicos CLVM estiverem espelhados. - O parâmetro
locking_type
na seção global do arquivo/etc/lvm/lvm.conf
está definido para o valor '3'. - Os Complementos de Alta Disponibilidade e Software de Armazenamento Resiliente, incluindo o daemon do
clvmd
devem estar rodando. Para o espelhamento do CLVM, o serviçocmirror
também deve ser iniciado.
- Crie um volume lógico e sistema de arquivo utilizando o LVM padrão e comandos de sistema de arquivo, como no exemplo a seguir.
#
pvcreate /dev/sd[cde]1
#vgcreate -cy shared_vg /dev/sd[cde]1
#lvcreate -L 10G -n ha_lv shared_vg
#mkfs.ext4 /dev/shared_vg/ha_lv
#lvchange -an shared_vg/ha_lv
Para informações sobre como criar os volumes lógicos LVM, consulte o Logical Volume Manager Administration. - Edite o arquivo
/etc/cluster/cluster.conf
para incluir um volume lógico recente como um recurso em um dos seus serviços. Como forma alternativa, você pode utilizar o Conga ou occs
para configurar o LVM e recursos de sistema de arquivo para o cluster. Segue um exemplo de seção de gerenciador de recurso do arquivo/etc/cluster/cluster.conf
que configura um volume lógico CLVM como um recurso de cluster:<rm> <failoverdomains> <failoverdomain name="FD" ordered="1" restricted="0"> <failoverdomainnode name="neo-01" priority="1"/> <failoverdomainnode name="neo-02" priority="2"/> </failoverdomain> </failoverdomains> <resources> <lvm name="lvm" vg_name="shared_vg" lv_name="ha-lv"/> <fs name="FS" device="/dev/shared_vg/ha-lv" force_fsck="0" force_unmount="1" fsid="64050" fstype="ext4" mountpoint="/mnt" options="" self_fence="0"/> </resources> <service autostart="1" domain="FD" name="serv" recovery="relocate"> <lvm ref="lvm"/> <fs ref="FS"/> </service> </rm>
F.2. Configurando um Failover de HA-LVM com a Marcação
/etc/lvm/lvm.conf
, realize os seguintes passos:
- Certifique-se de que o parâmetro
locking_type
na seção global do arquivo/etc/lvm/lvm.conf
é definida para valor '1'. - Crie um volume lógico e sistema de arquivo utilizando o LVM padrão e comandos de sistema de arquivo, como no exemplo a seguir.
#
pvcreate /dev/sd[cde]1
#vgcreate shared_vg /dev/sd[cde]1
#lvcreate -L 10G -n ha_lv shared_vg
#mkfs.ext4 /dev/shared_vg/ha_lv
Para informações sobre como criar os volumes lógicos LVM, consulte o Logical Volume Manager Administration. - Edite o arquivo
/etc/cluster/cluster.conf
para incluir um volume lógico recente como um recurso em um dos seus serviços. Como forma alternativa, você pode utilizar o Conga ou occs
para configurar o LVM e recursos de sistema de arquivo para o cluster. Segue um exemplo de seção de gerenciador de recurso do arquivo/etc/cluster/cluster.conf
que configura um volume lógico CLVM como um recurso de cluster:<rm> <failoverdomains> <failoverdomain name="FD" ordered="1" restricted="0"> <failoverdomainnode name="neo-01" priority="1"/> <failoverdomainnode name="neo-02" priority="2"/> </failoverdomain> </failoverdomains> <resources> <lvm name="lvm" vg_name="shared_vg" lv_name="ha_lv"/> <fs name="FS" device="/dev/shared_vg/ha_lv" force_fsck="0" force_unmount="1" fsid="64050" fstype="ext4" mountpoint="/mnt" options="" self_fence="0"/> </resources> <service autostart="1" domain="FD" name="serv" recovery="relocate"> <lvm ref="lvm"/> <fs ref="FS"/> </service> </rm>
Nota
Se houver volumes lógicos múltiplos no grupo de volume, então o nome do volume lógico (lv_name
) no recursolvm
deve ser deixado em branco ou não especificado. Também observe que em uma configuração HA-LVM, um grupo de volume pode ser usado por somente um único serviço. - Edite o campo
volume_list
no arquivo/etc/lvm/lvm.conf
. Inclua o nome de seu grupo de volume root e seu hostname como listado no arquivo/etc/cluster/cluster.conf
precedido por um @. O hostname a ser incluído aqui, é a máquina na qual você está editando o arquivolvm.conf
, e não qualquer hostname remoto. Observe, que esta faixa DEVE coincidir com o nome do nó dado no arquivocluster.conf
. Segue abaixo uma entrada de exemplo do arquivo/etc/lvm/lvm.conf
:volume_list = [ "VolGroup00", "@neo-01" ]
Esta marcação será usada para ativar VGs ou LVs compartilhados. Não inclua os nomes de qualquer grupo de volume que forem compartilhados utilizando o HA-LVM. - Atualize o dispositivo
initrd
em todos os nós de cluster:#
dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
- Reinicialize todos os nós para certificar-se de que o dispositivo correto
initrd
está sendo usado:
Apêndice G. Histórico de Revisões
Histórico de Revisões | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Revisão 5.0-25.3.400 | 2013-10-31 | Rüdiger Landmann | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-25.3 | Mon Apr 29 2013 | Glaucia Cintra | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-25.2 | Mon Apr 29 2013 | Glaucia Cintra | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-25.1 | Thu Apr 18 2013 | Chester Cheng | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-25 | Mon Feb 18 2013 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-23 | Wed Jan 30 2013 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-22 | Tue Jan 29 2013 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-20 | Fri Jan 18 2013 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-19 | Thu Jan 17 2013 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-16 | Mon Nov 26 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-15 | Wed Nov 20 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-12 | Thu Nov 1 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-7 | Thu Oct 25 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-6 | Tue Oct 23 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-4 | Tue Oct 16 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-2 | Thu Oct 11 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 5.0-1 | Mon Oct 8 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 4.0-5 | Fri Jun 15 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 4.0-4 | Tue Jun 12 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 4.0-3 | Tue May 21 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 4.0-2 | Wed Apr 25 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 4.0-1 | Fri Mar 30 2012 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 3.0-5 | Thu Dec 1 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 3.0-4 | Mon Nov 7 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 3.0-3 | Fri Oct 21 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 3.0-2 | Fri Oct 7 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 3.0-1 | Wed Sep 28 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 2.0-1 | Thu May 19 2011 | Steven Levine | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Revisão 1.0-1 | Wed Nov 10 2010 | Paul Kennedy | |||||||||||||||||||||||||||||
|
Índice Remissivo
A
- ACPI
- administração de cluster
- configurando iptables, Habilitando Portas IP
- considerações gerais, Considerações Gerais de Configuração
- diagnosticando e corrigindo problemas em um cluster, Diagnosticando e Corrigindo Problemas em um Cluster, Diagnosticando e Corrigindo Problemas em um Cluster
- endereços multicast e switches de rede, Endereços Multicast
- habilitando portas IP, Habilitando Portas IP
- hardware compatívies, Hardware Compatíveis
- máquinas virtuais, Configurando as Máquinas Virtuais em um Ambiente Cluster
- SELinux, Complemento de Alta Disponibilidade Red Hat e o SELinux
- validação de configuração, Validação de Configuração
- administração do cluster, Antes de configurar o Complemento de Alta Disponibilidade da Red Hat, Gerenciando o Complemento de Alta Disponibilidade Red Hat com o Conga, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com Ferramentas da Linha de Comando.
- adicionar cluster ao nó, Adicionar um Membro a um Cluster em Execução, Adicionar um Membro a um Cluster em Execução
- atualizando a configuração, Atualizando uma Configuração
- atualizando a configuração de cluster usando o scp, Atualizar a Configuração Usando o scp
- atualizando uma configuração de cluster usando o cman_tool version -r, Atualizando uma Configuração Usando o cman_tool version -r
- configurando o ACPI, Configurando o ACPI para uso com dispositivos fence integrados
- considerações no sure de disco de quorum, Considerações para usar o Disco de Quorum
- considerações para usoqdisk, Considerações para usar o Disco de Quorum
- deletando um cluster, Iniciando, Parando, Reinicializando e Deletando Clusters
- excluir um nó da configuração; adicionando um nó à configuração, Deletando ou Adicionando um Nó
- exibindo serviços de Alta Disponibilidade com o clustat, Exibindo o Estado de Serviços de Alta Disponibilidade com o clustat.
- gerenciando serviços de alta disponibilidade, Gerenciando Serviços de Alta Disponibilidade, Gerenciando Serviços de Alta Disponibilidade
- gerenciando serviços de alta disponibilidade, congelar e descongelar, Gerenciando Serviços de Alta Disponibilidade com o clusvcadm, Considerações para Usar as Operações de Congelar (Freeze) e Descongelar (Unfreeze)
- gerenciando um nó no cluster, Gerenciando Nós no Cluster, Gerenciando Nós no Cluster
- iniciando um cluster, Iniciando, Parando, Reinicializando e Deletando Clusters, Iniciando e Parando um Cluster
- iniciando, parando, reinicializando um cluster, Iniciar e Parar o Software de Cluster
- parando um cluster, Iniciando, Parando, Reinicializando e Deletando Clusters, Iniciando e Parando um Cluster
- reiniciando um cluster, Iniciando, Parando, Reinicializando e Deletando Clusters
- remover um nó do cluster, Excluindo um Membro de um Cluster
- ricci considerações, Considerações para o ricci
- saindo de um cluster, Faz um nó sair ou se juntar a um Cluster, Faz um nó sair ou se juntar a um Cluster
- se juntar a um cluster, Faz um nó sair ou se juntar a um Cluster, Faz um nó sair ou se juntar a um Cluster
- administrador do cluster
- NetworkManager, Considerações para o NetworkManager
- admnistração do cluster
- reinicializando um nó no cluster, Reinicializando um Nó no Cluster
- APC power switch over telnet/SSH fence device , Parâmetros de Dispositos Fence
C
- cluster
- administração, Antes de configurar o Complemento de Alta Disponibilidade da Red Hat, Gerenciando o Complemento de Alta Disponibilidade Red Hat com o Conga, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com o ccs, Gerenciando o Complemento de Alta Disponibilidade da Red Hat com Ferramentas da Linha de Comando.
- diagnosticando e corrigindo problemas, Diagnosticando e Corrigindo Problemas em um Cluster, Diagnosticando e Corrigindo Problemas em um Cluster
- iniciando, parando, reinicializando, Iniciar e Parar o Software de Cluster
- cluster software
- configuração
- serviço HA, Considerações para Configurar Serviços HA
- configuração do cluster, Configurando o Complemento de Alta Disponibilidade da Red Hat com o Conga, Configurando o Complemento de Alta Disponibilidade da Red Hat com o comando ccs, Configurando o Complemento de Alta Disponibilidade da Red Hat com as Ferramentas da Linha de Comando
- atualização, Atualizando uma Configuração
- deletar ou adicionar um nó, Deletando ou Adicionando um Nó
- Configuração do Serviço HA
- visão geral, Considerações para Configurar Serviços HA
- Configurando LVM de Alta Disponibilidade, Alta Disponibilidade LVM (HA-LVM)
- Conga
D
- disco de quorum
- considerações para uso, Considerações para usar o Disco de Quorum
- dispositivo fence DRAC 5, Parâmetros de Dispositos Fence
- dispositivos fence
- IBM BladeCenter SNMP, Parâmetros de Dispositos Fence
- dispositivos fence - Fence virt, Parâmetros de Dispositos Fence
- dispositivos fence CISCO MDS, Parâmetros de Dispositos Fence
- dispositivos fence Cisco UCS, Parâmetros de Dispositos Fence
- dispositivos fence de controlador Egenera SAN, Parâmetros de Dispositos Fence
- dispositivos fence ePowerSwitch, Parâmetros de Dispositos Fence
- dispositivos fence integrados
- configurando ACPI, Configurando o ACPI para uso com dispositivos fence integrados
E
- Eaton network power switch, Parâmetros de Dispositos Fence
- endereços multicast
- considerações para uso de switches de rede e endereços multicast, Endereços Multicast
- expiração de failover, Checagem de Recursos de Serviço de Cluster e Expiração de Failover
- expirar failover, Checagem de Recursos de Serviço de Cluster e Expiração de Failover
F
- feedback, Feedback
- fence agent
- fence_apc, Parâmetros de Dispositos Fence
- fence_apc_snmp, Parâmetros de Dispositos Fence
- fence_bladecenter, Parâmetros de Dispositos Fence
- fence_brocade, Parâmetros de Dispositos Fence
- fence_cisco_mds, Parâmetros de Dispositos Fence
- fence_cisco_ucs, Parâmetros de Dispositos Fence
- fence_drac5, Parâmetros de Dispositos Fence
- fence_eaton_snmp, Parâmetros de Dispositos Fence
- fence_egenera, Parâmetros de Dispositos Fence
- fence_eps, Parâmetros de Dispositos Fence
- fence_hpblade, Parâmetros de Dispositos Fence
- fence_ibmblade, Parâmetros de Dispositos Fence
- fence_ifmib, Parâmetros de Dispositos Fence
- fence_ilo, Parâmetros de Dispositos Fence
- fence_ilo_mp, Parâmetros de Dispositos Fence
- fence_intelmodular, Parâmetros de Dispositos Fence
- fence_ipdu, Parâmetros de Dispositos Fence
- fence_ipmilan, Parâmetros de Dispositos Fence
- fence_rhevm, Parâmetros de Dispositos Fence
- fence_rsb, Parâmetros de Dispositos Fence
- fence_scsi, Parâmetros de Dispositos Fence
- fence_virt, Parâmetros de Dispositos Fence
- fence_vmware_soap, Parâmetros de Dispositos Fence
- fence_wti, Parâmetros de Dispositos Fence
- fence device
- APC power switch over SNMP, Parâmetros de Dispositos Fence
- Brocade fabric switch, Parâmetros de Dispositos Fence
- Cisco MDS, Parâmetros de Dispositos Fence
- Cisco UCS, Parâmetros de Dispositos Fence
- Dell DRAC 5, Parâmetros de Dispositos Fence
- Eaton network power switch, Parâmetros de Dispositos Fence
- Egenera SAN controller, Parâmetros de Dispositos Fence
- ePowerSwitch, Parâmetros de Dispositos Fence
- Fence virt, Parâmetros de Dispositos Fence
- Fujitsu Siemens Remoteview Service Board (RSB), Parâmetros de Dispositos Fence
- HP BladeSystem, Parâmetros de Dispositos Fence
- HP iLO MP, Parâmetros de Dispositos Fence
- HP iLO/iLO2, Parâmetros de Dispositos Fence
- IBM BladeCenter, Parâmetros de Dispositos Fence
- IBM iPDU, Parâmetros de Dispositos Fence
- IF MIB, Parâmetros de Dispositos Fence
- Intel Modular, Parâmetros de Dispositos Fence
- interruptor de energia APC sob telnet/SSH, Parâmetros de Dispositos Fence
- IPMI LAN, Parâmetros de Dispositos Fence
- RHEV-M REST API, Parâmetros de Dispositos Fence
- SCSI fencing, Parâmetros de Dispositos Fence
- VMware (SOAP interface), Parâmetros de Dispositos Fence
- WTI power switch, Parâmetros de Dispositos Fence
- fence_apc fence agent, Parâmetros de Dispositos Fence
- fence_apc_snmp fence agent, Parâmetros de Dispositos Fence
- fence_bladecenter fence agent, Parâmetros de Dispositos Fence
- fence_brocade fence agent, Parâmetros de Dispositos Fence
- fence_cisco_mds fence agent, Parâmetros de Dispositos Fence
- fence_cisco_ucs fence agent, Parâmetros de Dispositos Fence
- fence_drac5 fence agent, Parâmetros de Dispositos Fence
- fence_eaton_snmp fence agent, Parâmetros de Dispositos Fence
- fence_egenera fence agent, Parâmetros de Dispositos Fence
- fence_eps fence agent, Parâmetros de Dispositos Fence
- fence_hpblade fence agent, Parâmetros de Dispositos Fence
- fence_ibmblade fence agent, Parâmetros de Dispositos Fence
- fence_ifmib fence agent, Parâmetros de Dispositos Fence
- fence_ilo fence agent, Parâmetros de Dispositos Fence
- fence_ilo_mp fence agent, Parâmetros de Dispositos Fence
- fence_intelmodular fence agent, Parâmetros de Dispositos Fence
- fence_ipdu fence agent, Parâmetros de Dispositos Fence
- fence_ipmilan fence agent, Parâmetros de Dispositos Fence
- fence_rhevm fence agent, Parâmetros de Dispositos Fence
- fence_rsb fence agent, Parâmetros de Dispositos Fence
- fence_scsi fence agent, Parâmetros de Dispositos Fence
- fence_virt fence agent, Parâmetros de Dispositos Fence
- fence_vmware_soap fence agent, Parâmetros de Dispositos Fence
- fence_wti fence agent, Parâmetros de Dispositos Fence
- ferramentas, linha de comando, Resumo das Ferramentas da Linha de Comando
- Fujitsu Siemens Remoteview Service Board (RSB) fence device, Parâmetros de Dispositos Fence
G
- gerais
- considerações para administração de cluster, Considerações Gerais de Configuração
- gerenciadores de serviço de cluster
- configuração, Adicionando um Serviço de Cluster ao Cluster
- gerenciadores do serviço de cluster
H
- hardware
- compatível, Hardware Compatíveis
- HP Bladesystem fence device , Parâmetros de Dispositos Fence
- HP iLO MP fence device , Parâmetros de Dispositos Fence
- HP iLO/iLO2 fence device, Parâmetros de Dispositos Fence
I
- IBM BladeCenter fence device , Parâmetros de Dispositos Fence
- IBM BladeCenter SNMP fence device , Parâmetros de Dispositos Fence
- IBM iPDU fence device , Parâmetros de Dispositos Fence
- IF MIB fence device , Parâmetros de Dispositos Fence
- Intel Modular fence device , Parâmetros de Dispositos Fence
- interruptor de dispositivos fence de energia WTI, Parâmetros de Dispositos Fence
- Interruptor de energia APC sob SNMP dipositivo fence , Parâmetros de Dispositos Fence
- interruptor dispositivos fence Brocade fabric, Parâmetros de Dispositos Fence
- introdução, Introdução
- outros documentos Red Hat Enterprise Linux, Introdução
- IPMI LAN fence device , Parâmetros de Dispositos Fence
- iptables
- configurando, Habilitando Portas IP
- iptables firewall, Configurando o Firewall iptables para Permitir Componentes do Cluster.
L
- LVM, Alta Disponibilidade, Alta Disponibilidade LVM (HA-LVM)
M
- máquinas virtuais em um cluster, Configurando as Máquinas Virtuais em um Ambiente Cluster
N
- NetworkManager
- desabilitar para uso com cluster, Considerações para o NetworkManager
P
- parâmetros, dispositivos fence, Parâmetros de Dispositos Fence
- parâmetros, recursos HA, Parâmetros dos Recursos de Alta Disponibilidade
- portas IP
- habilitando, Habilitando Portas IP
Q
- qdisk
- considerações para uso, Considerações para usar o Disco de Quorum
R
- Recursos HA, comportamento, Comportamento do Recurso de Alta Disponibilidade
- recursos novos e modificados, Recursos Novos e Modificados
- relacionamentos
- recurso de cluster, Relacionamentos de níveis Pai, Filho e Irmãos entre Recursos
- relacionamentos de recursos de cluster, Relacionamentos de níveis Pai, Filho e Irmãos entre Recursos
- RHEV-M REST API fence device , Parâmetros de Dispositos Fence
- ricci
- considerações para administração do cluster, Considerações para o ricci
S
- SCSI fencing, Parâmetros de Dispositos Fence
- SELinux
- configurando, Complemento de Alta Disponibilidade Red Hat e o SELinux
- serviços de cluster, Adicionar um Serviço de Cluster ao Cluster, Adicionando um Serviço de Cluster ao Cluster, Adicionar um Serviço de Cluster ao Cluster
- (ver também adicionando à configuração do cluster)
- (ver também adicionar às configurações de cluster)
- solução de problemas
- diagnosticando e corrigindo problemas em um cluster, Diagnosticando e Corrigindo Problemas em um Cluster, Diagnosticando e Corrigindo Problemas em um Cluster
T
- tabelas
- dispositivos de fence, parâmetros, Parâmetros de Dispositos Fence
- recursos HA, parâmetros, Parâmetros dos Recursos de Alta Disponibilidade
- tipos
- recursos de cluster, Considerações para Configurar Serviços HA
- tipos de recursos de cluster, Considerações para Configurar Serviços HA
- totem tag
- valor consensus, O valor concensus para o totem em um cluster de dois nós.
- tráfego do multicast, habilitando, Configurando o Firewall iptables para Permitir Componentes do Cluster.
V
- validação
- configuração de cluster, Validação de Configuração
- valor concensus, O valor concensus para o totem em um cluster de dois nós.
- verificação de estado do recurso de cluster, Checagem de Recursos de Serviço de Cluster e Expiração de Failover
- verificação de estado, recurso de cluster, Checagem de Recursos de Serviço de Cluster e Expiração de Failover
- visão geral
- recursos novos e modificados, Recursos Novos e Modificados
- VMware (SOAP interface) fence device , Parâmetros de Dispositos Fence