8. Adição de novos servidores ao GlusterFS
O serviço GlusterFS é bastante flexível, podendo-se adicionar/remover Servidores ao Cluster de armazenamento a qualquer momento. Este capítulo descreve como novos Hosts podem ser adicionados, sendo importante caso a implementação da solução deste manual tenha tenha seguido o tópico 7.2. CRIAÇÃO DO VOLUME DO TIPO DISTRIBUÍDO EM 1 SERVIDOR.
Caso se tenha seguido o tópico 7.1. CRIAÇÃO DO VOLUME DO TIPO REPLICADO NOS 3 SERVIDORES esse capítulo é desnecessário, a não ser que se deseje adicionar um 4 Servidor ao Cluster.
Para os comandos seguintes será considerado que a etapa do tópico 7.2. CRIAÇÃO DO VOLUME DO TIPO DISTRIBUÍDO EM 1 SERVIDOR foi realizada no Host 1, e que o Host 2 e o Host 3 serão adicionados ao volume GlusterFS já configurado no primeiro, formando então o Cluster de armazenamento Hiperconvergente da solução deste manual. Considera-se ainda que Hosts 2 e 3 estão prontos para fazer parte do Cluster, com todas as etapas dos capítulos de 1 ao 6 executadas neles.
No Servidor 1 deve ser executados os comandos a seguir.
Para verificar que há somente 1 servidor no pool do Gluster do Host 1:
gluster pool list
gluster peer status
Mostrará o seguinte resultado:
UUID Hostname State
f65851be-3a13-4e43-9ba3-45a9054c4e5a localhost Connected
Number of Peers: 0
Para adicionar os demais hosts ao pool:
gluster peer probe gluster2.reitoria.ifsertao-pe.edu.br
gluster peer probe gluster3.reitoria.ifsertao-pe.edu.br
Verificar novamente o pool do Gluster:
gluster pool list
gluster peer status
Mostrará o seguinte resultado:
9e90a572-3d33-458e-a202-f0d9be1054bb gluster2.reitoria.ifsertao-pe.edu.br Connected
06e41fd6-88fd-4c70-afca-e9b5ca80c144 gluster3.reitoria.ifsertao-pe.edu.br Connected
989a97bc-3743-48e3-864f-f226369610ce localhost
Number of Peers: 3
Agora, é interessante verificar também o Volume configurado anteriormente no Host 1:
gluster volume info
Mostrará o volume "VMS" do tipo "Distribute" com somente 1 brick correspondente ao Host 1, pois o volume Gluster ainda não foi configurado com os novos Servidores. Apenas a conexão entre eles foi feita nos comandos anteriores:
Volume Name: VMS
Type: Distribute
Volume ID: ...
Status: Started
Snapshot Count: 0
Number of Bricks: 1
Transport-type: tcp
Bricks:
Brick1: gluster1.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Options Reconfigured:
storage.fips-mode-rchecksum: on
transport.address-family: inet
nfs.disable: on
Os comandos seguintes configuram o volume para utilizar também os novos Servidores. É possível adicionar os outros 2 Hosts simultaneamente ou 1 após o outro. Em ambos os casos, com os comandos a seguir o volume será convertido do tipo Distribuído para o tipo Replicado.
Adição simultânea:
gluster volume add-brick VMS replica 3 gluster2.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms gluster3.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Adição separada:
gluster volume add-brick VMS replica 2 gluster2.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
gluster volume add-brick VMS replica 3 gluster3.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Para conferir o volume:
gluster volume info
Mostrará:
Volume Name: VMS
Type: Replicate
Volume ID: 632140b2-528a-40d1-a075-dc460b2ec023
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 3 = 3
Transport-type: tcp
Bricks:
Brick1: gluster1.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Brick2: gluster2.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Brick3: gluster3.reitoria.ifsertao-pe.edu.br:/mnt/lv/vmstg/vms
Options Reconfigured:
cluster.granular-entry-heal: on
storage.fips-mode-rchecksum: on
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off
Neste ponto o volume "VMS" está montado somente no Host 1 e a réplica não funcionará. É necessário realizar ainda algumas configurações, agora nos 3 Hosts do Cluster:
No Host 1:
Desmontar o volume.
umount /vms
Editar o arquivo /etc/fstab e substituir a linha:
gluster1:VMS /vms glusterfs defaults,_netdev,x-systemd.automount 0 0
Para:
gluster1:VMS /vms glusterfs defaults,_netdev,x-systemd.automount,backupvolfile-server=gluster2,backupvolfile-server=gluster3 0 0
Realizar a montagem novamente e verificar se montou com sucesso:
mount -a
df -h
Mostrará o seguinte resultado:
...
gluster1:VMS 2.0T 35G 2.0T 2% /vms
No Host 2:
Deve-se criar o ponto de montagem:
mkdir -p /vms
Deve-se configurar em seguida a montagem automática no boot do sistema, executando o seguinte comando:
echo "host2:VMS /vms glusterfs defaults,_netdev,x-systemd.automount,backupvolfile-server=gluster1,backupvolfile-server=gluster3 0 0" >> /etc/fstab
Realizar a montagem em si e verificar se montou com sucesso:
mount -a
df -h
Mostrará o seguinte resultado:
...
gluster2:VMS 2.0T 35G 2.0T 2% /vms
No Host 3:
Criar o ponto de montagem:
mkdir -p /vms
Configurar em seguida a montagem automática no boot do sistema:
echo "gluster3:VMS /vms glusterfs defaults,_netdev,x-systemd.automount,backupvolfile-server=gluster1,backupvolfile-server=gluster2 0 0" >> /etc/fstab
Realizar a montagem em si e verificar se montou com sucesso:
mount -a
df -h
Mostrará o seguinte resultado:
...
gluster3:VMS 2.0T 35G 2.0T 2% /vms
Com isso o Cluster de armazenamento hiperconvegente está configurado e pronto para uso. Contudo, ainda é necessário realizar o procedimento do capítulo seguinte para que o Proxmox possa usar ele de fato.