SlideShare uma empresa Scribd logo
Sistemas Distribuídos
Sistemas de Arquivos Distribuídos
Frederico Madeira
LPIC-1, LPIC-2, CCNA
fred@madeira.eng.br
www.madeira.eng.br
Referências
- Tanenbaum, A.; Steen, M.; Sistemas Distribuídos, princípios
e paradigmas. Capítulo 11.
- Coulouris, G.;Dollimore, J.; Kindberg, T.;
SISTEMAS DISTRIBUIDOS CONCEITOS E PROJETO. Capítulo 8.
Parte importante dos sistemas operacionais, pois ele fornece
uma visão abstrata dos dados persistentes, além de ser
responsável pelo serviço de nomes, acesso à arquivos e de sua
organização geral.
Sistema de Arquivo
Conceitos
• Arquivo
✔
Uma sequencia de bytes.
✔
Um sistema especifico de uma estrutura
interna.
✔
Atributos Tamanho, acesso, datas, dono.
• Diretório (arquivo especial)
✔
Mapeia os nomes para os identificadores.
✔
Pode conter subdiretórios (arvore).
Sistema de Arquivo Distribuído
Permite aos programas armazenarem e acessarem
arquivos remotos exatamente como se fossem locais,
possibilitando que os usuários acessem arquivos a partir de
qualquer computador em uma rede. O desempenho e a
segurança no acesso aos arquivos armazenados em um
servidor devem ser comparáveis aos arquivos armazenados em
discos locais.
[Coulourus, G.; Dollimore, J.; Kindberg, T. Sistemas Distribuídos Conceitos e
Projeto] – Cap 8.
Sistema de Arquivo Distribuído
São organizados no modelo da arquitetura cliente/servidor
Características Importantes
✔
Diferentes clientes remotos podendo acessar arquivos em
servidores de arquivos.
✔
Esquema de compartilhamento bem estruturado.
✔
Clientes dispersos
✔
Ponto de vista centralizado
Por que SAD ?
✔
Devido ao problema do compartilhamento de recursos.
✔
Compartilhamento de espaço em disco
➔
cada maquina não tem que armazenar arquivos que irá
acessar.
✔
Compartilhamento da administração
➔
administração e backup fáceis de fazer.
✔
Acesso de arquivos particulares de diferentes computadores.
O quê um SAD provê ?
✔
Provê acesso a dados armazenados nos servidores
de arquivo através das Interfaces de sistemas de
arquivo.
✔
Interfaces são partes do sistema de arquivo com
as funções de:
➔
Abrir arquivo, checar estado, fechar.
➔
Ler ou escrever dados em um arquivo
➔
Bloquear um arquivo ou partes dele.
➔
Listar arquivos em um diretório.
➔
Apagar, renomear um arquivo ou diretório, etc
O quê um SAD provê ?
O quê um SAD deve suportar ?
✔
Compartilhamento de informações remotas
✔
Permitir que um arquivo seja acessado
transparentemente em qualquer nó, independente
da sua localização.
✔
Mobilidade do Usuário
✔
Usuário pode trabalhar em qualquer nó em
diferentes momentos (Flexibilidade)
Formas de armazenamento
✔
O sistema de arquivo inteiro é armazenado em um
único servidor.
✔
Arquivos são armazenados nos vários discos
rígidos de diferentes computadores.
Serviços Ofertados por um SAD
✔
Serviço de Nomes Distribuído
➔
O serviço de nomes cuida de indicar a
localização de um determinado arquivo dado o
seu nome ou caminho.
✔
Serviço de Arquivos Distribuído
➔
Responsável por fornecer operações sobre os
arquivos que compõe o sistema.
➔
Os arquivos podem ser armazenados de
diferentes formas, dependendo do seu tipo e
uso.
Serviços Ofertados por um SAD
✔
Serviço de Diretórios Distribuído
➔
Responsável por manter a organização dos
arquivos armazenados no sistema.
➔
Ele fornece uma interface para que os usuários
possam arranjar seus arquivos num formato
hierárquico, que é estruturado em diretórios e
subdiretórios.
Características Procuradas em um SAD
✔
Tolerância a Falhas
➔
Se um servidor cair ou ficar fora do ar ou da
rede, o sistema de arquivos não pode perder
informações e nem ficar indisponível total ou
parcialmente
✔
Acesso Concorrente
➔
Vários usuários podem acessar vários arquivos,
ou os mesmos arquivos, sem sofrer danos,
perda de performance ou quaisquer outras
restrições
✔
Replicação de Arquivos
➔
Com esta funcionalidade, a confiança e a
eficiência do serviço de arquivos é aumentada
significativamente
Características de um SAD ?
✔
Transparência
✔
Usuários acessam pastas locais
✔
Concorrência
➔
Usuários concorrendo pelo mesmo arquivo
✔
Replicação
➔
Arquivos são replicados
✔
Heterogeneidade
➔
Diferentes recursos
✔
Segurança
➔
Controle de acesso / autenticação de clientes
✔
Eficiência
➔
Escalabilidade e usuários concorrentes. Latência
Características de um SAD ?
✔
Transparência
✔
Usuários acessam pastas locais
✔
Concorrência
➔
Usuários concorrendo pelo mesmo arquivo
✔
Replicação
➔
Arquivos são replicados
✔
Heterogeneidade
➔
Diferentes recursos
✔
Segurança
➔
Controle de acesso / autenticação de clientes
✔
Eficiência
➔
Escalabilidade e usuários concorrentes. Latência
Características de um SAD ?
✔
Tolerância a falhas
➔
Queda de servidores ou comunicação
✔
Consistência
➔
Todas as copias dos arquivos como se fossem uma apenas
✔
Escalabilidade
➔
Prever o crescimento de nós e usuários no sistema
✔
Integridade dos dados
➔
Arquivo é compartilhado por vários usuários.
Arquitetura de Exemplo
NFS
✔
Exemplo Canônico de SAD
✔
Arquitetura simples Cliente-Servidor
✔
Muito popular no Unix
✔
Ideia Fundamental:
✔
Cada servidor de Arquivos fornece uma visão
padronizada de seu sistema local de arquivos
✔
Fornece ao cliente acesso transparente a um
sistema de arquivos que é gerenciado por um
servidor remoto
✔
É utilizada um sistema de Arquivo Virtual (VFS)
✔
Todas as requisições ao FS do servidor são
realizadas via RPC (Remote Procedure Call)
NFS
SAD baseados em Cluster
✔
Clusters normalmente são usados para
computação paralela
✔
Algo semelhante pode ser feito em SAD como file
stripping (arquivos em tiras) através dos
servidores
✔
Funciona bem se os dados tiverem uma
estrutura bem regular
✔
Para aplicações de uso geral e dados
irregulares e com diferentes estruturas esse
modelo não será muito efetivo
✔
Outra abordagem possível é armazenar arquivos
inteiros em servidores, sem particionar o arquivo
Modelos de armazenamento de arquivos em SAD
GFS (Google File System)
✔
Bem descrito no artigo de Ghemawet, 2003
✔
O artigo o descreve como:
✔
SAD escalar para grandes aplicações
distribuídas e orientada ao uso de intensivo de
dados (Arquivos)
✔
Provê tolerância a falhas, roda em hardware
comum e economicamente viável, e oferece
alta performance agregada a um conjunto
grande de clientes
✔
Cada cluster GFS consiste em vários servidores de
dados e um mestre
✔
Arquivos GFS são divididos em porções de 64Mb
✔
O mestre(servidor de metadados) possui o
endereço onde cada arquivo se encontra no SAD.
GFS (Google File System)
É um sistema de arquivo open source, que trabalha em
cluster e é capaz de escalar diversos petabytes e gerenciar
milhares de clientes. Se encaixa bem para tarefas “data-
intensive” como armazenamento na núvem e streaming de
media
- GlusterFS User Guide at gluster.readthedocs.io
GlusterFS
Funcionalidades
Principais funcionalidades, implementadas através de
tradutores:
✔
Replicação e espelhamento em nível de arquivos
✔
Striping em nível de arquivos
✔
Load balancing em nível de arquivos
✔
Volume failover
✔
Scheduling e disk caching
✔
Storage quotas
Configuração
✔
Arquitetura Modular
➔
Pode ser configurado em modo standalone (1
servidor)
➔
O sistema pode crescer ao tempo de acordo
com a necessidade
Características Importantes
✔
Sistema de arquivos distribuído e descentralizado
✔
Agregação de múltiplas unidades de armazenamento
remotas (bricks) em um único volume
✔
Funcionalidades implementadas através de tradutores
(translators)
✔
Descarta a necessidade da utilização de servidores de
metadados
Arquitetura
Volume Distribuído
Arquitetura
Volume Replicado
Arquitetura
Volume Distribuído e Replicado
Arquitetura
Volume Striped
Exemplos de SAD
✔
NFS
✔
GFS(Global FileSystem)
✔
GFS(Google FileSystem)
✔
GlusterFS
✔
PVFS (parallel virutal file system)
✔
AFS (Andrew FileSystem)
✔
DFS
✔
CODA (Constant Data Availability)
✔
SUN Network Filesystem
✔
GlusterFS
✔
Hadoop
✔
Ceph
✔
XteemFS
✔
Lustre
Sistemas Distribuídos
Sistemas de Arquivos Distribuídos
Frederico Madeira
LPIC-1, LPIC-2, CCNA
fred@madeira.eng.br
www.madeira.eng.br

