SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
Introdu¸˜o
                            ca
                    Arquitetura
                 Implementa¸˜o
                            ca
                      Conclus˜o
                             a




        Sistema de Preserva¸˜o Digital
                           ca
         Camada de Armazenamento

                GT-DigitalPreservation
C3SL - Centro de Computa¸˜o Cient´
                         ca       ıfica e Software Livre

                Departamento de Inform´tica
                                        a
               Universidade Federal do Paran´
                                            a


                   Setembro de 2011

                                                            university-logo


                         Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca
                       Arquitetura
                    Implementa¸˜o
                               ca
                         Conclus˜o
                                a



1   Introdu¸˜o
           ca

2   Arquitetura

3   Implementa¸˜o
              ca

4   Conclus˜o
           a




                                                               university-logo


                            Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca
                                     Camada de armazenamento
                       Arquitetura
                                     Implementa¸˜o
                                               ca
                    Implementa¸˜o
                               ca
                                     Camadas do sistema
                         Conclus˜o
                                a




1   Introdu¸˜o
           ca

2   Arquitetura

3   Implementa¸˜o
              ca

4   Conclus˜o
           a




                                                               university-logo


                            Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca
                                        Camada de armazenamento
                          Arquitetura
                                        Implementa¸˜o
                                                  ca
                       Implementa¸˜o
                                  ca
                                        Camadas do sistema
                            Conclus˜o
                                   a


Camada de armazenamento




     Armazenar as r´plicas do reposit´rio
                   e                 o
     Armazenar informa¸˜es das r´plicas
                      co        e
     Permitir a troca de mensagens entre reposit´rios
                                                o
     Permitir a transferˆncia de r´plicas entre reposit´rios
                        e         e                    o




                                                                  university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca
                                       Camada de armazenamento
                         Arquitetura
                                       Implementa¸˜o
                                                 ca
                      Implementa¸˜o
                                 ca
                                       Camadas do sistema
                           Conclus˜o
                                  a


Implementa¸˜o
          ca




     Compat´ com qualquer m´quina Unix
           ıvel            a
     Utilizar ferramentas padr˜es do sistema
                              o
     Shell Scripts, SSH, RSYNC




                                                                 university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                        ca
                              Camada de armazenamento
                Arquitetura
                              Implementa¸˜o
                                        ca
             Implementa¸˜o
                        ca
                              Camadas do sistema
                  Conclus˜o
                         a




                   Aplicações




                     Interface

        Gerenciamento de Réplicas

               Armazenamento


                    Repositório


Figura: Camadas do Sistema de Preserva¸˜o Digital
                                      ca
                                                        university-logo


                     Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca    Armazenamento de r´plicas
                                                          e
                       Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                               c˜     e
                    Implementa¸˜o
                               ca    Troca de mensagens
                         Conclus˜o
                                a    Transferˆncia de r´plicas
                                             e         e




1   Introdu¸˜o
           ca

2   Arquitetura

3   Implementa¸˜o
              ca

4   Conclus˜o
           a




                                                                                university-logo


                            Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Fun¸oes da camada
   c˜




     Armazenamento de r´plicas
                       e
     Armazenamento de informa¸˜es de r´plicas
                             co       e
     Troca de mensagens
     Transferˆncia de r´plicas
             e         e




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de r´plicas
                                                            e
                         Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


Armazenamento de r´plicas
                  e




     S˜o armazenadas sobre o sistema de arquivos do Sistema
      a
     Operacional
     Objetos s˜o associados a chaves
              a
     Chave do objeto ´ a hash de seu conte´do
                     e                    u
     MD5: Message-Digest algorithm 5 - hash de 128 bits




                                                                                  university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de r´plicas
                                                            e
                         Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


Exemplo de nome de r´plica
                    e




     MD5sum: 4faee3cd92839fe0b477b6de44292b0b
     Confiabilidade desejada: 0.9999
     Nome da r´plica: 4faee3cd92839fe0b477b6de44292b0b-0.9999
              e




                                                                                  university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de r´plicas
                                                            e
                         Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


