SlideShare a Scribd company logo
Università degli Studi di Bologna
                           Facoltà di Ingegneria
                  Corso di Laurea in Ingegneria Informatica
                 Amministrazione di reti di calcolatori




   Analisi ed implementazione di
      file system distribuiti in
           ambiente linux

Tesi di: Raul Cafini                     Relatore: Dott. Ing. Marco Prandini
                                              Correlatori: Ing. Luca Ghedini
Presentazione
        Questa tesi si è posta l’obiettivo dell’analisi e della
      implementazione di file system distribuiti in un ambiente
            cluster basato su sistema operativo linux.
•  Un file system distribuito è uno strumento in grado di gestire
   una piattaforma dati comune tra più macchine distribuendo il
   contenuto informativo globale tra di esse, garantendo la
   consistenza, l’integrità e l’accesso concorrente ai dati anche in
   caso di guasti (Fault Tolerant).
•  L’infrastruttura hardware portante su cui è implemetato il file
   system prende nome di cluster. Un cluster (dall’inglese grappolo)
   è un insieme di computer connessi tramite una rete telematica a
   scopo di incremento prestazionale in termini di calcolo
   computazionale e/o di risorse distribuite.

22 Giugno 2006                    Raul Cafini                          2
Documentazione, analisi ed implementazione
Il lavoro si è svolto principalmente in tre fasi:

1.      Documentazione: Soluzioni cluster basate sul s.o. linux,
        file system distribuiti (implementazioni proprietarie e open
        source come AFS, GPFS, CODA, GFS, LUSTRE, ...) e
        tecniche di fault tolerance.

2.      Analisi: Software di gestione del cluster, software di base
        dei file system distribuiti, gestore dei volumi logici,
        topologie e architetture di implementazione.

3.      Implementazione: Realizzazione di un piccolo sistema
         cluster linux con file system distribuito in lab4.

 22 Giugno 2006                   Raul Cafini                          3
Red Hat/Fedora - GFS
La scelta, Perchè Red Hat/Fedora GFS:

•  Il primo file system con sviluppo nativo a 64-bit.
•  Altamente scalabile (fino a 256 nodi) per l'introduzione di
   server e device di storage.
•  Recente apertura verso la comunità open source.
•  Uso della semantica standard per i file system UNIX/POSIX.
•  File system di tipo journaled.
•  Basato su gestore di volumi logici altamente flessibile
     –  (LVM – Logical Volume Manager)




22 Giugno 2006                    Raul Cafini                    4
Red Hat/Fedora - GFS
                     GFS over GNBD-SAN
                        GFS over SAN
                              GNBD-DAS
    (Global Network (Storage Area–Network) Area Network)
     (Global Network Block Device -Direct Attached Storage)
                    Block Device Storage




22 Giugno 2006                Raul Cafini                     5
Il cluster 1/2
Profilo Hardware:
•  Desktop HP - AMD64

Caratteristiche tecniche:
•  Processore:
      DualCore AMD Athlon 64 X2
•  Memoria Primaria:
      512 MB
•  Memoria Secondaria:
      80 GB
•  Scheda Rete:
      Gigabit Ethernet (10-100 MBit/s)

Profilo Software:
•  Sistema operativo:
      Fedora Core release 4
•  Kernel release:
      2.6.11-1.1369_FC4smp

  22 Giugno 2006                         Raul Cafini   6
Il cluster 2/2
Red Hat - Cluster Suite:
Componenti software per l’interazione
tra i nodi del cluster:

• CCS (Cluster Configuration System)

• CMAN (Cluster MANager)

• Fence (Fencing Mechanism)

• RGManager (Resource Group
Manager)

• DLM (Distribuited Lock Manager)



 22 Giugno 2006                     Raul Cafini   7
Il Logical Volume Manager
•  Gestore di volumi logici
•  Gestione clusterized
   (CLVM)
•  Maggiore flessibilità di
   management
•  Estensione dei concetti di
   disco e partizione disco
•  Layer di astrazione logica
    –  Physical volumes
    –  Volume groups
    –  Logical volumes