Mais conteúdo relacionado

Mais procurados

Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
Victor Hazin da Rocha
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
Wellington Oliveira
 
Aula 5 - Redes de computadores
Aula 5 - Redes de computadoresAula 5 - Redes de computadores
Aula 5 - Redes de computadores
LucasMansueto
 
Redes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesRedes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesMauro Tapajós
 
Sistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxSistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxLuiz Arthur
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
mgoberto
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
Daniel Brandão
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosrobsons75
 
Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootávelFrancis Torres
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
Hélio Jovo
 
Redes de Computadores
Redes de ComputadoresRedes de Computadores
Redes de Computadores
Fábio Eliseu
 
Modelo documentacao-rede
Modelo documentacao-redeModelo documentacao-rede
Modelo documentacao-rede
Rod Deville
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
Wellington Oliveira
 
Arquitetura Cliente-Servidor
Arquitetura Cliente-ServidorArquitetura Cliente-Servidor
Arquitetura Cliente-Servidor
Israel Messias
 
MC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de ArmazenamentoMC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de Armazenamento
Felipe J. R. Vieira
 
Aula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoAula 01 - JavaScript: Introdução
Aula 01 - JavaScript: Introdução
Jessyka Lage
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
André Felipe Santos Martins
 
Aula- Virtualização
Aula- VirtualizaçãoAula- Virtualização
Aula- Virtualização
Jorge Ávila Miranda
 