Informa¸oes gravadas no nome
       c˜




     Chave e confiabilidade
         Informa¸˜es fundamentais
                co
         N˜o se alteram
           a




                                                                                  university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Informa¸oes de r´plicas
       c˜       e




      Algumas informa¸˜es de r´plicas s˜o armazenadas em uma
                     co       e        a
      base de dados
      Tabela relaciona chave a:
          Tamanho do objeto
          Data da ultima auditoria
                  ´
          Data da pr´xima auditoria
                    o




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Base de dados




     PostgreSQL, MySQL
         Excesso de funcionalidades
     Escrever rotinas de manipula¸˜o e guardar tabela em arquivo
                                 ca
     SQLite




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


O software SQLite


     Banco de dados transacional
     Simples configura¸˜o
                     ca
     Serverless
     Consultas SQL
     ´
     Indices
     Controle de concorrˆncia
                        e
     Bem Documentado
     Muito utilizado

                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Troca de mensagens




     Comunica¸˜o entre reposit´rios
             ca               o
         Enviar notifia¸˜es para outros reposit´rios
                      co                      o
     Execu¸˜o de comandos remotos
          ca
         Recuperar informa¸˜es de outros reposit´rios
                          co                    o




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


O software SSH




     Comunica¸˜o segura sobre a Internet
             ca
     Ferramenta padr˜o
                    a
         Muito utilizado para administra¸˜o remota de sistemas
                                        ca
     Aceita¸˜o do sistema
           ca
         SSH provavelmente j´ instalado no sistema
                            a




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Controle do acesso




      Reposit´rios compartilham acesso via SSH
             o
      SSHs s˜o limitados a execu¸˜o de um unico comando
            a                   ca        ´
      Script Shell com um conjunto de opera¸˜es
                                           co




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de r´plicas
                                                             e
                          Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Transferˆncia de arquivos
        e




      Inser¸˜o de um novo objeto
           ca
      Recuperara¸˜o de um objeto
                ca
      Auditoria de um objeto




                                                                                   university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de r´plicas
                                                            e
                         Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


O software Rsync




     C´pia remota (e local) de arquivos
      o
     Transmiss˜o confi´vel de dados
              a      a
     Muito usado em sistemas de c´pia de seguran¸a e
                                 o              c
     espelhamento
     Funciona como um daemon ou via uma conex˜o SSH
                                             a




                                                                                  university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                     ca    Armazenamento de r´plicas
                                                                e
                             Arquitetura   Armazenamento de informa¸oes de r´plicas
                                                                     c˜     e
                          Implementa¸˜o
                                     ca    Troca de mensagens
                               Conclus˜o
                                      a    Transferˆncia de r´plicas
                                                   e         e


Exemplo de Transferˆncia
                   e



    1   Reposit´rio A precisar transferir a r´plica F para o reposit´rio
               o                             e                      o
        B
    2   A notifica B sobre a transferˆncia, deixando F dispon´ para
                                    e                       ıvel
        leitura
    3   B utiliza o Rsync para fazer uma c´pia de F
                                          o

        Cada reposit´rio tem permiss˜o de escrita somente em seu
                     o              a
        pr´prio sistema
          o


                                                                                      university-logo


                                  Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca    Armazenamento de R´plicas
                                                           e
                       Arquitetura   Armazenamento de informa¸oes de r´plica
                                                               c˜     e
                    Implementa¸˜o
                               ca    Troca de mensagens
                         Conclus˜o
                                a    Transferˆncia de r´plicas
                                             e         e




1   Introdu¸˜o
           ca

2   Arquitetura

3   Implementa¸˜o
              ca

4   Conclus˜o
           a




                                                                               university-logo


                            Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de R´plicas
                                                              e
                          Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Tarefas do Armazenamento de R´plicas
                             e




     Checar a existˆncia da r´plica
                   e         e
         Consulta ao sistema de arquivos
     Verifica¸˜o da integridade da r´plica
            ca                     e
         Script Shell adicional para verificar MD5sum das r´plicas
                                                          e




                                                                                  university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de R´plicas
                                                             e
                         Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


