Debian Cluster CEPH: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
| (Uma revisão intermediária pelo mesmo usuário não está sendo mostrada) | |||
| Linha 1: | Linha 1: | ||
== Introdução == | == Introdução == | ||
Este artigo tem como foco explicar como adicionar um Debian GNU/Linux em um Proxmox Cluster + HA com 2 nodes. Como muitos sabem, um '''Cluster''' deve ser composto de no '''mínimo 3 nodes''' para que possa dar segurança, existir '''quorum''' e quando usamos '''CEPH''' também precisamos de pelo menos 3 '''OSDs''' para termos uma estabilidade e segurança no sistema. O problema é quando se quer fazer isso com apenas 2 servidores Proxmox. Comprar um terceiro servidor às vezes ainda não está nos planos mas você tem uma máquina parada, onde você pode adicionar 2 SSDs e com 4G de ram você pode adicionar ela no '''Cluster''' para servir de quorum e de disco '''CEPH'''. Dessa maneira você consegue com 2 servidores '''Proxmox''' e uma máquina que chamei de '''Quorum Device''', colocar em produção um Cluster com HA funcional. | Este artigo tem como foco explicar como adicionar um Debian GNU/Linux em um Proxmox Cluster + HA com 2 nodes. Como muitos sabem, um '''Cluster''' deve ser composto de no '''mínimo 3 nodes''' para que possa dar segurança, existir '''quorum''' e quando usamos '''CEPH''' também precisamos de pelo menos 3 nodes com '''OSDs''' para termos uma estabilidade e segurança no sistema. O problema é quando se quer fazer isso com apenas 2 servidores Proxmox. Comprar um terceiro servidor às vezes ainda não está nos planos mas você tem uma máquina parada, onde você pode adicionar 2 SSDs e com 4G de ram você pode adicionar ela no '''Cluster''' para servir de quorum e de disco '''CEPH'''. Dessa maneira você consegue com 2 servidores '''Proxmox''' e uma máquina que chamei de '''Quorum Device''', colocar em produção um Cluster com HA funcional. | ||
== Diagrama == | == Diagrama == | ||
| Linha 97: | Linha 97: | ||
Se aparecer algo assim então parabéns, até aqui foi tudo OK: | Se aparecer algo assim então parabéns, até aqui foi tudo OK: | ||
[[Arquivo:Nodeq ceph.png|nenhum|miniaturadaimagem|806x806px]] | [[Arquivo:Nodeq ceph.png|nenhum|miniaturadaimagem|806x806px]]Volte no Proxmox PVE01 e altere o '''/etc/pve/ceph.conf''' modificando para: | ||
mon_host = 192.168.2.1 192.168.2.2 192.168.2.3 | |||
E adicionando no final do arquivo: | |||
[mon.nodeq] | |||
public_addr = 192.168.2.3 | |||
Agora ativamos, ainda no '''Proxmox PVE01''', o '''msgr2''': | |||
# ceph mon enable-msgr2 | |||
No Debian reinicie o serviço: | |||
# systemctl restart ceph-mon@nodeq | |||
No '''Proxmox''' em '''CEPH''' verá um novo Monitor adicionado: | |||
[[Arquivo:Mon ceph.png|nenhum|miniaturadaimagem|598x598px]] | |||
== Adicionando o OSD no Debian == | |||
Agora vamos aos procedimentos para usarmos aquele SSD como OSD no CEPH. Vamos supor que o '''SSD livre''' seja o '''/dev/sdb''': | |||
# apt install parted | |||
# parted /dev/sdb --script mklabel gpt | |||
# parted /dev/sdb --script \ | |||
mkpart primary 0% 100% | |||
Feito isso só precisamos criar o volume CEPH com o comando: | |||
# ceph-volume lvm create --data /dev/sdb1 | |||
Se tudo foi bem, nesse momento verá o '''OSD''' no seu '''Cluster Proxmox''': | |||
[[Arquivo:Osd img.png|nenhum|miniaturadaimagem|1234x1234px]] | |||
Olhando a saúde do nosso Cluster veremos: | |||
[[Arquivo:Resultado ceph.png|nenhum|miniaturadaimagem|1235x1235px]] | |||
== Conclusão == | |||
Aqui vemos em funcionamento um '''Cluster Proxmox + HA''' com 2 nós apenas e uma máquina Debian servindo como apoio no funcionamento e segurança do Cluster. | |||
Gostou do artigo? Compartilhe! | |||
Autor: [[Sobre mim|Marcelo Gondim]] | |||
[[Categoria:Artigos Técnicos]] | |||
Edição atual tal como às 23h33min de 8 de abril de 2026
Introdução
Este artigo tem como foco explicar como adicionar um Debian GNU/Linux em um Proxmox Cluster + HA com 2 nodes. Como muitos sabem, um Cluster deve ser composto de no mínimo 3 nodes para que possa dar segurança, existir quorum e quando usamos CEPH também precisamos de pelo menos 3 nodes com OSDs para termos uma estabilidade e segurança no sistema. O problema é quando se quer fazer isso com apenas 2 servidores Proxmox. Comprar um terceiro servidor às vezes ainda não está nos planos mas você tem uma máquina parada, onde você pode adicionar 2 SSDs e com 4G de ram você pode adicionar ela no Cluster para servir de quorum e de disco CEPH. Dessa maneira você consegue com 2 servidores Proxmox e uma máquina que chamei de Quorum Device, colocar em produção um Cluster com HA funcional.
Diagrama
O diagrama abaixo será o ambiente de exemplo mas não falaremos de como construir um Cluster + HA com Proxmox. Nesse caso você precisará ter os 2 servidores já instalados e configurados em Cluster com CEPH. Aqui vamos apenas mostrar como adicionar um Debian GNU/Linux nesse Cluster e no CEPH.