Mais procurados (20)

Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
 
06 - Servidor Apache
06 - Servidor Apache06 - Servidor Apache
06 - Servidor Apache
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Aula 5 - Redes de computadores
Aula 5 - Redes de computadoresAula 5 - Redes de computadores
Aula 5 - Redes de computadores
 
Redes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesRedes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de Redes
 
Sistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/LinuxSistemas Operacionais - Gnu/Linux
Sistemas Operacionais - Gnu/Linux
 
Sd01 (si) sistemas de arquivos
Sd01 (si)   sistemas de arquivosSd01 (si)   sistemas de arquivos
Sd01 (si) sistemas de arquivos
 
Modelagem De Banco De Dados
Modelagem De Banco De DadosModelagem De Banco De Dados
Modelagem De Banco De Dados
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
Criação do pendrive bootável
Criação do pendrive bootávelCriação do pendrive bootável
Criação do pendrive bootável
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Redes de Computadores
Redes de ComputadoresRedes de Computadores
Redes de Computadores
 
Modelo documentacao-rede
Modelo documentacao-redeModelo documentacao-rede
Modelo documentacao-rede
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
 
Arquitetura Cliente-Servidor
Arquitetura Cliente-ServidorArquitetura Cliente-Servidor
Arquitetura Cliente-Servidor
 
