Imagem de Clyso
Recentemente Os engenheiros da Clyso divulgaram novidades sem precedentes, pois mencionam que conseguiram obter um desempenho superior a Terabytes por segundo em um cluster de armazenamento baseado em um sistema Ceph distribuído tolerante a falhas.
Sem dúvida, esta é uma conquista que marca a primeira vez que um cluster baseado em Ceph alcança tal indicador, superando uma série de desafios para alcançar tal desempenho no cluster.
O facto de este desempenho ter sido alcançado deveu-se ao facto de o Os engenheiros da Clyso receberam uma solicitação para implementação de um cluster e com base nas necessidades do seu cliente e do seu trabalho para obter o melhor desempenho sem deixar de lado os requisitos solicitados.
E é mencionado que os engenheiros que, quando o cliente abordou o Clyso pela primeira vez, propuseram uma configuração que utilizava 34 nós de soquete duplo 2U distribuídos em 17 racks com algumas configurações alternativas.
No final, o cliente decidiu optar por uma arquitetura Dell projetada pela Clyso, que era aproximadamente 13% mais barata que a configuração original, apesar de apresentar diversas vantagens importantes. A nova configuração tem menos memória por OSD (ainda confortavelmente 12 GiB cada), mas desempenho de memória mais rápido.
Ele também fornece recursos de CPU mais agregados, desempenho de rede agregado significativamente maior, uma configuração de soquete único mais simples e usa a última geração de processadores AMD e RAM DDR5. Ao empregar nós menores, reduzimos pela metade o impacto de uma falha de nó na recuperação do cluster.
O cliente indicou que gostaria de limitar o consumo de energia adicional por rack a cerca de 1000 a 1500 watts.
Para melhorar o desempenho em 10-20%, Eles descobriram que habilitar servidores no modo de desempenho máximo e desative o c-state nas configurações de economia de energia do BIOS foi eficaz.
Aconteceu também que Ao usar unidades NVMe, o kernel do Linux gasta uma quantidade significativa de tempo para processar bloqueios de rotação durante o processo de atualização do mapeamento IOMMU. Desativar o IOMMU no kernel causou um aumento notável no desempenho nos testes de leitura e gravação de blocos de 4 MB, embora não tenha resolvido completamente os problemas de desempenho ao gravar aleatoriamente blocos de 4 KB.
Eles também mencionam que enquanto tentavam descobrir o que estava acontecendo, os engenheiros encontraram correções nos scripts de construção do Ceph, pertencentes aos projetos Gentoo e Ubuntu, que incluíam a compilação com a opção RelWithDebInfo, já que com ele era usado o modo de otimização. -O2” no GCC, o que aumenta significativamente o desempenho do Ceph.
A compilação com a biblioteca TCMalloc também resultou em queda de desempenho. Alterar os sinalizadores de compilação e remover o uso do TCMalloc resultou em uma redução de três vezes no tempo de compactação e em um aumento de duas vezes no desempenho para gravações aleatórias de blocos de 4K.
Além disso, os ajustes na configuração e nos grupos de posicionamento do Reef RocksDB contribuíram para a otimização geral do sistema.
As As especificações do sistema são mostradas abaixo:
| Nós (Nodes em Inglês) | 68x Dell PowerEdge R6615 |
|---|---|
| UPC | 1 processador AMD EPYC 9454P 48C/96T. |
| Memória | 5GB DDR192 |
| Vermelho | 2 x 100 GbE Mellanox ConnectX-6 |
| NVMe | 10 x Dell 15,36 TB Enterprise NVMe de leitura intensiva AG |
| Versão do sistema operacional | Ubuntu 20.04.6 (foco) |
| Versão Ceph | Quincy v17.2.7 (pacotes Deb upstream) |
Os resultados são impressionantes: o desempenho para operações de leitura sequencial de 4 milhões de blocos atingiu 1025 GiB/s, enquanto para gravações foi de 270 GiB/s.
Em operações de leitura aleatória de blocos de 4 KB, o desempenho atingiu 25.5 milhões de operações de leitura por segundo e 4.9 milhões de operações de gravação. A ativação da criptografia reduziu o desempenho de leitura para aproximadamente 750 GiB/s.
Esta conquista não representa apenas um marco técnico para a Clyso, mas também destaca a evolução e melhoria contínuas nas capacidades de armazenamento distribuído.
É importante mencionar que em setembro, o CERN também atingiu um marco semelhante no seu cluster de armazenamento de exabytes baseado no armazenamento distribuído EOS e no protocolo XRootD.
finalmente se você está interessado em saber mais sobre o assunto, você pode verificar os detalhes no link a seguir