Pré-requisitos
- Debian GNU/Linux 13 (Trixie).
- Uma máquina com 4G ou 8G de ram.
- 1 SSD para instalar o sistema.
- 1 SSD para servir de OSD no CEPH.
- 3 interfaces de rede. Uma para o acesso, outra para o Cluster e outra para o CEPH.
Configurando o Qdevice no Debian
Uma vez instalado o Debian, precisamos configurar as 3 interfaces para a comunicação com seu Cluster Proxmox. Por exemplo:
- ens18 - IP 10.254.254.27/24 GW 10.254.254.1 (essa seria a interface com acesso à Internet para instalar os programas).
- ens19 - IP 192.168.1.3/24 (interface que deve se comunicar com a rede do Cluster, com os IPs dos nodes 192.168.1.1 e 192.168.1.2.
- ens20 - IP 192.168.2.3/24 (interface que se comunica com a rede CEPH, com os IPs 192.168.2.1 e 192.168.2.2.
Precisamos configurar o serviço SSHD para permitir conexão com root, pois o Proxmox vai precisar acessar o Debian. Para isso altere o arquivo /etc/ssh/sshd_config o parâmetro abaixo:
PermitRootLogin yes
Reinicie o serviço:
# systemctl restart sshd
No Debian vamos instalar o pacote corosync-qnetd:
# apt install corosync-qnetd
Nos dois servidores Proxmox, no nosso exemplo PVE01 e PVE02 instalaremos o pacote corosync-qdevice:
# apt install corosync-qdevice
Agora vá para o shell do seu Proxmox principal, no meu caso o PVE01 e adicione o Debian ao Cluster com o seguinte comando:
# pvecm qdevice setup 192.168.1.3
Com o comando pvecm status podemos ver como está o quorum e se tudo ocorreu bem, verá que agora temos 3 votos no lugar de 2 e um Qdevice no membership:

Agora em se tratando de Cluster, você tem o mínimo de votantes para o bom funcionamento e usando uma máquina simples com Debian.
Adicionando um CEPH monitor e OSD
Agora precisamos tornar nosso CEPH saudável também e para isso vamos instalar os pacotes do CEPH do Proxmox no Debian. O CEPH precisa ser da mesma versão usada no Cluster Proxmox. Para os meus testes utilizei um Cluster Proxmox 9 no PVE01 e PVE02 que utiliza o CEPH Squid 19.2. Então vamos adicionar o repositório:
# echo "deb http://download.proxmox.com/debian/ceph-squid trixie no-subscription" > /etc/apt/sources.list.d/ceph.list # wget https://enterprise.proxmox.com/debian/proxmox-release-trixie.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-trixie.gpg
Instalando os pacotes do CEPH:
# apt update # apt install ceph ceph-common
Antes de prosseguir adicione no /etc/hosts do Debian:
192.168.2.1 node1 192.168.2.2 node2 192.168.2.3 nodeq
Estou chamando nosso Quorum Device com o hostname nodeq.
Agora precisaremos executar algumas tarefas no nosso PVE01:
# ceph mon getmap -o /tmp/monmap # monmaptool \ --add nodeq 192.168.2.3:6789 \ /tmp/monmap
Vamos checar se adicionamos o nodeq ao monmap com o comando: monmaptool --print /tmp/monmap

Vamos gerar o keyring para usarmos no Debian:
# ceph auth get mon. -o /tmp/ceph.mon.keyring
Agora precisamos copiar todos os arquivos necessários do PVE01 para o nosso Debian:
# scp /tmp/monmap [email protected]:/etc/ceph/ # scp /tmp/ceph.mon.keyring [email protected]:/etc/ceph/ # scp /etc/pve/ceph.conf [email protected]:/etc/ceph/ # scp /etc/pve/priv/ceph.client.admin.keyring [email protected]:/etc/ceph/ # scp /var/lib/ceph/bootstrap-osd/ceph.keyring \ [email protected]:/var/lib/ceph/bootstrap-osd/
Atenção agora pois vamos no nosso Debian alterar o arquivo /etc/ceph/ceph.conf. Primeiro modifique o parâmetro abaixo para incluir o IP 192.168.2.3:
mon_host = 192.168.2.1 192.168.2.2 192.168.2.3
Modifique os dois parâmetros abaixo e deixe eles iguais a estes:
[client] keyring = /etc/ceph/$cluster.$name.keyring [client.crash] keyring = /etc/ceph/$cluster.$name.keyring
Adicione no final deste mesmo arquivo a configuração abaixo:
[mon.nodeq] public_addr = 192.168.2.3
Ainda no Debian execute os comandos abaixo para prepararmos o ambiente pro CEPH:
# mkdir -p /var/lib/ceph/mon/ceph-nodeq # chown ceph:ceph /var/lib/ceph/mon/ceph-nodeq # chmod 750 /var/lib/ceph/mon/ceph-nodeq
Vamos criar o monitor:
# ceph-mon --mkfs \ -i nodeq \ --monmap /etc/ceph/monmap \ --keyring /etc/ceph/ceph.mon.keyring # chown -R ceph: /var/lib/ceph/mon/ceph-nodeq # chown -R ceph: /etc/ceph/ # chmod 640 /etc/ceph/ceph.mon.keyring # chmod 640 /etc/ceph/monmap
Este é o momento crucial para que tenhamos mais um monitor no nosso CEPH do Proxmox:
# systemctl enable ceph-mon@nodeq # systemctl start ceph-mon@nodeq
Precisamos checar se o serviço subiu com o comando: systemctl status ceph-mon@nodeq
Se aparecer algo assim então parabéns, até aqui foi tudo OK:

Volte no Proxmox PVE01 e altere o /etc/pve/ceph.conf modificando para:
mon_host = 192.168.2.1 192.168.2.2 192.168.2.3
E adicionando no final do arquivo:
[mon.nodeq]
public_addr = 192.168.2.3
Agora ativamos, ainda no Proxmox PVE01, o msgr2:
# ceph mon enable-msgr2
No Debian reinicie o serviço:
# systemctl restart ceph-mon@nodeq
No Proxmox em CEPH verá um novo Monitor adicionado:

Adicionando o OSD no Debian
Agora vamos aos procedimentos para usarmos aquele SSD como OSD no CEPH. Vamos supor que o SSD livre seja o /dev/sdb:
# apt install parted # parted /dev/sdb --script mklabel gpt # parted /dev/sdb --script \ mkpart primary 0% 100%
Feito isso só precisamos criar o volume CEPH com o comando:
# ceph-volume lvm create --data /dev/sdb1
Se tudo foi bem, nesse momento verá o OSD no seu Cluster Proxmox:

Olhando a saúde do nosso Cluster veremos:

Conclusão
Aqui vemos em funcionamento um Cluster Proxmox + HA com 2 nós apenas e uma máquina Debian servindo como apoio no funcionamento e segurança do Cluster.
Gostou do artigo? Compartilhe!
Autor: Marcelo Gondim