MC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de ArmazenamentoMC - Aula 05 - Memória e Dispositivos de Armazenamento
MC - Aula 05 - Memória e Dispositivos de Armazenamento
 
Aula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoAula 01 - JavaScript: Introdução
Aula 01 - JavaScript: Introdução
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
 
Aula- Virtualização
Aula- VirtualizaçãoAula- Virtualização
Aula- Virtualização
 

Semelhante a SI - SAD - Sistemas de Arquivos Distribuídos

Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)
Frederico Madeira
 
Gerência de Armazenamento: Interface do Sistema de Arquivos
Gerência de Armazenamento: Interface do Sistema de ArquivosGerência de Armazenamento: Interface do Sistema de Arquivos
Gerência de Armazenamento: Interface do Sistema de Arquivos
Alexandre Duarte
 
Módulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptxMódulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptx
BrancaSilva12
 
TA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdfTA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdf
SandroPolizelLaurent
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivos
Paulo Fonseca
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
Aché Laboratórios
 
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Lucas A. Romão
 
Segurança em servidores Linux
Segurança em servidores LinuxSegurança em servidores Linux
Segurança em servidores LinuxImpacta Eventos
 
Banco de dados distribuídos mnt bd
Banco de dados distribuídos mnt bdBanco de dados distribuídos mnt bd
Banco de dados distribuídos mnt bd
M Serafim
 
Sistemas de arquivos artigo
Sistemas de arquivos   artigoSistemas de arquivos   artigo
Sistemas de arquivos artigoDaiana de Ávila
 
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Julio Oliveira
 
Servidor_De_Arquivos no windows 2019 - Introdução
Servidor_De_Arquivos no windows 2019 - IntroduçãoServidor_De_Arquivos no windows 2019 - Introdução
Servidor_De_Arquivos no windows 2019 - Introdução
Gustavo
 
Redes e Servidores
Redes e ServidoresRedes e Servidores
Redes e Servidores
0711199746bb55
 
Apresentação GT - Digital Preservation
Apresentação GT - Digital PreservationApresentação GT - Digital Preservation
Apresentação GT - Digital Preservation
Roberto Beraldo Chaiben
 
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdfSO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
Silvano Oliveira
 

Semelhante a SI - SAD - Sistemas de Arquivos Distribuídos (20)

Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)
 
Gerência de Armazenamento: Interface do Sistema de Arquivos
Gerência de Armazenamento: Interface do Sistema de ArquivosGerência de Armazenamento: Interface do Sistema de Arquivos
Gerência de Armazenamento: Interface do Sistema de Arquivos
 
Aula 8 (backup)
Aula 8 (backup)Aula 8 (backup)
Aula 8 (backup)
 
Módulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptxMódulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptx
 
TA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdfTA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdf
 
slides
slidesslides
slides
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivos
 
1.1.apresentação
1.1.apresentação1.1.apresentação
1.1.apresentação
 
Banco aula 01
Banco aula 01Banco aula 01
Banco aula 01
 
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
Microsoft Azure Storage - Tudo o que você precisa saber sobre armazenamento d...
 
Sgf
SgfSgf
Sgf
 
Segurança em servidores Linux
Segurança em servidores LinuxSegurança em servidores Linux
Segurança em servidores Linux
 
Banco de dados distribuídos mnt bd
Banco de dados distribuídos mnt bdBanco de dados distribuídos mnt bd
Banco de dados distribuídos mnt bd
 
Sistemas de arquivos artigo
Sistemas de arquivos   artigoSistemas de arquivos   artigo
Sistemas de arquivos artigo
 
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
 
