Capítulo 5. Configuração de um servidor HTTP Apache ativo/passivo em um cluster Red Hat High Availability
O seguinte procedimento configura um servidor Apache HTTP ativo/passivo em um cluster de dois nós Red Hat Enterprise Linux High Availability Add-On usando pcs
para configurar recursos de cluster. Neste caso de uso, os clientes acessam o servidor Apache HTTP através de um endereço IP flutuante. O servidor web roda em um dos dois nós do cluster. Se o nó no qual o servidor web está rodando ficar inoperante, o servidor web inicia novamente no segundo nó do cluster com interrupção mínima do serviço.
Figura 5.1, “Apache em um grupo de dois nós de alta disponibilidade de chapéu vermelho” mostra uma visão geral de alto nível do cluster no qual O cluster é um cluster de dois nós Red Hat High Availability configurado com um switch de energia de rede e com armazenamento compartilhado. Os nós do cluster são conectados a uma rede pública, para acesso do cliente ao servidor HTTP Apache através de um IP virtual. O servidor Apache roda no Nó 1 ou no Nó 2, cada um dos quais tem acesso ao armazenamento no qual os dados do Apache são mantidos. Nesta ilustração, o servidor web está rodando no Nó 1, enquanto o Nó 2 está disponível para rodar o servidor caso o Nó 1 se torne inoperante.
Figura 5.1. Apache em um grupo de dois nós de alta disponibilidade de chapéu vermelho
Este caso de uso requer que seu sistema inclua os seguintes componentes:
- Um cluster de dois nós Red Hat High Availability com vedação de energia configurada para cada nó. Recomendamos, mas não exigimos uma rede privada. Este procedimento utiliza o exemplo de cluster fornecido em Criar um cluster Red Hat High-Availability com Pacemaker.
- Um endereço IP virtual público, necessário para o Apache.
- Armazenamento compartilhado para os nós do cluster, utilizando iSCSI, Fibre Channel ou outro dispositivo de bloco de rede compartilhado.
O cluster é configurado com um grupo de recursos Apache, que contém os componentes do cluster que o servidor web requer: um recurso LVM, um recurso de sistema de arquivos, um recurso de endereço IP e um recurso de servidor web. Este grupo de recursos pode falhar de um nó do cluster para o outro, permitindo que qualquer um dos nós execute o servidor web. Antes de criar o grupo de recursos para este cluster, você estará executando os seguintes procedimentos:
-
Configurar um sistema de arquivo
ext4
no volume lógicomy_lv
. - Configurar um servidor web.
Depois de executar estas etapas, você cria o grupo de recursos e os recursos que ele contém.
5.1. Configuração de um volume LVM com um sistema de arquivo ext4 em um cluster Pacemaker
Este caso de uso requer a criação de um volume lógico LVM no armazenamento que é compartilhado entre os nós do cluster.
Os volumes LVM e as partições e dispositivos correspondentes usados pelos nós de cluster devem ser conectados somente aos nós de cluster.
O procedimento seguinte cria um volume lógico LVM e depois cria um sistema de arquivo ext4 nesse volume para uso em um cluster de Pacemaker. Neste exemplo, a partição compartilhada /dev/sdb1
é usada para armazenar o volume físico LVM a partir do qual o volume lógico LVM será criado.
Em ambos os nós do cluster, executar os seguintes passos para definir o valor para o ID do sistema LVM para o valor do identificador
uname
para o sistema. O ID do sistema LVM será usado para garantir que somente o cluster seja capaz de ativar o grupo de volume.Defina a opção de configuração
system_id_source
no arquivo de configuração/etc/lvm/lvm.conf
parauname
.# Configuration option global/system_id_source. system_id_source = "uname"
Verificar se o ID do sistema LVM no nó corresponde ao
uname
para o nó.#
lvm systemid
system ID: z1.example.com #uname -n
z1.example.com
Criar o volume LVM e criar um sistema de arquivo ext4 sobre esse volume. Uma vez que a partição
/dev/sdb1
é o armazenamento compartilhado, esta parte do procedimento é realizada em apenas um nó.Criar um volume físico LVM na partição
/dev/sdb1
.#
pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully createdCriar o grupo de volume
my_vg
que consiste no volume físico/dev/sdb1
.#
vgcreate my_vg /dev/sdb1
Volume group "my_vg" successfully createdVerifique se o novo grupo de volume tem a identificação do sistema do nó no qual você está rodando e a partir do qual você criou o grupo de volume.
#
vgs -o+systemid
VG #PV #LV #SN Attr VSize VFree System ID my_vg 1 0 0 wz--n- <1.82t <1.82t z1.example.comCriar um volume lógico utilizando o grupo de volume
my_vg
.#
lvcreate -L450 -n my_lv my_vg
Rounding up size to full physical extent 452.00 MiB Logical volume "my_lv" createdVocê pode usar o comando
lvs
para exibir o volume lógico.#
lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert my_lv my_vg -wi-a---- 452.00m ...Criar um sistema de arquivo ext4 no volume lógico
my_lv
.#
mkfs.ext4 /dev/my_vg/my_lv
mke2fs 1.44.3 (10-July-2018) Creating filesystem with 462848 1k blocks and 115824 inodes ...