Analisi ed implementazione di file system distribuiti in ambiente GNU/Linux.
open source in bncf
1. Open @ BNCF
Open-Source in Biblioteca Nazionale
Centrale di Firenze
Cristiano Corsani – Giovanni Toraldo
http://www.bncf.firenze.sbn.it http://www.libersoft.it
2. open@BNCF
La Biblioteca Nazionale Centrale Firenze (BNCF) ha origini nei 30.000
volumi della biblioteca privata di Antonio Magliabechi lasciata in eredità
nel 1714 alla città di Firenze.
Nel 1861 la Biblioteca Magliabechiana fu unificata con la Biblioteca
Palatina (creata da Ferdinando III di Lorena) e assunse il nome di
Biblioteca Nazionale e, nel 1885, quello di Biblioteca Nazionale Centrale.
Dal 1870 la BNCF ha il deposito legale di tutta la produzione editoriale
italiana.
Linux Day 2011 - Pisa
3. Compiti
La BNCF ha come compito la raccolta, la
conservazione, la documentazione e la
valorizzazione della memoria storica italiana
attraverso:
il deposito legale in coordinamento con BNCR e
le istituzione depositarie regionali
la produzione della Bibliografia Nazionale Italiana
(BNI)
Linux Day 2011 - Pisa
4. Numeri
Le raccolte della Biblioteca si sviluppano su oltre
120 chilometri di scaffali con un aumento annuo
di quasi 2 chilometri e comprendono:
4.000 incunaboli
25.000 manoscritti
68.000 incisioni
oltre 6 milioni di libri
oltre 120.000 testate di periodici.
Linux Day 2011 - Pisa
5. Digitalizzazioni
Manoscritti:
Unità bibliografiche: 11.104
Immagini: 166.728
Libro antico:
Unità bibliografiche: 53.466
Immagini: 433.151
Libro moderno:
Unità bibliografiche: 77.330
Immagini: 2.276.848
Linux Day 2011 - Pisa
6. Servizi (informatici)
Servizi di catalogazione (SBN, …)
Servizi al pubblico (OPAC, prestito,
consultazione)
Digitalizzazione
Linux Day 2011 - Pisa
9. Nebula
Software
amministrativo
OPAC
Teca digitale
Web
Mail
SBN, Sebina, …
DNS
Servizi interni
Linux Day 2011 - Pisa
10. Musa Desktop
Migrazione Utenti Software Aperto
Postazioni Desktop minimali (Acer Veriton N281G,
CPU Atom, 1GB RAM, HD 160 GB)
SO: Ubuntu 10.04 LTS
Installazione/Ripristino via sistema minimale bootabile
via rete (PXE), sistema di bash scripts per
partizionamento, ripristino partimage,
configurazione post-ripristino
/home condivise via MooseFS
Login e Password su OpenLDAP
Chat interna con Pidgin con Bonjour
Linux Day 2011 - Pisa
11. Musa Server
Quad-core con 4 GB di RAM, 4x500GB in
RAID1+0 (mdadm)
MooseFS con replica 2
Servizi ausiliari virtualizzati con Proxmox (LDAP,
PXE/NFS, Template Desktop “madre”)
Linux Day 2011 - Pisa
12. MooseFS
Filesystem di Rete, Distribuito e Fault-Tolerant.
File/Cartelle in un'unica struttura gerarchica;
Attributi File POSIX (permessi, data c/m/a)
Symlink a Hard Links
Accesso tramite password o regole IP
Copie multiple configurabili per file/directory
Scalabilità
Snapshot
Linux Day 2011 - Pisa
14. MooseFS - Installazione
Scarico il pacchetto sorgenti e compilo con
debuild
Mfs-master
Mfs-metalogger
Mfs-chunkserver
Mfs-mount
Ogni demone ha un file di configurazione
minimale: /etc/mfs-*.cfg
Linux Day 2011 - Pisa
16. Virtualizzazione - Proxmox
Basato su Debian (1.x Lenny, 2.x Squeeze)
Installazione semplice (sources.list)
Supporta KVM e OpenVZ
Interfaccia Web con applet VNC
Supporto cluster management (minimale nella
1.x, buono nella 2.x)
Linux Day 2011 - Pisa
20. Magazzini Digitali
3 Datacenter (2 attivi + shadow copy)
Due Firewall
Due Switch GigaEth (LAN+DMZ)
2 nodi frontend (8-core, 8G ram, HD 2 x 512G)
8 nodi storage (4-core, 2G ram, HD 4 x 2T)
2 Linee elettriche separate
Spazio disco aggregato con GlusterFS (64T
totali, 32T utilizzabili)
Linux Day 2011 - Pisa
21. GlusterFS
Filesystem di Rete, Distribuito e Fault-Tolerant.
Brick in mirroring, striping, mirroring+striping
Completamente decentralizzato (no single-point
of failure)
Load-balancing in-file
Client cache
Linux Day 2011 - Pisa
23. GlusterFS – Server
Installo il pacchetto su tutti i nodi
Avvio il servizio glusterd:
# /etc/init.d/glusterd start
Faccio fare amicizia ai server:
# gluster peer probe hostname
Configuro lo storage via CLI:
# gluster volume create nomevolume transport tcp
server1:/mnt/vol1 server2:/mnt/vol2 ..
Replica: Aggiungo parametro replica N
Linux Day 2011 - Pisa
24. GlusterFS - Client
Client FUSE:
# mount -t glusterfs server1:/nome-volume
/mnt/glusterfs
Client NFS (più compatibile ma supporto locks parziale):
# mount -t nfs server1:/test-volume /mnt/glusterfs
Client CIFS (per sistemi sensibili a virus):
Connetti unità di rete.. → server1test-volume
Linux Day 2011 - Pisa
25. GlusterFS - Manutenzione
Aggiungo un nuovo nodo:
# gluster volume add-brick nome-volume
server4:/mnt/vol4
Migro un nodo verso un altro:
# gluster volume replace-brick nome-volume server3:/
mnt/vol3 server5:/mnt/vol5 start
Ribilancio i dati dopo un cambio nel layout:
# gluster volume rebalance nome-volume start
Linux Day 2011 - Pisa
26. GlusterFS – Altre features
Geo-replication (rsync best-effort)
Quota
ACLs
Automount in /etc/fstab
hostname:/volume /mnt/gluster glusterfs
defaults,_netdev 0 0
Linux Day 2011 - Pisa
27. Virtualizzazione - OpenNebula
Strumento Open-Source per la gestione di
infrastrutture virtualizzate: Private Cloud, Public
Cloud, Hybrid Cloud
Utilizza standard industriali aperti (EC2, OCCI)
Scalabile fino a migliaia di nodi fisici, decine di
migliaia di istanze virtuali
Gestione tramite CLI, web-gui o API Java o
Ruby.
Linux Day 2011 - Pisa
30. EOF
Cristiano Corsani
ccorsani@gmail.com
http://www.bncf.firenze.sbn.it/
Giovanni Toraldo
gt@libersoft.it (o me@gionn.net)
http://libersoft.it
http://gionn.net
Linux Day 2011 - Pisa