Servidor_De_Arquivos no windows 2019 - Introdução
Servidor_De_Arquivos no windows 2019 - IntroduçãoServidor_De_Arquivos no windows 2019 - Introdução
Servidor_De_Arquivos no windows 2019 - Introdução
 
teAula 11
teAula 11teAula 11
teAula 11
 
Redes e Servidores
Redes e ServidoresRedes e Servidores
Redes e Servidores
 
Apresentação GT - Digital Preservation
Apresentação GT - Digital PreservationApresentação GT - Digital Preservation
Apresentação GT - Digital Preservation
 
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdfSO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
 

Mais de Frederico Madeira

WebServices
WebServicesWebServices
WebServices
Frederico Madeira
 
IoT - Internet of Things
IoT -  Internet of ThingsIoT -  Internet of Things
IoT - Internet of Things
Frederico Madeira
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
Frederico Madeira
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
Frederico Madeira
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
Frederico Madeira
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
Frederico Madeira
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
Frederico Madeira
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
Frederico Madeira
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de Programas
Frederico Madeira
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
Frederico Madeira
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open source
Frederico Madeira
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
Frederico Madeira
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software Livre
Frederico Madeira
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation Networks
Frederico Madeira
 
MRTG - SNMP na Prática
MRTG - SNMP na PráticaMRTG - SNMP na Prática
MRTG - SNMP na Prática
Frederico Madeira
 
Introdução ao SNMP
Introdução ao SNMPIntrodução ao SNMP
Introdução ao SNMP
Frederico Madeira
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em Redes
Frederico Madeira
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
Frederico Madeira
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
Frederico Madeira
 
Apresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesApresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesFrederico Madeira
 

Mais de Frederico Madeira (20)

WebServices
WebServicesWebServices
WebServices
 
IoT - Internet of Things
IoT -  Internet of ThingsIoT -  Internet of Things
IoT - Internet of Things
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de Programas
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open source
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software Livre
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation Networks
 
MRTG - SNMP na Prática
MRTG - SNMP na PráticaMRTG - SNMP na Prática
MRTG - SNMP na Prática
 
Introdução ao SNMP
Introdução ao SNMPIntrodução ao SNMP
Introdução ao SNMP
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em Redes
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
 
Apresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesApresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de Redes
 