•  Mapping linear/striped
•  Creazione di Snapshots

22 Giugno 2006                  Raul Cafini   8
Il cluster del LAB4
•  Topologia: GFS over GNBD-DAS
•  3 Nodi
     ü 2 GFS nodes (GNBD Clients)
     ü 1 GNBD Server
•  Connessione tramite sola rete LAN
(lab4cluster).
•  Import/Export di block device tramite
protocollo GNBD (Global Network Block
Device).
•  Gestione clusterized dei volumi logici
(CLVM).
•  Creazione e Montaggio del file system
tramite comandi standard unix/linux
(mkfs, mount).




  22 Giugno 2006                            Raul Cafini   9
Fault Tolerance
Tecniche che permettono di far fronte ad un guasto nel sistema
(device, nodo, rete, …) senza che la serie di servizi o di risorse che
esso rende disponibile ne risenta:
•  Multipath (SAN)
    –  Multiported (DAS)
•  Mirroring
    –  Hardware (RAID)
    –  Software (LVM)
•  Channel Bonding




22 Giugno 2006                   Raul Cafini                             10
Conclusioni
•  Analisi della gamma di file system distribuiti:
     –  Analisi di un ampia documentazione sul mondo dei file system
        distribuiti, concetti e le potenzialità delle varie implementazioni.

•  Creazione del cluster:
     –  Studio delle componenti software della infrastruttura cluster su cui
        creare il file system distribuito.

•  Realizzazione del file system distribuito:
     –  Analisi delle componenti software del file system distribuito (locking)
     –  logical volume manager

•  Analisi delle tecnologie di fault tolerance:
     –  Multipath, Mirroring, Channel Bonding…


22 Giugno 2006                         Raul Cafini                                11
Sviluppi Futuri
•  Aggiunta di più server GNBD:
    –  Aumentare lo spazio di storage dedicato al file system
       dividendo lo spazio su più server GNBD.
•  Accesso al file system GFS anche dai nodi GNBD:
    –  Accesso al file system GFS anche dai nodi Server GNBD
       (limitazioni).
•  Realizzazione di un sistema pienamente fault tolerant:
    –  Implementazione di una delle soluzioni analizzate e relativi
       test di tolleranza al failure dei componenti.
•  Analisi delle prestazioni:
    –  Tra le varie topologie GFS.
    –  Tra vari file system distribuiti (IBM-GPFS, AFS, …).

22 Giugno 2006                   Raul Cafini                          12
Fine.




22 Giugno 2006    Raul Cafini   13

More Related Content

Similar to Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux.

Google File System - GFS
Google File System - GFSGoogle File System - GFS
Google File System - GFS
Gabriele Lombari
 
The Google File System
The Google File SystemThe Google File System
The Google File System
Alessandra Zullo
 
BNCF Digital long term preservation: glusterfs
BNCF Digital long term preservation: glusterfsBNCF Digital long term preservation: glusterfs
BNCF Digital long term preservation: glusterfs
Cristiano Corsani
 
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
Marco Cavallini
 
Agrillo Fedora 11 release party 18 giugno 2009
Agrillo Fedora 11 release party 18 giugno 2009Agrillo Fedora 11 release party 18 giugno 2009
Agrillo Fedora 11 release party 18 giugno 2009Giuseppe Agrillo
 
Introduzione a Docker
Introduzione a DockerIntroduzione a Docker
Introduzione a Docker
Roberto Messora
 
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxMarco Ferrigno
 
Glusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatileGlusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatile
BioDec
 
Understanding Linux
Understanding LinuxUnderstanding Linux
Understanding Linux
NaLUG
 
Lug Roma3 Corso Linux Base
Lug Roma3   Corso Linux BaseLug Roma3   Corso Linux Base
Lug Roma3 Corso Linux Basefosk
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
Mirko Mancin
 
Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEA
NaLUG
 
Linux Security Hardening - panoramica sui principi generali per la riduzione...
Linux  Security Hardening - panoramica sui principi generali per la riduzione...Linux  Security Hardening - panoramica sui principi generali per la riduzione...
Linux Security Hardening - panoramica sui principi generali per la riduzione...
Marco Ferrigno
 
