A busca do Santo Graal: Google File System open-source
Talvez você já ouviu falar do file system que o google desenvolveu. Se ainda não, você pode ver o paper que eles publicaram em http://labs.google.com/papers/gfs.html. O GoogleFS(não vou escrever GFS pois é outro file system) foi aprimorado do BigFile criado por Larry Page e Sergey Brin(co-fundadores do google) no inÃcio do google. O mais lindo de tudo o que ele pode fazer é: simplesmente ir acrescentando servidores(na realidade computadores xing-ling mesmo até) na sua rede e eles irem adicionando espaço a um file system “virtual”, sempre tendo redundância em caso de falhas e podendo lidar com work-loads altÃssimos. Ele é utilizado como backend por exemplo no GMail, no serviço de buscas do google, entre muitos outros produtos do google. Vou mostrar neste artigo o que da para fazer com ferramentas open-source.
Pesquisando os file systems distribuÃdos e file systems clusterizados, cheguei em alguns projetos(wikipedia): Ceph, PVFS e o GlusterFS. Não tive muito tempo ainda para pesquisar o Ceph e o PVFS, mas o Ceph está em alpha stages, o PVFS é maduro o suficiente para merecer um teste e está na lista.
Instalei o GlusterFS(http://www.gluster.org) em alguns servidores de teste que tenho na Predicta. Você consegue interligar os nodes(ele chama de Brick) com Infiniband ou TCP/IP, mas fui testar em cima de TCP/IP mesmo por ser mais simples e eu não ter nenhum servidor disponÃvel para testes com Infiniband. O GlusterFS possui uma camada cliente/servidor. Nos servidores você roda o glusterfsd e nos clientes você roda o glusterfs e monta utilizando FUSE. Você pode crescer os nodes apenas reconfigurando e remontando os clientes(por enquanto. está no roadmap isto ser on-the-fly). Ele possui vários do que ele chama translators que fazem o gerenciamento de stripping, replicação, unificação, etc… e tudo isto é configurado no cliente. No servidor, você apenas exporta os volumes para a rede e tudo é configurado nos clientes.
Nos meus testes eu instalei 4 servidores e utilizei 2 máquinas como cliente. Eu até poderia utilizar os 4 servidores como cliente também. Os 4 servidores tem 2 volumes exportados cada. Nos clientes eu configurei para replicar e unificar: configurei 2 AFRs(Automatic File Replication translator) e 1 Unify nos 2 AFRs, assim eu tenho um volume apenas montado nos clientes com tudo replicado.
É impressionante. Você copia arquivos para o /mnt/glusterfs, qdo vai nos servidores, da um ls e vê os arquivos lá. É tudo muito bom e muito transparente. Eu ainda não testei performance, não fiz benchmarks, mas vou fazer e nos próximos posts prometo trazer mais informações.
If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.


Muito Boa a sua materia achei pesquisando no google estava procurando um manual de como instalar no fedora vc poderia me dar umas dicas não achei nada na net