Como instalar o Ceph no Proxmox: passo a passo
O Ceph é um sistema de armazenamento distribuído que se integra muito bem ao Proxmox e oferece uma solução altamente disponível e tolerante a falhas. Neste guia, você vai aprender, passo a passo, como instalar um cluster Ceph no seu servidor Proxmox.
Passo 1: verificar os pré-requisitos
Antes de iniciar a instalação do Ceph no Proxmox, verifique se o seu ambiente atende aos requisitos básicos. O Ceph funciona replicando dados entre vários servidores. Para que essa redundância funcione de forma confiável, é necessário ter pelo menos três nós Proxmox. Dessa forma, o sistema continua funcionando mesmo se um nó falhar.
Além disso, verifique se a instalação bare metal do Proxmox está concluída em todos os servidores e se o sistema está atualizado. Cada nó deve ter um disco rígido próprio e não utilizado, dedicado exclusivamente aos OSDs do Ceph. Esses discos formam a base de armazenamento do cluster. Uma conexão de rede rápida e estável entre os nós também é essencial para manter a latência baixa. Você também precisa de acesso root em todos os hosts, já que a instalação faz alterações diretas no sistema.
Verifique com o comando abaixo qual versão do Proxmox está instalada no sistema:
pveversionbashCompare as versões em todos os nós. Se houver diferenças ou se o sistema não estiver atualizado, faça uma atualização para deixar todos os nós na mesma versão.
apt update && apt full-upgrade -y
rebootbashAssim que todos os nós estiverem atualizados e acessíveis, o ambiente estará pronto para instalar o Ceph.
O encontro do hardware com a nuvem: servidor dedicado com nuvem integrada e cobrança por minuto, incluindo assistente pessoal!
- Dedicated enterprise hardware
- Configurable hardware equipment
- ISO-certified data centers
Passo 2: ativar o repositório do Ceph
Para instalar o Ceph com mais facilidade usando o gerenciador de pacotes, primeiro você precisa ativar o repositório adequado em cada nó Proxmox. Esse repositório contém todos os pacotes do Ceph necessários para instalação e operação no Proxmox, adaptados e testados especificamente para esse ambiente. Faça login como root em cada host e execute o comando abaixo:
pveceph installbashEsse comando configura automaticamente o repositório oficial do Ceph no Proxmox e instala os componentes básicos. Em seguida, atualize a lista de pacotes para ativar as novas fontes:
apt updatebashPasso 3: inicializar o Ceph no primeiro nó
No terceiro passo, você prepara o cluster Ceph no primeiro nó Proxmox. Aqui, você define a rede usada para a comunicação do cluster e configura o primeiro monitor. O monitor é um dos componentes mais importantes do Ceph: ele acompanha o estado do cluster, gerencia os nós participantes e garante que todos os componentes tenham informações consistentes.
Inicie a configuração no primeiro host Proxmox com o comando:
pveceph init --network 10.0.0.0/24bashA sub-rede 10.0.0.0/24 é apenas um exemplo. Use a rede interna pela qual os nós Proxmox se comunicam diretamente. O comando pveceph init cria a configuração básica do Ceph no seu primeiro nó. Durante esse processo, o Proxmox gera, entre outras coisas, o arquivo central de configuração do cluster, o keyring do Ceph para autenticação dentro do cluster e os diretórios de sistema necessários para os serviços do Ceph.
Depois da inicialização, configure o primeiro serviço de monitor:
pveceph createmonbashEsse comando inicia o serviço de monitor e o registra no cluster. A partir desse momento, você já tem um nó Ceph funcional, embora ainda isolado. O monitor começa a coletar informações de status e cria a base para a comunicação com os outros nós.
Em um cluster Ceph, normalmente são usados pelo menos três monitores. Isso permite que o cluster continue funcionando mesmo se um monitor falhar, já que os monitores restantes ainda conseguem se coordenar. Só com vários monitores o Ceph consegue atingir o quorum, ou seja, uma maioria ativa que permite ao cluster decidir de forma confiável sobre o seu estado.
Passo 4: adicionar mais nós ao cluster
Para que o Ceph ofereça tolerância a falhas, agora você precisa adicionar os outros nós Proxmox ao cluster Ceph. Cada nó adicional aumenta a redundância e a capacidade de armazenamento. Acesse os outros nós e execute os comandos abaixo, na ordem:
pveceph install
pveceph createmonbashAssim, você também configura monitores nos outros hosts. Quando todos os monitores estiverem ativos, verifique o status do cluster em qualquer nó com o comando:
ceph -sbashA saída mostra quais monitores e serviços estão em execução. Se vários monitores aparecerem listados, os nós foram integrados com sucesso.
Passo 5: criar OSDs
Os OSDs (Object Storage Daemons) são o núcleo do cluster Ceph. Cada disco usado no Ceph passa a funcionar como um OSD independente. Esses daemons são responsáveis por gravar, replicar e disponibilizar os dados quando solicitados por outro nó ou por uma máquina virtual. Quanto maior o número de OSDs, maior será tanto a capacidade de armazenamento quanto o desempenho do cluster. Antes de iniciar a configuração, verifique quais discos estão disponíveis no nó. Você pode fazer isso com o comando abaixo:
lsblkbashA saída mostra todas as unidades reconhecidas e suas partições. Use apenas discos que não estejam em uso, não contenham o sistema operacional e não estejam montados. Depois de identificar um disco adequado, no nosso exemplo /dev/sdb, inicialize-o como OSD:
pveceph createosd /dev/sdbbashO disco será formatado automaticamente, e o Ceph configurará toda a estrutura necessária. Em seguida, o daemon OSD é iniciado e integrado ao cluster. Todos os dados existentes no disco selecionado serão apagados, então confirme que ele será usado exclusivamente para o Ceph.
Repita esse processo em todos os nós e para todos os discos que você deseja integrar ao armazenamento Ceph. Dependendo do tamanho do cluster e do hardware, a integração completa pode levar alguns minutos.
Depois disso, verifique se os OSDs foram reconhecidos corretamente e estão ativos, usando o comando abaixo:
ceph osd treebashA visualização em árvore facilita a identificação de como os dispositivos de armazenamento estão distribuídos no cluster e se estão operando sem erros.
Passo 6: ativar o Ceph Manager e o Dashboard
Para monitorar e gerenciar o cluster com mais facilidade, instale o Ceph Manager (MGR). Esse serviço coleta métricas de desempenho, monitora os componentes ativos e oferece funções adicionais por meio de vários módulos. Um desses módulos é o Dashboard Web integrado. Instale o gerenciador no nó Proxmox usando o comando abaixo:
pveceph createmgrbashAssim que o gerenciador estiver ativo, você pode habilitar o módulo do Dashboard. Ele já vem disponível com o serviço MGR e só precisa ser ativado:
ceph mgr module enable dashboardbashO Dashboard oferece uma interface intuitiva para acompanhar o status do cluster, o uso dos OSDs e dos monitores, além de identificar alertas rapidamente. O acesso é feito pelo navegador, usando a porta padrão 8443:
https://<PROXMOX_IP>:8443Substitua PROXMOX_IP pelo endereço IP do nó Proxmox onde o Ceph Manager foi instalado.
Passo 7: criar e testar pools do Ceph
Depois de configurar o cluster Ceph e ativar todos os OSDs, você pode criar as áreas de armazenamento onde os dados serão gravados. O Ceph organiza os dados em pools. Um pool é uma unidade lógica usada para armazenar arquivos, imagens de disco ou volumes de contêiner. Cada pool é composto por vários Placement Groups, que distribuem os dados entre os OSDs para equilibrar a carga. Com os pools, você define como e onde o Ceph armazena os dados. Assim, é possível criar pools diferentes de acordo com a necessidade: por exemplo, um pool para máquinas virtuais e outro para backups ou imagens de contêineres.
Para criar um pool, execute o comando abaixo em um dos nós Proxmox:
pveceph pool create cephpool --size 3 --min_size 2 --pg_num 128bashNo exemplo abaixo, criamos um pool com o nome cephpool. Os parâmetros definem como o Ceph lida com os dados:
--size 3significa que cada dado é replicado três vezes. Isso garante tolerância a falhas: se um OSD falhar, ainda haverá duas cópias disponíveis.--min_size 2define que pelo menos duas cópias precisam estar ativas para que o pool seja considerado funcional. Isso evita que o Ceph opere com dados incompletos.--pg_num 128define o número de Placement Groups, ou seja, os contêineres lógicos nos quais o Ceph divide os dados internamente. Quanto maior o número de OSDs no cluster, maior pode ser esse valor para garantir uma distribuição equilibrada dos dados.
O número de Placement Groups definido ao criar um pool não pode ser reduzido depois. Esse número pode ser aumentado à medida que o cluster cresce, mas não é possível diminuí-lo sem risco de perda de dados. Por isso, é importante planejar desde o início uma quantidade suficiente de PGs. Como regra geral, usar cerca de 100 PGs por OSD no pool é um bom ponto de partida para ambientes pequenos e médios.
Depois de criar o pool, verifique se o cluster está funcionando corretamente.
ceph -sbashNa saída, você verá o status atual do seu cluster Ceph. Se aparecer a indicação HEALTH_OK, isso significa que o pool foi configurado corretamente e que o cluster está funcionando de forma estável.
Passo 8: integrar o armazenamento Ceph ao Proxmox
Depois que o cluster Ceph estiver configurado e o primeiro pool criado, o último passo é integrar esse armazenamento ao Proxmox para que as máquinas virtuais e os contêineres possam utilizá-lo. O Proxmox usa o protocolo RBD para essa integração, e a maneira mais simples de configurá-la é pela interface gráfica. Acesse a interface web e navegue até “Datacenter > Armazenamento > Adicionar > RBD (Ceph)”.
No diálogo, insira os dados de conexão do cluster Ceph.
- Em ID, defina um nome exclusivo para o novo destino de armazenamento.
- Em monitores, insira os endereços IP dos seus Ceph MONs. Estes são os endereços dos nós onde os serviços de monitor estão em execução. Separe os endereços por vírgulas, por exemplo: 10.0.0.11,10.0.0.12,10.0.0.13.
- No campo Pool, insira o nome do pool Ceph criado anteriormente, como
cephpool. - Como usuário, normalmente você pode usar
admin. - O campo Keyring é preenchido automaticamente, pois o Proxmox lê a chave de autenticação da configuração do Ceph.
Se preferir usar a linha de comando, você pode fazer o mesmo procedimento com um único comando:
pvesm add rbd ceph-storage --monhost <mon1,mon2,mon3> --pool cephpool --content imagesbashSubstitua <mon1,mon2,mon3> pelos endereços IP dos nós de monitoramento.
Depois de adicionar o armazenamento, ele passa a aparecer na interface do Proxmox e pode ser selecionado diretamente como destino para máquinas virtuais. A partir desse momento, o Proxmox usa o Ceph como backend de armazenamento, e todas as VMs criadas ali se beneficiam automaticamente da redundância e da tolerância a falhas do cluster Ceph.
Se no futuro você quiser rodar um cluster Kubernetes no Proxmox, a integração com o Ceph é especialmente vantajosa. O Ceph funciona muito bem como armazenamento persistente para o Kubernetes. Dessa forma, seus contêineres se beneficiam da mesma redundância e alta disponibilidade que as máquinas virtuais.