Hardening
HardeningHardening
Hardening
NaLUG
 
Amministrazione base dei sistemi Linux
Amministrazione base dei sistemi LinuxAmministrazione base dei sistemi Linux
Amministrazione base dei sistemi Linux
Paolo Campegiani
 
Gestione dischi - File system - LVM
 Gestione dischi - File system - LVM Gestione dischi - File system - LVM
Gestione dischi - File system - LVM
Fulvio Corno
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embeddedDaniele Costarella
 
Realizzare una rete aziendale con linux e samba
Realizzare una rete aziendale con linux e sambaRealizzare una rete aziendale con linux e samba
Realizzare una rete aziendale con linux e samba
Andrea Mauro
 
Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
 Cosa è Gnu/Linux - Breve storia - Concetti fondamentali Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
Fulvio Corno
 

Similar to Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux. (20)

Google File System - GFS
Google File System - GFSGoogle File System - GFS
Google File System - GFS
 
The Google File System
The Google File SystemThe Google File System
The Google File System
 
BNCF Digital long term preservation: glusterfs
BNCF Digital long term preservation: glusterfsBNCF Digital long term preservation: glusterfs
BNCF Digital long term preservation: glusterfs
 
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
 
Agrillo Fedora 11 release party 18 giugno 2009
Agrillo Fedora 11 release party 18 giugno 2009Agrillo Fedora 11 release party 18 giugno 2009
Agrillo Fedora 11 release party 18 giugno 2009
 
Introduzione a Docker
Introduzione a DockerIntroduzione a Docker
Introduzione a Docker
 
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
 
Glusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatileGlusterfs: un filesystem altamente versatile
Glusterfs: un filesystem altamente versatile
 
Understanding Linux
Understanding LinuxUnderstanding Linux
Understanding Linux
 
Lug Roma3 Corso Linux Base
Lug Roma3   Corso Linux BaseLug Roma3   Corso Linux Base
Lug Roma3 Corso Linux Base
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
 
3rd 3DDRESD: BSS
3rd 3DDRESD: BSS3rd 3DDRESD: BSS
3rd 3DDRESD: BSS
 
Software libero at ENEA
Software libero at ENEASoftware libero at ENEA
Software libero at ENEA
 
Linux Security Hardening - panoramica sui principi generali per la riduzione...
Linux  Security Hardening - panoramica sui principi generali per la riduzione...Linux  Security Hardening - panoramica sui principi generali per la riduzione...
Linux Security Hardening - panoramica sui principi generali per la riduzione...
 
Hardening
HardeningHardening
Hardening
 
Amministrazione base dei sistemi Linux
Amministrazione base dei sistemi LinuxAmministrazione base dei sistemi Linux
Amministrazione base dei sistemi Linux
 
Gestione dischi - File system - LVM
 Gestione dischi - File system - LVM Gestione dischi - File system - LVM
Gestione dischi - File system - LVM
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embedded
 
Realizzare una rete aziendale con linux e samba
Realizzare una rete aziendale con linux e sambaRealizzare una rete aziendale con linux e samba
Realizzare una rete aziendale con linux e samba
 
Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
 Cosa è Gnu/Linux - Breve storia - Concetti fondamentali Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
Cosa è Gnu/Linux - Breve storia - Concetti fondamentali
 

More from Raul Cafini

Come essere produttivi nel lavoro grazie agli strumenti di google
Come essere produttivi nel lavoro grazie agli strumenti di googleCome essere produttivi nel lavoro grazie agli strumenti di google
Come essere produttivi nel lavoro grazie agli strumenti di google
Raul Cafini
 
Realizzazione di un modello di router ottico in ambiente open source.
Realizzazione di un modello di router ottico in ambiente open source.Realizzazione di un modello di router ottico in ambiente open source.
Realizzazione di un modello di router ottico in ambiente open source.
Raul Cafini
 
Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux
Analisi ed implementazione di file system distribuiti in ambiente GNU/LinuxAnalisi ed implementazione di file system distribuiti in ambiente GNU/Linux
Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux
Raul Cafini
 
