Sistemas de arquivos compartilhados
Publicado em 3/12/2009 | Autor Vicente
Este talvez seja um dos artigos mais nerds que eu já escrevi no blog, mas vai servir de introdução para outros dois que vou escrever em breve.
Imagine que você tenha um computador que acesse determinados arquivos. Além dele, outros 2 precisam ler e gravar no mesmo disco. Se você pensar no mundo Windows, você precisará atribuir o disco com estes arquivos em um computdor e criar um compartilhamentos para os outros dois acessarem. Se for no mundo Unix, onde tudo funciona bem melhor, você exportaria o disco via NFS e os dois acessariam usando este protocolo:

Quais são os problemas da solução acima? Eu lembro destes:
1) Caso o computador que tem o disco travar, os outros dois param de acessar o disco.
2) O computador que “administra” o disco terá uma sobrecarga por “servir” os dados para os outros computadores. Quanto maior a quantidade de leituras e alterações, maior a sobrecarga.
3) O computador que “administra” o disco terá uma alta velocidade de acesso ao disco, mas os outros dois computadores estarão limitados pela rede, que tem uma velocidade e latência (tempo de espera entre a solicitação e entrega do dado) maiores.
A solução ideal é que todos os computadores acesse o disco diretamente:

O problema desta solução é que o sistema de arquivos precisa estar preparado para isso. Se você dar acesso a três servidores Windows ou Linux em uma partição e todos estiverem lendo e escrevendo, eu garanto a vocês que o sistema de arquivos estará corrompido em pouco tempo.
Mas existem alguns sistemas de arquivos que são preparados para isso. Na Wikipedia em inglês há uma lista deles. Nos últimos dias eu fiz testes com dois deles:
GFS (Global File System) – Criado originalmente para o sistema operacional IRIX em 1997, foi portado para o Linux em 1998. Em 2001 o GFS era de propriedade da Sistina Software que fechou o código. Em 2003 a Red Hat comprou a Sistina Software e liberou novamente o código sob licença GPL.
OCFS2 (Oracle Cluster File System) – Criado pela Oracle e usa a licença GPL. Integrada ao kernel do Linux a partir da versão 2.6.16 e marcado como estável a partir do kernel 2.6.19.
Os dois sistemas de arquivos tem vantagens por prover redundância e performance para aplicações que funcionam em cluster, como banco de dados e aplicações que precisam de sistemas de arquivos compartilhados.
Nos próximos dias, estarei publicando tutoriais de como implementar os dois sistemas de arquivos no Linux, aguardem.
4 comentários, comente você também!
Categoria: Linux, Sistemas de Arquivos, Todos, WindowsTags: gfs, Linux, nfs, ocfs, Windows
Comments
4 Responses to “Sistemas de arquivos compartilhados”
Deixe um comentário!


December 3rd, 2009 @ 21:47
Artigo nerd e muito chato. Não leia….
[Translate]
December 13th, 2009 @ 19:32
Seus artigos são um exemplo de como ser perfeitamente sucinto.
Esse em especial me interessou bastante, como foram seus testes?
Qual desses sistemas de arquivo tem mais estabilidade/confiabilidade e qual tem maior desempenho?
Uma coisa interessante, como poderiamos utilizar essa metodologia com o VMware ESXi?
[Translate]
December 30th, 2009 @ 20:29
[Translate]
December 30th, 2009 @ 21:57
Desculpe pela demora em responder. Acabei de publicar um artigo sobre o GFS que responde a todos os seus questionamentos. Em breve vou fazer um sobre OCFS2. Aguarde.
Link do artigos sobre GFS: http://blogdovicente.com/2009/12/30/sistema-de-arquivos-compartilhado-no-linux-parte-1-gfs/
Abraços.
[Translate]