SI - SAD - Sistemas de Arquivos Distribuídos

  • 1. Sistemas Distribuídos Sistemas de Arquivos Distribuídos Frederico Madeira LPIC-1, LPIC-2, CCNA fred@madeira.eng.br www.madeira.eng.br
  • 2. Referências - Tanenbaum, A.; Steen, M.; Sistemas Distribuídos, princípios e paradigmas. Capítulo 11. - Coulouris, G.;Dollimore, J.; Kindberg, T.; SISTEMAS DISTRIBUIDOS CONCEITOS E PROJETO. Capítulo 8.
  • 3. Parte importante dos sistemas operacionais, pois ele fornece uma visão abstrata dos dados persistentes, além de ser responsável pelo serviço de nomes, acesso à arquivos e de sua organização geral. Sistema de Arquivo
  • 4. Conceitos • Arquivo ✔ Uma sequencia de bytes. ✔ Um sistema especifico de uma estrutura interna. ✔ Atributos Tamanho, acesso, datas, dono. • Diretório (arquivo especial) ✔ Mapeia os nomes para os identificadores. ✔ Pode conter subdiretórios (arvore).
  • 5. Sistema de Arquivo Distribuído Permite aos programas armazenarem e acessarem arquivos remotos exatamente como se fossem locais, possibilitando que os usuários acessem arquivos a partir de qualquer computador em uma rede. O desempenho e a segurança no acesso aos arquivos armazenados em um servidor devem ser comparáveis aos arquivos armazenados em discos locais. [Coulourus, G.; Dollimore, J.; Kindberg, T. Sistemas Distribuídos Conceitos e Projeto] – Cap 8.
  • 6. Sistema de Arquivo Distribuído São organizados no modelo da arquitetura cliente/servidor
  • 7. Características Importantes ✔ Diferentes clientes remotos podendo acessar arquivos em servidores de arquivos. ✔ Esquema de compartilhamento bem estruturado. ✔ Clientes dispersos ✔ Ponto de vista centralizado
  • 8. Por que SAD ? ✔ Devido ao problema do compartilhamento de recursos. ✔ Compartilhamento de espaço em disco ➔ cada maquina não tem que armazenar arquivos que irá acessar. ✔ Compartilhamento da administração ➔ administração e backup fáceis de fazer. ✔ Acesso de arquivos particulares de diferentes computadores.
  • 9. O quê um SAD provê ? ✔ Provê acesso a dados armazenados nos servidores de arquivo através das Interfaces de sistemas de arquivo. ✔ Interfaces são partes do sistema de arquivo com as funções de: ➔ Abrir arquivo, checar estado, fechar. ➔ Ler ou escrever dados em um arquivo ➔ Bloquear um arquivo ou partes dele. ➔ Listar arquivos em um diretório. ➔ Apagar, renomear um arquivo ou diretório, etc
  • 10. O quê um SAD provê ?
  • 11. O quê um SAD deve suportar ? ✔ Compartilhamento de informações remotas ✔ Permitir que um arquivo seja acessado transparentemente em qualquer nó, independente da sua localização. ✔ Mobilidade do Usuário ✔ Usuário pode trabalhar em qualquer nó em diferentes momentos (Flexibilidade)
  • 12. Formas de armazenamento ✔ O sistema de arquivo inteiro é armazenado em um único servidor. ✔ Arquivos são armazenados nos vários discos rígidos de diferentes computadores.
  • 13. Serviços Ofertados por um SAD ✔ Serviço de Nomes Distribuído ➔ O serviço de nomes cuida de indicar a localização de um determinado arquivo dado o seu nome ou caminho. ✔ Serviço de Arquivos Distribuído ➔ Responsável por fornecer operações sobre os arquivos que compõe o sistema. ➔ Os arquivos podem ser armazenados de diferentes formas, dependendo do seu tipo e uso.
  • 14. Serviços Ofertados por um SAD ✔ Serviço de Diretórios Distribuído ➔ Responsável por manter a organização dos arquivos armazenados no sistema. ➔ Ele fornece uma interface para que os usuários possam arranjar seus arquivos num formato hierárquico, que é estruturado em diretórios e subdiretórios.
  • 15. Características Procuradas em um SAD ✔ Tolerância a Falhas ➔ Se um servidor cair ou ficar fora do ar ou da rede, o sistema de arquivos não pode perder informações e nem ficar indisponível total ou parcialmente ✔ Acesso Concorrente ➔ Vários usuários podem acessar vários arquivos, ou os mesmos arquivos, sem sofrer danos, perda de performance ou quaisquer outras restrições ✔ Replicação de Arquivos ➔ Com esta funcionalidade, a confiança e a eficiência do serviço de arquivos é aumentada significativamente
  • 16. Características de um SAD ? ✔ Transparência ✔ Usuários acessam pastas locais ✔ Concorrência ➔ Usuários concorrendo pelo mesmo arquivo ✔ Replicação ➔ Arquivos são replicados ✔ Heterogeneidade ➔ Diferentes recursos ✔ Segurança ➔ Controle de acesso / autenticação de clientes ✔ Eficiência ➔ Escalabilidade e usuários concorrentes. Latência
  • 17. Características de um SAD ? ✔ Transparência ✔ Usuários acessam pastas locais ✔ Concorrência ➔ Usuários concorrendo pelo mesmo arquivo ✔ Replicação ➔ Arquivos são replicados ✔ Heterogeneidade ➔ Diferentes recursos ✔ Segurança ➔ Controle de acesso / autenticação de clientes ✔ Eficiência ➔ Escalabilidade e usuários concorrentes. Latência
  • 18. Características de um SAD ? ✔ Tolerância a falhas ➔ Queda de servidores ou comunicação ✔ Consistência ➔ Todas as copias dos arquivos como se fossem uma apenas ✔ Escalabilidade ➔ Prever o crescimento de nós e usuários no sistema ✔ Integridade dos dados ➔ Arquivo é compartilhado por vários usuários.
  • 20. NFS ✔ Exemplo Canônico de SAD ✔ Arquitetura simples Cliente-Servidor ✔ Muito popular no Unix ✔ Ideia Fundamental: ✔ Cada servidor de Arquivos fornece uma visão padronizada de seu sistema local de arquivos ✔ Fornece ao cliente acesso transparente a um sistema de arquivos que é gerenciado por um servidor remoto ✔ É utilizada um sistema de Arquivo Virtual (VFS) ✔ Todas as requisições ao FS do servidor são realizadas via RPC (Remote Procedure Call)
  • 21. NFS
  • 22. SAD baseados em Cluster ✔ Clusters normalmente são usados para computação paralela ✔ Algo semelhante pode ser feito em SAD como file stripping (arquivos em tiras) através dos servidores ✔ Funciona bem se os dados tiverem uma estrutura bem regular ✔ Para aplicações de uso geral e dados irregulares e com diferentes estruturas esse modelo não será muito efetivo ✔ Outra abordagem possível é armazenar arquivos inteiros em servidores, sem particionar o arquivo
  • 23. Modelos de armazenamento de arquivos em SAD
  • 24. GFS (Google File System) ✔ Bem descrito no artigo de Ghemawet, 2003 ✔ O artigo o descreve como: ✔ SAD escalar para grandes aplicações distribuídas e orientada ao uso de intensivo de dados (Arquivos) ✔ Provê tolerância a falhas, roda em hardware comum e economicamente viável, e oferece alta performance agregada a um conjunto grande de clientes ✔ Cada cluster GFS consiste em vários servidores de dados e um mestre ✔ Arquivos GFS são divididos em porções de 64Mb ✔ O mestre(servidor de metadados) possui o endereço onde cada arquivo se encontra no SAD.
  • 25. GFS (Google File System)
  • 26. É um sistema de arquivo open source, que trabalha em cluster e é capaz de escalar diversos petabytes e gerenciar milhares de clientes. Se encaixa bem para tarefas “data- intensive” como armazenamento na núvem e streaming de media - GlusterFS User Guide at gluster.readthedocs.io GlusterFS
  • 27. Funcionalidades Principais funcionalidades, implementadas através de tradutores: ✔ Replicação e espelhamento em nível de arquivos ✔ Striping em nível de arquivos ✔ Load balancing em nível de arquivos ✔ Volume failover ✔ Scheduling e disk caching ✔ Storage quotas
  • 28. Configuração ✔ Arquitetura Modular ➔ Pode ser configurado em modo standalone (1 servidor) ➔ O sistema pode crescer ao tempo de acordo com a necessidade
  • 29. Características Importantes ✔ Sistema de arquivos distribuído e descentralizado ✔ Agregação de múltiplas unidades de armazenamento remotas (bricks) em um único volume ✔ Funcionalidades implementadas através de tradutores (translators) ✔ Descarta a necessidade da utilização de servidores de metadados
  • 34. Exemplos de SAD ✔ NFS ✔ GFS(Global FileSystem) ✔ GFS(Google FileSystem) ✔ GlusterFS ✔ PVFS (parallel virutal file system) ✔ AFS (Andrew FileSystem) ✔ DFS ✔ CODA (Constant Data Availability) ✔ SUN Network Filesystem ✔ GlusterFS ✔ Hadoop ✔ Ceph ✔ XteemFS ✔ Lustre
  • 35. Sistemas Distribuídos Sistemas de Arquivos Distribuídos Frederico Madeira LPIC-1, LPIC-2, CCNA fred@madeira.eng.br www.madeira.eng.br