gt-digital preservation - camada de armazenamento
Post on 05-Jul-2015
178 Views
Preview:
DESCRIPTION
TRANSCRIPT
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Sistema de Preservacao DigitalCamada de Armazenamento
GT-DigitalPreservationC3SL - Centro de Computacao Cientıfica e Software Livre
Departamento de InformaticaUniversidade Federal do Parana
Setembro de 2011
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
1 Introducao
2 Arquitetura
3 Implementacao
4 Conclusao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Camada de armazenamentoImplementacaoCamadas do sistema
1 Introducao
2 Arquitetura
3 Implementacao
4 Conclusao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Camada de armazenamentoImplementacaoCamadas do sistema
Camada de armazenamento
Armazenar as replicas do repositorio
Armazenar informacoes das replicas
Permitir a troca de mensagens entre repositorios
Permitir a transferencia de replicas entre repositorios
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Camada de armazenamentoImplementacaoCamadas do sistema
Implementacao
Compatıvel com qualquer maquina Unix
Utilizar ferramentas padroes do sistema
Shell Scripts, SSH, RSYNC
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Camada de armazenamentoImplementacaoCamadas do sistema
Armazenamento
Gerenciamento de Réplicas
Interface
Aplicações
Repositório
Figura: Camadas do Sistema de Preservacao Digital
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
1 Introducao
2 Arquitetura
3 Implementacao
4 Conclusao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Funcoes da camada
Armazenamento de replicas
Armazenamento de informacoes de replicas
Troca de mensagens
Transferencia de replicas
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Armazenamento de replicas
Sao armazenadas sobre o sistema de arquivos do SistemaOperacional
Objetos sao associados a chaves
Chave do objeto e a hash de seu conteudo
MD5: Message-Digest algorithm 5 - hash de 128 bits
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Exemplo de nome de replica
MD5sum: 4faee3cd92839fe0b477b6de44292b0b
Confiabilidade desejada: 0.9999
Nome da replica: 4faee3cd92839fe0b477b6de44292b0b-0.9999
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Informacoes gravadas no nome
Chave e confiabilidade
Informacoes fundamentaisNao se alteram
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Informacoes de replicas
Algumas informacoes de replicas sao armazenadas em umabase de dados
Tabela relaciona chave a:
Tamanho do objetoData da ultima auditoriaData da proxima auditoria
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Base de dados
PostgreSQL, MySQL
Excesso de funcionalidades
Escrever rotinas de manipulacao e guardar tabela em arquivo
SQLite
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
O software SQLite
Banco de dados transacional
Simples configuracao
Serverless
Consultas SQL
Indices
Controle de concorrencia
Bem Documentado
Muito utilizado
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Troca de mensagens
Comunicacao entre repositorios
Enviar notifiacoes para outros repositorios
Execucao de comandos remotos
Recuperar informacoes de outros repositorios
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
O software SSH
Comunicacao segura sobre a Internet
Ferramenta padrao
Muito utilizado para administracao remota de sistemas
Aceitacao do sistema
SSH provavelmente ja instalado no sistema
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Controle do acesso
Repositorios compartilham acesso via SSH
SSHs sao limitados a execucao de um unico comando
Script Shell com um conjunto de operacoes
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Transferencia de arquivos
Insercao de um novo objeto
Recuperaracao de um objeto
Auditoria de um objeto
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
O software Rsync
Copia remota (e local) de arquivos
Transmissao confiavel de dados
Muito usado em sistemas de copia de seguranca eespelhamento
Funciona como um daemon ou via uma conexao SSH
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de replicasArmazenamento de informacoes de replicasTroca de mensagensTransferencia de replicas
Exemplo de Transferencia
1 Repositorio A precisar transferir a replica F para o repositorioB
2 A notifica B sobre a transferencia, deixando F disponıvel paraleitura
3 B utiliza o Rsync para fazer uma copia de F
Cada repositorio tem permissao de escrita somente em seuproprio sistema
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
1 Introducao
2 Arquitetura
3 Implementacao
4 Conclusao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Tarefas do Armazenamento de Replicas
Checar a existencia da replica
Consulta ao sistema de arquivos
Verificacao da integridade da replica
Script Shell adicional para verificar MD5sum das replicas
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Tarefas envolvendo a Base de Dados
Calcular soma do tamanho das replicas armazenadas
Verificar a necessidade de executar uma auditoria
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Interface para a Base de Dados
Script Shell funciona como interface para o banco de dados
Interface oference um conjunto de operacoes possıveis
Criar banco / tabelaInserir / Remover entradasConsultar chaves dos objetos que precisam de auditoriaAtualizar datas de auditoriaOutras
Interface e responsavel por executar as consultas SQL
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Troca de mensagens usando SSH
Notificar / Consultar outro repositorio
Repositorios compartilham par[es] de chave[s] (publica,privada)
Conexao SSH esta restrita a execucao de um unico comando
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Troca de mensagens
1 Repositorio A precisa notificar / consultar o Repositorio B
2 A utiliza uma interface para iniciar a conexao SSH enviandouma lista de parametros
3 Autenticacao utilizando chave de preservacao
4 A chave publica em B restringe o acesso a execucao de umunico Script Shell (OperacoesSSH.sh)
5 O primeiro parametro enviado por A seleciona a operacao aser executada em B
6 A recebe a resposta do comando em B pela saıda padrao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Restricao de um comando na chave publica
no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty,command=”/home/ufpr digitalpreservation/gt-dp/repositorio/armazenamento/ssh/operacoesSSH.sh”ssh-rsaAAAAB...
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Interface para utilizacao do SSH
Responsavel por estabelecer uma conexao SSH entre doisrepositorios
Gerencia numero de tentativas, timeouts e erros de conexao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Operacoes SSH
Unico comando que pode ser executado via conexao SSH
Parametro enviado seleciona uma das operacoes possıveis
Notificar transferencia de replicaVerificar existencia de replicaConsultar espaco disponıvel para armazenamentoConsular / Atualizar informacoes de auditoriaOutras
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Transferencias de replicas
Transferencia eficiente e confiavel utilizando Rsync
Insercao de objeto
Auditoria de objeto
Recuperacao de objeto
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Armazenamento de ReplicasArmazenamento de informacoes de replicaTroca de mensagensTransferencia de replicas
Rsync
Cada repositorio roda um daemon rsync
Diretorio de replicas e publico
Repositorio informa path da replica para envia-la
Repositorio pergunta path da replica para recupera-la
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
1 Introducao
2 Arquitetura
3 Implementacao
4 Conclusao
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Camada e responsavel por armazenar replicas e informacoesrelacionadas
Camada implementa troca de mensagens e transferencia dearquivos entre repositorios
Software livre e ferramentas amplamente utilizadas
Lauro Camada de Armazenamento
university-logo
IntroducaoArquitetura
ImplementacaoConclusao
Duvidas? Comentarios? Sugestoes?
Lauro Camada de Armazenamento
top related