Tarefas envolvendo a Base de Dados




     Calcular soma do tamanho das r´plicas armazenadas
                                   e
     Verificar a necessidade de executar uma auditoria




                                                                                 university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                   ca    Armazenamento de R´plicas
                                                               e
                           Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                   c˜     e
                        Implementa¸˜o
                                   ca    Troca de mensagens
                             Conclus˜o
                                    a    Transferˆncia de r´plicas
                                                 e         e


Interface para a Base de Dados



      Script Shell funciona como interface para o banco de dados
      Interface oference um conjunto de opera¸˜es poss´
                                             co       ıveis
          Criar banco / tabela
          Inserir / Remover entradas
          Consultar chaves dos objetos que precisam de auditoria
          Atualizar datas de auditoria
          Outras
      Interface ´ respons´vel por executar as consultas SQL
                e        a


                                                                                   university-logo


                                Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de R´plicas
                                                              e
                          Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Troca de mensagens usando SSH




     Notificar / Consultar outro reposit´rio
                                       o
     Reposit´rios compartilham par[es] de chave[s] (p´blica,
            o                                        u
     privada)
     Conex˜o SSH est´ restrita ` execu¸˜o de um unico comando
          a         a          a      ca        ´




                                                                                  university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                   ca    Armazenamento de R´plicas
                                                               e
                           Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                   c˜     e
                        Implementa¸˜o
                                   ca    Troca de mensagens
                             Conclus˜o
                                    a    Transferˆncia de r´plicas
                                                 e         e


Troca de mensagens


   1   Reposit´rio A precisa notificar / consultar o Reposit´rio B
              o                                            o
   2   A utiliza uma interface para iniciar a conex˜o SSH enviando
                                                   a
       uma lista de parˆmetros
                       a
   3   Autentica¸˜o utilizando chave de preserva¸˜o
                ca                              ca
   4   A chave p´blica em B restringe o acesso ` execu¸˜o de um
                 u                             a      ca
       unico Script Shell (Opera¸˜esSSH.sh)
       ´                        co
   5   O primeiro parˆmetro enviado por A seleciona a opera¸˜o a
                     a                                     ca
       ser executada em B
   6   A recebe a resposta do comando em B pela sa´ padr˜o
                                                  ıda   a

                                                                                   university-logo


                                Lauro    Camada de Armazenamento
Introdu¸˜o
                                   ca    Armazenamento de R´plicas
                                                               e
                           Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                   c˜     e
                        Implementa¸˜o
                                   ca    Troca de mensagens
                             Conclus˜o
                                    a    Transferˆncia de r´plicas
                                                 e         e


Restri¸˜o de um comando na chave p´blica
      ca                          u




  no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-
  pty,command=”/home/ufpr digitalpreservation/gt-
  dp/repositorio/armazenamento/ssh/operacoesSSH.sh”ssh-rsa
  AAAAB...




                                                                                   university-logo


                                Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de R´plicas
                                                              e
                          Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Interface para utiliza¸˜o do SSH
                      ca




      Respons´vel por estabelecer uma conex˜o SSH entre dois
               a                           a
      reposit´rios
             o
      Gerencia n´mero de tentativas, timeouts e erros de conex˜o
                u                                             a




                                                                                  university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                 ca    Armazenamento de R´plicas
                                                             e
                         Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                 c˜     e
                      Implementa¸˜o
                                 ca    Troca de mensagens
                           Conclus˜o
                                  a    Transferˆncia de r´plicas
                                               e         e


Opera¸oes SSH
     c˜



     ´
     Unico comando que pode ser executado via conex˜o SSH
                                                   a
     Parˆmetro enviado seleciona uma das opera¸oes poss´
        a                                     c˜       ıveis
         Notificar transferˆncia de r´plica
                           e         e
         Verificar existˆncia de r´plica
                       e         e
         Consultar espa¸o dispon´ para armazenamento
                         c        ıvel
         Consular / Atualizar informa¸˜es de auditoria
                                       co
         Outras




                                                                                 university-logo


                              Lauro    Camada de Armazenamento
