Skip links

Ceph: como o CephFS organiza e distribui arquivos

Com a explosão no volume de dados, manter um armazenamento que seja escalável, seguro e resiliente virou prioridade e também um desafio. Nesse contexto, o Ceph vem ganhando espaço como uma solução robusta. Dentro dele, o CephFS se destaca por oferecer um sistema de arquivos distribuído e altamente disponível.

Mas como ele funciona na prática? E por que tantas empresas estão adotando essa arquitetura?

O que é CephFS e como ele se integra ao Ceph

Antes de tudo, é importante entender que o CephFS é um sistema de arquivos POSIX, desenvolvido para operar sobre o backend do Ceph. Na prática, isso significa que ele permite montar um filesystem distribuído e acessá-lo como se fosse um sistema local, mas com a resiliência e escalabilidade do Ceph por trás.

Além disso, o CephFS se apoia em diversos componentes essenciais do Ceph, como os OSDs (Object Storage Daemons), MONs (Monitors) e o MDS (Metadata Server), responsável por gerenciar os metadados do sistema de arquivos. Essa integração garante consistência e alta performance em operações de leitura e escrita.

Como o CephFS organiza os dados dentro do Ceph

Para garantir eficiência, o CephFS utiliza dois tipos de pools: um para armazenar os dados em si e outro para os metadados. O administrador pode configurar esses pools com diferentes perfis de tolerância a falhas, sendo os mais comuns os pools replicados e os pools com erasure code.

Entretanto, vale destacar que a própria documentação oficial do Ceph não recomenda o uso de erasure code para os pools de metadados, justamente por questões de latência. Isso porque o processo divide os dados em blocos e exige mais processamento para reagrupá-los, o que pode impactar negativamente o desempenho do filesystem.

Como montar o filesystem no sistema operacional

Uma vez configurado o ambiente, montar o filesystem do CephFS no sistema operacional é um processo direto. Ainda assim, ele requer atenção. Primeiro, o administrador deve criar previamente o diretório com a permissão adequada. Depois, ele deve fornecer a chave de acesso do usuário autorizado.

Por exemplo, ao montar o CephFS com o comando mount -t ceph, se o usuário tentar acessar um diretório para o qual não possui permissão, o erro “Permission denied” será exibido. Portanto, garantir a correta atribuição de permissões é fundamental para o sucesso da operação.

Como controlar o acesso de usuários

Além da montagem em si, o CephFS permite um controle granular de acesso por usuário. Isso é feito por meio do comando ceph fs authorize, que vincula um usuário a um diretório específico, com permissões de leitura, escrita ou ambas.

Esse controle é aplicado por meio de caps (capabilities), que definem as permissões atribuídas ao usuário dentro do filesystem. Dessa forma, o administrador garante que cada cliente acesse apenas os diretórios designados, mantendo a segurança e a organização dos dados.

Como aplicar cotas e limitar recursos

Embora o acesso controlado já seja uma camada importante de segurança, o CephFS vai além. Ele também permite aplicar cotas por diretório, limitando o número de arquivos (ceph.quota.max_files) ou o espaço total utilizado (ceph.quota.max_bytes).

Contudo, para aplicar essas restrições, é necessário ter o pacote attr instalado no sistema. A partir disso, o administrador pode utilizar o comando setfattr para definir os limites desejados. Caso o diretório não tenha cotas configuradas, comandos de leitura exibirão mensagens como “No such attribute”.

É possível usar múltiplos filesystems no Ceph?

Sim, o Ceph permite a criação de múltiplos filesystems, desde que alguns ajustes sejam feitos.Por padrão, cada filesystem pode ter seu próprio conjunto de Metadata Servers (MDS), mas não compartilham MDS entre si. No entanto, é possível habilitar a criação de múltiplos filesystems com o comando ceph fs flag enable_multiple true.

Assim, mesmo com essa possibilidade, é importante lembrar que o administrador precisará manter mais de um MDS em funcionamento para gerenciar cada filesystem de forma independente. Além disso, comandos como ceph fs set <filesystem> down true são utilizados para desativar temporariamente um filesystem, caso necessário.

Quais são as vantagens do CephFS?

Agora que você entende como o CephFS funciona, vale reforçar os principais benefícios que ele oferece. Entre eles, destacam-se:

  • Alta disponibilidade de dados;
  • Escalabilidade horizontal;
  • Integração com as demais soluções do Ceph (como RADOS, RBD e RGW);
  • Controle detalhado de permissões e cotas.

Esses fatores fazem do CephFS uma solução ideal para empresas que precisam de armazenamento distribuído com desempenho confiável e gestão eficiente.

Conclusão: CephFS é a escolha certa para ambientes exigentes

Em resumo, o CephFS oferece uma forma prática e poderosa de trabalhar com sistemas de arquivos distribuídos, mantendo a compatibilidade POSIX e aproveitando toda a resiliência do Ceph. Desde o controle de usuários até o gerenciamento de cotas, passando pela possibilidade de múltiplos filesystems, ele entrega o que empresas modernas precisam: escalabilidade, segurança e flexibilidade.

Se você busca um sistema de arquivos robusto para aplicações críticas, o CephFS pode ser exatamente o que faltava na sua infraestrutura. A SC Clouds pode te ajudar a tirar o melhor do Ceph. Entre em contato.

Leave a comment

This website uses cookies to improve your web experience.