Design and development of MIL-STD-1553 based engineering model
Design and development of MIL-STD-1553 based engineering modelDesign and development of MIL-STD-1553 based engineering model
Design and development of MIL-STD-1553 based engineering model
Raul Cafini
 
Realizzazione di un modello di router ottico in ambiente open source
Realizzazione di un modello di router ottico in ambiente open sourceRealizzazione di un modello di router ottico in ambiente open source
Realizzazione di un modello di router ottico in ambiente open source
Raul Cafini
 
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
Raul Cafini
 
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
Raul Cafini
 

More from Raul Cafini (7)

Come essere produttivi nel lavoro grazie agli strumenti di google
Come essere produttivi nel lavoro grazie agli strumenti di googleCome essere produttivi nel lavoro grazie agli strumenti di google
Come essere produttivi nel lavoro grazie agli strumenti di google
 
Realizzazione di un modello di router ottico in ambiente open source.
Realizzazione di un modello di router ottico in ambiente open source.Realizzazione di un modello di router ottico in ambiente open source.
Realizzazione di un modello di router ottico in ambiente open source.
 
Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux
Analisi ed implementazione di file system distribuiti in ambiente GNU/LinuxAnalisi ed implementazione di file system distribuiti in ambiente GNU/Linux
Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux
 
Design and development of MIL-STD-1553 based engineering model
Design and development of MIL-STD-1553 based engineering modelDesign and development of MIL-STD-1553 based engineering model
Design and development of MIL-STD-1553 based engineering model
 