Introdu¸˜o
                                  ca    Armazenamento de R´plicas
                                                              e
                          Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                  c˜     e
                       Implementa¸˜o
                                  ca    Troca de mensagens
                            Conclus˜o
                                   a    Transferˆncia de r´plicas
                                                e         e


Transferˆncias de r´plicas
        e          e




      Transferˆncia eficiente e confi´vel utilizando Rsync
              e                    a
      Inser¸˜o de objeto
           ca
      Auditoria de objeto
      Recupera¸˜o de objeto
              ca




                                                                                  university-logo


                               Lauro    Camada de Armazenamento
Introdu¸˜o
                                     ca    Armazenamento de R´plicas
                                                                 e
                             Arquitetura   Armazenamento de informa¸oes de r´plica
                                                                     c˜     e
                          Implementa¸˜o
                                     ca    Troca de mensagens
                               Conclus˜o
                                      a    Transferˆncia de r´plicas
                                                   e         e


Rsync




        Cada reposit´rio roda um daemon rsync
                    o
        Diret´rio de r´plicas ´ p´blico
             o        e       e u
        Reposit´rio informa path da r´plica para envi´-la
               o                     e               a
        Reposit´rio pergunta path da r´plica para recuper´-la
               o                      e                  a




                                                                                     university-logo


                                  Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca
                       Arquitetura
                    Implementa¸˜o
                               ca
                         Conclus˜o
                                a




1   Introdu¸˜o
           ca

2   Arquitetura

3   Implementa¸˜o
              ca

4   Conclus˜o
           a




                                                               university-logo


                            Lauro    Camada de Armazenamento
Introdu¸˜o
                            ca
                    Arquitetura
                 Implementa¸˜o
                            ca
                      Conclus˜o
                             a




Camada ´ respons´vel por armazenar r´plicas e informa¸˜es
         e      a                   e                co
relacionadas
Camada implementa troca de mensagens e transferˆncia de
                                               e
arquivos entre reposit´rios
                      o
Software livre e ferramentas amplamente utilizadas




                                                            university-logo


                         Lauro    Camada de Armazenamento
Introdu¸˜o
                               ca
                       Arquitetura
                    Implementa¸˜o
                               ca
                         Conclus˜o
                                a




D´vidas? Coment´rios? Sugest˜es?
 u             a            o




                                                               university-logo


                            Lauro    Camada de Armazenamento

Weitere ähnliche Inhalte

Ähnlich wie GT-Digital Preservation - Camada de Armazenamento

