Os requisitos de hardware do Ceph dependem bastante da carga de trabalho de E/S. Os requisitos e as recomendações de hardware a seguir devem ser considerados um ponto de partida para o planejamento detalhado.
Em geral, as recomendações apresentadas nesta seção são baseadas em cada processo. Se houver vários processos localizados na mesma máquina, os requisitos de CPU, RAM, disco e rede deverão ser incrementados.
O SUSE Enterprise Storage suporta as arquiteturas x86 e Arm. Ao considerar cada arquitetura, é importante notar que, de uma perspectiva de núcleo por OSD, frequência e RAM, não há diferença real entre as arquiteturas de CPU quanto ao dimensionamento.
Assim como nos processadores x86 menores (sem servidor), os núcleos de desempenho mais baixo com base em Arm podem não oferecer uma experiência ideal, principalmente quando usados para pools com codificação de eliminação.
No mínimo, quatro nós OSD, com oito discos OSD cada, são necessários.
Três nós do Ceph Monitor (requer SSD como unidade dedicada do OS).
iSCSI Gateways, Object Gateways e Servidores de Metadados requerem mais 4 GB de RAM e quatro núcleos.
Nós de Ceph Monitors, Object Gateways e Servidores de Metadados requerem implantação redundante.
Nó de Admin Separado com 4 GB de RAM, quatro núcleos, capacidade de 1 TB. Trata-se normalmente do nó master Salt. Os serviços e gateways do Ceph, como Ceph Monitor, Ceph Manager, Servidor de Metadados, Ceph OSD, Object Gateway ou NFS Ganesha, não são suportados no Nó de Admin.
Recomendações da CPU:
1x Thread de CPU de 2 GHz por spinner
2x Threads de CPU de 2 GHz por SSD
4x Threads de CPU de 2 GHz por NVMe
Redes separadas de 10 GbE (pública/cliente e back end), 4x 10 GbE necessário, 2x 25 GbE recomendado.
RAM total necessária = número de OSDs x (1 GB + osd_memory_target
) + 16 GB.
Consulte o Seção 16.2.1, “Dimensionamento automático do cache” para obter mais detalhes sobre osd_memory_target
.
Discos OSD nas configurações JBOD ou nas configurações individuais de RAID-0.
Diário OSD pode residir no disco OSD.
Os discos OSD devem ser usados exclusivamente pelo SUSE Enterprise Storage.
Disco/SSD dedicado para o sistema operacional, preferencialmente em uma configuração de RAID 1.
Se este host OSD hospedar parte de um pool de cache usado para criação de camada de cache, aloque pelo menos mais 4 GB de RAM.
Ceph Monitors, Ceph Gateway e Servidores de Metadados podem residir em Nós de Armazenamento de Objetos.
Por motivos de desempenho do disco, recomendamos o uso de nós OSD completamente vazios e máquinas físicas.
Há dois tipos de espaço em disco necessários para execução no OSD: o espaço para o diário do disco (para FileStore) ou o dispositivo WAL/BD (para BlueStore) e o espaço principal para os dados armazenados. O valor mínimo (e padrão) para o diário/WAL/BD é de 6 GB. O espaço mínimo para os dados é de 5 GB, pois as partições menores do que 5 GB recebem automaticamente o peso de 0.
Portanto, embora o espaço mínimo em disco para um OSD seja de 11 GB, não é recomendável um disco menor do que 20 GB, mesmo para fins de teste.
Consulte a Seção 1.4, “BlueStore” para obter mais informações sobre o BlueStore.
Recomendamos reservar 4 GB para o dispositivo WAL. O tamanho recomendado para o BD é de 64 GB para a maioria das cargas de trabalho.
Se você pretende colocar o dispositivo WAL e BD no mesmo disco, recomendamos usar uma única partição para ambos os dispositivos, em vez de ter uma partição separada para cada um. Dessa forma, o Ceph pode usar o dispositivo BD também para operação de WAL. Portanto, o gerenciamento do espaço em disco é mais eficaz, pois o Ceph usa a partição BD para o WAL apenas quando há necessidade dela. Outra vantagem é que há pouca probabilidade de a partição WAL ficar cheia, e quando ela não é totalmente usada, o espaço dela não é desperdiçado, mas usado para operação do BD.
Para compartilhar o dispositivo BD com o WAL, não especifique o dispositivo WAL, mas apenas o dispositivo BD.
Encontre mais informações sobre como especificar um layout de OSD na Seção 5.5.2, “DriveGroups”.
Você poderá ter quantos discos forem permitidos em um servidor. Há algumas coisas que devem ser consideradas na hora de planejar o número de discos por servidor:
Largura de banda de rede. Quanto mais discos você tiver em um servidor, mais dados deverão ser transferidos por placa(s) de rede para as operações de gravação em disco.
Memória. RAM acima de 2 GB é usada para o cache do BlueStore. Com o osd_memory_target
padrão de 4 GB, o sistema tem um tamanho de cache inicial razoável para mídia giratória. Se você usa SSD ou NVME, considere aumentar o tamanho do cache e a alocação de RAM por OSD para maximizar o desempenho.
Tolerância a falhas. Em caso de falha no servidor inteiro, quanto mais discos ele tiver, mais OSDs o cluster perderá temporariamente. Além disso, para manter as regras de replicação em execução, você precisa copiar todos os dados do servidor com falha para os outros nós no cluster.
Pelo menos três nós do Ceph Monitor são necessários. O número de monitores deve ser sempre ímpar (1+2n).
4 GB de RAM.
Processador com quatro núcleos lógicos.
Uma SSD ou outro tipo de armazenamento rápido o bastante é altamente recomendado para monitores, principalmente para o caminho /var/lib/ceph
em cada nó do monitor, pois o quorum pode ficar instável com altas latências de disco. É recomendada a configuração de dois discos no RAID 1 para redundância. É recomendável o uso de discos separados ou, pelo menos, de partições de disco separadas para que os processos do monitor protejam o espaço em disco disponível do monitor contra eventos como arquivo de registro muito grande.
Deve haver apenas um processo do monitor por nó.
A combinação de nós OSD, de monitor ou do Object Gateway apenas será suportada se houver recursos de hardware suficientes disponíveis. Isso significa que os requisitos para todos os serviços precisam ser incrementados.
Duas interfaces de rede vinculadas a vários switches.
Os nós do Objeto Gateway devem ter de seis a oito núcleos de CPU e 32 GB de RAM (recomenda-se 64 GB). Quando outros processos são colocalizados na mesma máquina, os requisitos precisam ser incrementados.
O dimensionamento apropriado dos nós do Servidor de Metadados depende do caso de uso específico. Em geral, quanto mais arquivos abertos o Servidor de Metadados tiver que processar, mais CPU e RAM serão necessárias. Veja a seguir os requisitos mínimos:
3 GB de RAM para cada daemon do Servidor de Metadados.
Interface de rede vinculada.
CPU de 2.5 GHz com, no mínimo, 2 núcleos.
Pelo menos 4 GB de RAM e uma CPU quad-core são necessárias. Isso inclui a execução do Ceph Dashboard no Nó de Admin. Para clusters grandes com centenas de nós, 6 GB de RAM é a sugestão.
Os nós do iSCSI devem ter de seis a oito núcleos de CPU e 16 GB de RAM.
O ideal é que o ambiente de rede em que você pretende executar o Ceph seja um conjunto vinculado de no mínimo duas interfaces de rede, que é dividido logicamente em uma parte pública e uma parte interna confiável por meio de VLANs. Se possível, o modo de vinculação recomendado é 802.3ad para fornecer largura de banda e resiliência máximas.
A VLAN pública serve para fornecer o serviço aos clientes, enquanto a parte interna permite a comunicação de rede autenticada no Ceph. O principal motivo disso é que, embora o Ceph ofereça autenticação e proteção contra ataques depois que as chaves secretas estão em vigor, as mensagens usadas para configurar essas chaves poderão ser transferidas abertamente e serão vulneráveis.
Se os nós de armazenamento foram configurados por DHCP, os tempos de espera padrão talvez não sejam suficientes para que a rede seja configurada corretamente antes que os vários daemons do Ceph sejam iniciados. Se isso acontecer, os MONs e OSDs do Ceph não serão iniciados corretamente (a execução de systemctl status ceph\*
resultará em erros "não é possível vincular"). Para evitar esse problema, é recomendável aumentar o tempo de espera do cliente DHCP para, pelo menos, 30 segundos em cada nó no seu cluster de armazenamento. Para fazer isso, mude as seguintes configurações em cada nó:
Em /etc/sysconfig/network/dhcp
, defina
DHCLIENT_WAIT_AT_BOOT="30"
Em /etc/sysconfig/network/config
, defina
WAIT_FOR_INTERFACES="60"
Se você não especificar uma rede de cluster durante a implantação do Ceph, ele assumirá um ambiente de rede pública única. Enquanto o Ceph funciona bem com uma rede pública, seu desempenho e segurança melhoram quando você define uma segunda rede privada de cluster. Para suportar duas redes, cada nó do Ceph precisa ter pelo menos duas placas de rede.
Você precisará aplicar as mudanças a seguir a cada nó do Ceph. É relativamente rápido fazer isso em um cluster pequeno, mas pode ser muito demorado se você tem um cluster com centenas ou milhares de nós.
Pare os serviços relacionados ao Ceph em cada nó do cluster.
Adicione uma linha a /etc/ceph/ceph.conf
para definir a rede de cluster. Por exemplo:
cluster network = 10.0.0.0/24
Se for necessário atribuir endereços IP estáticos ou anular as configurações de rede de cluster
especificamente, você poderá fazer isso com o comando opcional cluster addr
.
Verifique se a rede privada de cluster funciona conforme esperado no nível do OS.
Inicie os serviços relacionados ao Ceph em cada nó do cluster.
root #
systemctl start ceph.target
Se os nós do monitor estiverem em várias sub-redes (por exemplo, localizados em salas distintas e atendidos por switches diferentes), você precisará ajustar o arquivo ceph.conf
de acordo. Por exemplo, se os nós tiverem endereços IP 192.168.123.12, 1.2.3.4 e 242.12.33.12, adicione as seguintes linhas à seção global
deles:
[global] [...] mon host = 192.168.123.12, 1.2.3.4, 242.12.33.12 mon initial members = MON1, MON2, MON3 [...]
Além disso, se você precisar especificar um endereço ou uma rede pública por monitor, adicione uma seção [mon.X]
para cada monitor:
[mon.MON1] public network = 192.168.123.0/24 [mon.MON2] public network = 1.2.3.0/24 [mon.MON3] public network = 242.12.33.12/0
Em geral, o Ceph não suporta caracteres não ASCII em arquivos de configuração, nomes de pool, nomes de usuário, etc. Ao configurar um cluster do Ceph, é recomendável usar apenas caracteres alfanuméricos simples (A-Z, a-z, 0-9) e pontuação mínima ('.', '-', '_’) em todos os nomes de objeto/configuração do Ceph.
Sete Nós de Armazenamento de Objetos
Nenhum nó único excede ~ 15% do total de armazenamento
10 Gb Ethernet (quatro redes físicas vinculadas a vários switches)
Mais de 56 OSDs por cluster de armazenamento
Discos de OS RAID 1 para cada nó de armazenamento OSD
SSDs para Diário com o diário de SSD de proporção 6:1 para OSD
1,5 GB de RAM por TB de capacidade bruta do OSD para cada Nó de Armazenamento de Objetos
2 GHz por OSD para cada Nó de Armazenamento de Objetos
Nós dedicados de infraestrutura física
Três nós do Ceph Monitor: 4 GB de RAM, processador de 4 núcleos, SSDs RAID 1 para disco
Um nó de gerenciamento SES: 4 GB de RAM, processador de 4 núcleos, SSDs RAID 1 para disco
Implantação física redundante de nós de gateway ou Servidor de Metadados:
Nós do Object Gateway: 32 GB de RAM, processador de 8 núcleos, SSDs RAID 1 para disco
Nós do iSCSI Gateway: 16 GB de RAM, processador de 4 núcleos, SSDs RAID 1 para disco
Nós do Servidor de Metadados (um ativo/um standby ativo): 32 GB de RAM, processador de 8 núcleos, SSDs RAID 1 para disco
Esta seção contém informações importantes sobre a integração do SUSE Enterprise Storage 6 com outros produtos da SUSE.
O SUSE Manager e o SUSE Enterprise Storage não estão integrados, portanto, o SUSE Manager não pode gerenciar um cluster do SUSE Enterprise Storage neste momento.