Realizzazione di un modello di router ottico in ambiente open source
Realizzazione di un modello di router ottico in ambiente open sourceRealizzazione di un modello di router ottico in ambiente open source
Realizzazione di un modello di router ottico in ambiente open source
 
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2012
 
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
Presentazione Programma del Mini-Corso di Formazione Aeronautica 2011
 

Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux.

  • 1. Università degli Studi di Bologna Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Amministrazione di reti di calcolatori Analisi ed implementazione di file system distribuiti in ambiente linux Tesi di: Raul Cafini Relatore: Dott. Ing. Marco Prandini Correlatori: Ing. Luca Ghedini
  • 2. Presentazione Questa tesi si è posta l’obiettivo dell’analisi e della implementazione di file system distribuiti in un ambiente cluster basato su sistema operativo linux. •  Un file system distribuito è uno strumento in grado di gestire una piattaforma dati comune tra più macchine distribuendo il contenuto informativo globale tra di esse, garantendo la consistenza, l’integrità e l’accesso concorrente ai dati anche in caso di guasti (Fault Tolerant). •  L’infrastruttura hardware portante su cui è implemetato il file system prende nome di cluster. Un cluster (dall’inglese grappolo) è un insieme di computer connessi tramite una rete telematica a scopo di incremento prestazionale in termini di calcolo computazionale e/o di risorse distribuite. 22 Giugno 2006 Raul Cafini 2
  • 3. Documentazione, analisi ed implementazione Il lavoro si è svolto principalmente in tre fasi: 1.  Documentazione: Soluzioni cluster basate sul s.o. linux, file system distribuiti (implementazioni proprietarie e open source come AFS, GPFS, CODA, GFS, LUSTRE, ...) e tecniche di fault tolerance. 2.  Analisi: Software di gestione del cluster, software di base dei file system distribuiti, gestore dei volumi logici, topologie e architetture di implementazione. 3.  Implementazione: Realizzazione di un piccolo sistema cluster linux con file system distribuito in lab4. 22 Giugno 2006 Raul Cafini 3
  • 4. Red Hat/Fedora - GFS La scelta, Perchè Red Hat/Fedora GFS: •  Il primo file system con sviluppo nativo a 64-bit. •  Altamente scalabile (fino a 256 nodi) per l'introduzione di server e device di storage. •  Recente apertura verso la comunità open source. •  Uso della semantica standard per i file system UNIX/POSIX. •  File system di tipo journaled. •  Basato su gestore di volumi logici altamente flessibile –  (LVM – Logical Volume Manager) 22 Giugno 2006 Raul Cafini 4
  • 5. Red Hat/Fedora - GFS GFS over GNBD-SAN GFS over SAN GNBD-DAS (Global Network (Storage Area–Network) Area Network) (Global Network Block Device -Direct Attached Storage) Block Device Storage 22 Giugno 2006 Raul Cafini 5
  • 6. Il cluster 1/2 Profilo Hardware: •  Desktop HP - AMD64 Caratteristiche tecniche: •  Processore: DualCore AMD Athlon 64 X2 •  Memoria Primaria: 512 MB •  Memoria Secondaria: 80 GB •  Scheda Rete: Gigabit Ethernet (10-100 MBit/s) Profilo Software: •  Sistema operativo: Fedora Core release 4 •  Kernel release: 2.6.11-1.1369_FC4smp 22 Giugno 2006 Raul Cafini 6
  • 7. Il cluster 2/2 Red Hat - Cluster Suite: Componenti software per l’interazione tra i nodi del cluster: • CCS (Cluster Configuration System) • CMAN (Cluster MANager) • Fence (Fencing Mechanism) • RGManager (Resource Group Manager) • DLM (Distribuited Lock Manager) 22 Giugno 2006 Raul Cafini 7
  • 8. Il Logical Volume Manager •  Gestore di volumi logici •  Gestione clusterized (CLVM) •  Maggiore flessibilità di management •  Estensione dei concetti di disco e partizione disco •  Layer di astrazione logica –  Physical volumes –  Volume groups –  Logical volumes •  Mapping linear/striped •  Creazione di Snapshots 22 Giugno 2006 Raul Cafini 8
  • 9. Il cluster del LAB4 •  Topologia: GFS over GNBD-DAS •  3 Nodi ü 2 GFS nodes (GNBD Clients) ü 1 GNBD Server •  Connessione tramite sola rete LAN (lab4cluster). •  Import/Export di block device tramite protocollo GNBD (Global Network Block Device). •  Gestione clusterized dei volumi logici (CLVM). •  Creazione e Montaggio del file system tramite comandi standard unix/linux (mkfs, mount). 22 Giugno 2006 Raul Cafini 9
  • 10. Fault Tolerance Tecniche che permettono di far fronte ad un guasto nel sistema (device, nodo, rete, …) senza che la serie di servizi o di risorse che esso rende disponibile ne risenta: •  Multipath (SAN) –  Multiported (DAS) •  Mirroring –  Hardware (RAID) –  Software (LVM) •  Channel Bonding 22 Giugno 2006 Raul Cafini 10
  • 11. Conclusioni •  Analisi della gamma di file system distribuiti: –  Analisi di un ampia documentazione sul mondo dei file system distribuiti, concetti e le potenzialità delle varie implementazioni. •  Creazione del cluster: –  Studio delle componenti software della infrastruttura cluster su cui creare il file system distribuito. •  Realizzazione del file system distribuito: –  Analisi delle componenti software del file system distribuito (locking) –  logical volume manager •  Analisi delle tecnologie di fault tolerance: –  Multipath, Mirroring, Channel Bonding… 22 Giugno 2006 Raul Cafini 11
  • 12. Sviluppi Futuri •  Aggiunta di più server GNBD: –  Aumentare lo spazio di storage dedicato al file system dividendo lo spazio su più server GNBD. •  Accesso al file system GFS anche dai nodi GNBD: –  Accesso al file system GFS anche dai nodi Server GNBD (limitazioni). •  Realizzazione di un sistema pienamente fault tolerant: –  Implementazione di una delle soluzioni analizzate e relativi test di tolleranza al failure dei componenti. •  Analisi delle prestazioni: –  Tra le varie topologie GFS. –  Tra vari file system distribuiti (IBM-GPFS, AFS, …). 22 Giugno 2006 Raul Cafini 12
  • 13. Fine. 22 Giugno 2006 Raul Cafini 13