(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...
(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...
(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...tetri
 
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...Manoel Pimentel Medeiros
 
GT-Digital Preservation - Camada de Interface
GT-Digital Preservation - Camada de InterfaceGT-Digital Preservation - Camada de Interface
GT-Digital Preservation - Camada de InterfaceRoberto Beraldo Chaiben
 
Verificação de Sistemas de Tempo Real
Verificação de Sistemas de Tempo RealVerificação de Sistemas de Tempo Real
Verificação de Sistemas de Tempo RealJoel Carvalho
 
ICA-AtoM: Criação de um registo de descrição
ICA-AtoM: Criação de um registo de descriçãoICA-AtoM: Criação de um registo de descrição
ICA-AtoM: Criação de um registo de descriçãoSara Santos
 
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...Marcio Barbosa de Carvalho
 

Ähnlich wie GT-Digital Preservation - Camada de Armazenamento (9)

(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...
(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...
(Slides) Uma Aplicação de Algoritmos Esteganográficos para Armazenamento de I...
 
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...
Roteiro Ágil - Integrando princípios ágeis para a melhoria do desenvolvimento...
 
Domain driven design
Domain driven designDomain driven design
Domain driven design
 
GT-Digital Preservation - Camada de Interface
GT-Digital Preservation - Camada de InterfaceGT-Digital Preservation - Camada de Interface
GT-Digital Preservation - Camada de Interface
 
Verificação de Sistemas de Tempo Real
Verificação de Sistemas de Tempo RealVerificação de Sistemas de Tempo Real
Verificação de Sistemas de Tempo Real
 
Integrador
IntegradorIntegrador
Integrador
 
Gestao de Rede | Andracom
Gestao de Rede | AndracomGestao de Rede | Andracom
Gestao de Rede | Andracom
 
ICA-AtoM: Criação de um registo de descrição
ICA-AtoM: Criação de um registo de descriçãoICA-AtoM: Criação de um registo de descrição
ICA-AtoM: Criação de um registo de descrição
 
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...
Um Framework para a Construção Automatizada de Cloud Monitoring Slices Basead...
 

GT-Digital Preservation - Camada de Armazenamento

  • 1. Introdu¸˜o ca Arquitetura Implementa¸˜o ca Conclus˜o a Sistema de Preserva¸˜o Digital ca Camada de Armazenamento GT-DigitalPreservation C3SL - Centro de Computa¸˜o Cient´ ca ıfica e Software Livre Departamento de Inform´tica a Universidade Federal do Paran´ a Setembro de 2011 university-logo Lauro Camada de Armazenamento
  • 2. Introdu¸˜o ca Arquitetura Implementa¸˜o ca Conclus˜o a 1 Introdu¸˜o ca 2 Arquitetura 3 Implementa¸˜o ca 4 Conclus˜o a university-logo Lauro Camada de Armazenamento
  • 3. Introdu¸˜o ca Camada de armazenamento Arquitetura Implementa¸˜o ca Implementa¸˜o ca Camadas do sistema Conclus˜o a 1 Introdu¸˜o ca 2 Arquitetura 3 Implementa¸˜o ca 4 Conclus˜o a university-logo Lauro Camada de Armazenamento
  • 4. Introdu¸˜o ca Camada de armazenamento Arquitetura Implementa¸˜o ca Implementa¸˜o ca Camadas do sistema Conclus˜o a Camada de armazenamento Armazenar as r´plicas do reposit´rio e o Armazenar informa¸˜es das r´plicas co e Permitir a troca de mensagens entre reposit´rios o Permitir a transferˆncia de r´plicas entre reposit´rios e e o university-logo Lauro Camada de Armazenamento
  • 5. Introdu¸˜o ca Camada de armazenamento Arquitetura Implementa¸˜o ca Implementa¸˜o ca Camadas do sistema Conclus˜o a Implementa¸˜o ca Compat´ com qualquer m´quina Unix ıvel a Utilizar ferramentas padr˜es do sistema o Shell Scripts, SSH, RSYNC university-logo Lauro Camada de Armazenamento
  • 6. Introdu¸˜o ca Camada de armazenamento Arquitetura Implementa¸˜o ca Implementa¸˜o ca Camadas do sistema Conclus˜o a Aplicações Interface Gerenciamento de Réplicas Armazenamento Repositório Figura: Camadas do Sistema de Preserva¸˜o Digital ca university-logo Lauro Camada de Armazenamento
  • 7. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e 1 Introdu¸˜o ca 2 Arquitetura 3 Implementa¸˜o ca 4 Conclus˜o a university-logo Lauro Camada de Armazenamento
  • 8. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Fun¸oes da camada c˜ Armazenamento de r´plicas e Armazenamento de informa¸˜es de r´plicas co e Troca de mensagens Transferˆncia de r´plicas e e university-logo Lauro Camada de Armazenamento
  • 9. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Armazenamento de r´plicas e S˜o armazenadas sobre o sistema de arquivos do Sistema a Operacional Objetos s˜o associados a chaves a Chave do objeto ´ a hash de seu conte´do e u MD5: Message-Digest algorithm 5 - hash de 128 bits university-logo Lauro Camada de Armazenamento
  • 10. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Exemplo de nome de r´plica e MD5sum: 4faee3cd92839fe0b477b6de44292b0b Confiabilidade desejada: 0.9999 Nome da r´plica: 4faee3cd92839fe0b477b6de44292b0b-0.9999 e university-logo Lauro Camada de Armazenamento
  • 11. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Informa¸oes gravadas no nome c˜ Chave e confiabilidade Informa¸˜es fundamentais co N˜o se alteram a university-logo Lauro Camada de Armazenamento
  • 12. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Informa¸oes de r´plicas c˜ e Algumas informa¸˜es de r´plicas s˜o armazenadas em uma co e a base de dados Tabela relaciona chave a: Tamanho do objeto Data da ultima auditoria ´ Data da pr´xima auditoria o university-logo Lauro Camada de Armazenamento
  • 13. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Base de dados PostgreSQL, MySQL Excesso de funcionalidades Escrever rotinas de manipula¸˜o e guardar tabela em arquivo ca SQLite university-logo Lauro Camada de Armazenamento
  • 14. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e O software SQLite Banco de dados transacional Simples configura¸˜o ca Serverless Consultas SQL ´ Indices Controle de concorrˆncia e Bem Documentado Muito utilizado university-logo Lauro Camada de Armazenamento
  • 15. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Troca de mensagens Comunica¸˜o entre reposit´rios ca o Enviar notifia¸˜es para outros reposit´rios co o Execu¸˜o de comandos remotos ca Recuperar informa¸˜es de outros reposit´rios co o university-logo Lauro Camada de Armazenamento
  • 16. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e O software SSH Comunica¸˜o segura sobre a Internet ca Ferramenta padr˜o a Muito utilizado para administra¸˜o remota de sistemas ca Aceita¸˜o do sistema ca SSH provavelmente j´ instalado no sistema a university-logo Lauro Camada de Armazenamento
  • 17. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Controle do acesso Reposit´rios compartilham acesso via SSH o SSHs s˜o limitados a execu¸˜o de um unico comando a ca ´ Script Shell com um conjunto de opera¸˜es co university-logo Lauro Camada de Armazenamento
  • 18. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Transferˆncia de arquivos e Inser¸˜o de um novo objeto ca Recuperara¸˜o de um objeto ca Auditoria de um objeto university-logo Lauro Camada de Armazenamento
  • 19. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e O software Rsync C´pia remota (e local) de arquivos o Transmiss˜o confi´vel de dados a a Muito usado em sistemas de c´pia de seguran¸a e o c espelhamento Funciona como um daemon ou via uma conex˜o SSH a university-logo Lauro Camada de Armazenamento
  • 20. Introdu¸˜o ca Armazenamento de r´plicas e Arquitetura Armazenamento de informa¸oes de r´plicas c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Exemplo de Transferˆncia e 1 Reposit´rio A precisar transferir a r´plica F para o reposit´rio o e o B 2 A notifica B sobre a transferˆncia, deixando F dispon´ para e ıvel leitura 3 B utiliza o Rsync para fazer uma c´pia de F o Cada reposit´rio tem permiss˜o de escrita somente em seu o a pr´prio sistema o university-logo Lauro Camada de Armazenamento
  • 21. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e 1 Introdu¸˜o ca 2 Arquitetura 3 Implementa¸˜o ca 4 Conclus˜o a university-logo Lauro Camada de Armazenamento
  • 22. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Tarefas do Armazenamento de R´plicas e Checar a existˆncia da r´plica e e Consulta ao sistema de arquivos Verifica¸˜o da integridade da r´plica ca e Script Shell adicional para verificar MD5sum das r´plicas e university-logo Lauro Camada de Armazenamento
  • 23. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Tarefas envolvendo a Base de Dados Calcular soma do tamanho das r´plicas armazenadas e Verificar a necessidade de executar uma auditoria university-logo Lauro Camada de Armazenamento
  • 24. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Interface para a Base de Dados Script Shell funciona como interface para o banco de dados Interface oference um conjunto de opera¸˜es poss´ co ıveis Criar banco / tabela Inserir / Remover entradas Consultar chaves dos objetos que precisam de auditoria Atualizar datas de auditoria Outras Interface ´ respons´vel por executar as consultas SQL e a university-logo Lauro Camada de Armazenamento
  • 25. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Troca de mensagens usando SSH Notificar / Consultar outro reposit´rio o Reposit´rios compartilham par[es] de chave[s] (p´blica, o u privada) Conex˜o SSH est´ restrita ` execu¸˜o de um unico comando a a a ca ´ university-logo Lauro Camada de Armazenamento
  • 26. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Troca de mensagens 1 Reposit´rio A precisa notificar / consultar o Reposit´rio B o o 2 A utiliza uma interface para iniciar a conex˜o SSH enviando a uma lista de parˆmetros a 3 Autentica¸˜o utilizando chave de preserva¸˜o ca ca 4 A chave p´blica em B restringe o acesso ` execu¸˜o de um u a ca unico Script Shell (Opera¸˜esSSH.sh) ´ co 5 O primeiro parˆmetro enviado por A seleciona a opera¸˜o a a ca ser executada em B 6 A recebe a resposta do comando em B pela sa´ padr˜o ıda a university-logo Lauro Camada de Armazenamento
  • 27. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Restri¸˜o de um comando na chave p´blica ca u no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no- pty,command=”/home/ufpr digitalpreservation/gt- dp/repositorio/armazenamento/ssh/operacoesSSH.sh”ssh-rsa AAAAB... university-logo Lauro Camada de Armazenamento
  • 28. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Interface para utiliza¸˜o do SSH ca Respons´vel por estabelecer uma conex˜o SSH entre dois a a reposit´rios o Gerencia n´mero de tentativas, timeouts e erros de conex˜o u a university-logo Lauro Camada de Armazenamento
  • 29. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Opera¸oes SSH c˜ ´ Unico comando que pode ser executado via conex˜o SSH a Parˆmetro enviado seleciona uma das opera¸oes poss´ a c˜ ıveis Notificar transferˆncia de r´plica e e Verificar existˆncia de r´plica e e Consultar espa¸o dispon´ para armazenamento c ıvel Consular / Atualizar informa¸˜es de auditoria co Outras university-logo Lauro Camada de Armazenamento
  • 30. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Transferˆncias de r´plicas e e Transferˆncia eficiente e confi´vel utilizando Rsync e a Inser¸˜o de objeto ca Auditoria de objeto Recupera¸˜o de objeto ca university-logo Lauro Camada de Armazenamento
  • 31. Introdu¸˜o ca Armazenamento de R´plicas e Arquitetura Armazenamento de informa¸oes de r´plica c˜ e Implementa¸˜o ca Troca de mensagens Conclus˜o a Transferˆncia de r´plicas e e Rsync Cada reposit´rio roda um daemon rsync o Diret´rio de r´plicas ´ p´blico o e e u Reposit´rio informa path da r´plica para envi´-la o e a Reposit´rio pergunta path da r´plica para recuper´-la o e a university-logo Lauro Camada de Armazenamento
  • 32. Introdu¸˜o ca Arquitetura Implementa¸˜o ca Conclus˜o a 1 Introdu¸˜o ca 2 Arquitetura 3 Implementa¸˜o ca 4 Conclus˜o a university-logo Lauro Camada de Armazenamento
  • 33. Introdu¸˜o ca Arquitetura Implementa¸˜o ca Conclus˜o a Camada ´ respons´vel por armazenar r´plicas e informa¸˜es e a e co relacionadas Camada implementa troca de mensagens e transferˆncia de e arquivos entre reposit´rios o Software livre e ferramentas amplamente utilizadas university-logo Lauro Camada de Armazenamento
  • 34. Introdu¸˜o ca Arquitetura Implementa¸˜o ca Conclus˜o a D´vidas? Coment´rios? Sugest˜es? u a o university-logo Lauro Camada de Armazenamento