Capítulo 47. Começando com Pacemaker
Os seguintes procedimentos fornecem uma introdução às ferramentas e processos que você utiliza para criar um cluster Pacemaker. Eles são destinados aos usuários que estão interessados em ver como é o software do cluster e como ele é administrado, sem a necessidade de configurar um cluster funcional.
Estes procedimentos não criam um cluster Red Hat suportado, que requer pelo menos dois nós e a configuração de um dispositivo de esgrima.
47.1. Aprendendo a usar o Pacemaker Copiar o linkLink copiado para a área de transferência!
Este exemplo requer um único nó rodando RHEL 8 e requer um endereço IP flutuante que reside na mesma rede que um dos endereços IP atribuídos estaticamente a um dos nós.
-
O nó utilizado neste exemplo é
z1.example.com
. - O endereço IP flutuante usado neste exemplo é 192.168.122.120.
Certifique-se de que o nome do nó em que você está rodando esteja em seu arquivo /etc/hosts
.
Trabalhando através deste procedimento, você aprenderá como usar o Pacemaker para configurar um cluster, como exibir o status do cluster, e como configurar um serviço de cluster. Este exemplo cria um servidor HTTP Apache como um recurso de cluster e mostra como o cluster responde quando o recurso falha.
Instale os pacotes de software Red Hat High Availability Add-On a partir do canal High Availability, e inicie e habilite o serviço
pcsd
.yum install pcs pacemaker fence-agents-all systemctl start pcsd.service systemctl enable pcsd.service
# yum install pcs pacemaker fence-agents-all ... # systemctl start pcsd.service # systemctl enable pcsd.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Se você estiver rodando o daemon
firewalld
, habilite os portos que são exigidos pelo suplemento de alta disponibilidade da Red Hat.firewall-cmd --permanent --add-service=high-availability firewall-cmd --reload
# firewall-cmd --permanent --add-service=high-availability # firewall-cmd --reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Defina uma senha para o usuário
hacluster
em cada nó do cluster e autentique o usuáriohacluster
para cada nó do cluster no nó a partir do qual você executará os comandospcs
. Este exemplo está usando apenas um único nó, o nó a partir do qual você está executando os comandos, mas esta etapa está incluída aqui uma vez que é uma etapa necessária na configuração de um cluster multi-nó de alta disponibilidade compatível com a Red Hat High Availability.passwd hacluster pcs host auth z1.example.com
# passwd hacluster ... # pcs host auth z1.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Criar um agrupamento chamado
my_cluster
com um membro e verificar o status do agrupamento. Este comando cria e inicia o agrupamento em uma única etapa.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Um aglomerado Red Hat High Availability requer que você configure a vedação para o aglomerado. As razões para esta exigência estão descritas em Esgrima em um Aglomerado de Alta Disponibilidade da Red Hat. Para esta introdução, entretanto, que se destina a mostrar apenas como usar os comandos básicos do Marcapasso, desabilite o cercado definindo a opção de cercado do
stonith-enabled
parafalse
.AtençãoO uso do
stonith-enabled=false
é completamente inadequado para um cluster de produção. Ele diz ao aglomerado para simplesmente fingir que os nós falhados estão cercados com segurança.pcs property set stonith-enabled=false
# pcs property set stonith-enabled=false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configure um navegador web em seu sistema e crie uma página web para exibir uma simples mensagem de texto. Se você estiver executando o daemon
firewalld
, habilite as portas que são exigidas porhttpd
.NotaNão utilize
systemctl enable
para permitir que quaisquer serviços que serão gerenciados pelo cluster comecem na inicialização do sistema.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Para que o agente de recursos Apache obtenha o status do Apache, crie a seguinte adição à configuração existente para habilitar a URL do servidor de status.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Crie recursos para o cluster
IPaddr2
eapache
para gerenciá-lo. O recurso 'IPaddr2' é um endereço IP flutuante que não deve ser um já associado a um nó físico. Se o dispositivo NIC do recurso 'IPaddr2' não for especificado, o IP flutuante deve residir na mesma rede que o endereço IP estaticamente atribuído usado pelo nó.Você pode exibir uma lista de todos os tipos de recursos disponíveis com o comando
pcs resource list
. Você pode usar o comandopcs resource describe resourcetype
para exibir os parâmetros que você pode definir para o tipo de recurso especificado. Por exemplo, o seguinte comando exibe os parâmetros que você pode definir para um recurso do tipoapache
:pcs resource describe apache
# pcs resource describe apache ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Neste exemplo, o recurso de endereço IP e o recurso apache são ambos configurados como parte de um grupo chamado
apachegroup
, o que garante que os recursos sejam mantidos juntos para funcionar no mesmo nó quando você estiver configurando um cluster de vários nós em funcionamento.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Após ter configurado um recurso de cluster, você pode usar o comando
pcs resource config
para exibir as opções que estão configuradas para aquele recurso.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Aponte seu navegador para o site que você criou usando o endereço IP flutuante que você configurou. Isto deve exibir a mensagem de texto que você definiu.
Pare o serviço web apache e verifique o status do cluster. O uso do
killall -9
simula uma falha no nível de aplicação.killall -9 httpd
# killall -9 httpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Verifique o status do agrupamento. Você deve ver que parar o serviço web causou uma ação falhada, mas que o software de cluster reiniciou o serviço e você ainda deve ser capaz de acessar o site.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Você pode limpar o status de falha no recurso que falhou uma vez que o serviço esteja funcionando novamente e o aviso de falha de ação não aparecerá mais quando você visualizar o status do cluster.
pcs resource cleanup WebSite
# pcs resource cleanup WebSite
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Quando terminar de olhar o agrupamento e o status do agrupamento, pare os serviços de agrupamento no nó. Embora você só tenha iniciado os serviços em um nó para esta introdução, o parâmetro
--all
está incluído, pois pararia os serviços de cluster em todos os nós de um cluster real de vários nós.pcs cluster stop --all
# pcs cluster stop --all
Copy to Clipboard Copied! Toggle word wrap Toggle overflow