04_Nas4Free: non chiamatelo semplicemente storage

Workshop@UniNA 2014
– NAS4Free –
Non chiamatelo (semplicemente) storage...
… altro che ”nuvola”!
a cura di Flaviano Andreoli
con il patrocinio del Preside della Scuola Politecnica e delle Scienze di
Base dell'Università degli Studi di Napoli Federico II
Prof. Piero Salatino
e con il sostegno del Prof. Antonio Pescapè
#nawu14
Avvertenze!
Avvertenze!
Se sei riuscito a leggere i due
messaggi precedenti...
… SONO SALVO!
Avvertenze!
L'argomento di per sè non è particolarmente ”ostico”, ma potrebbe utilizzare
tecnologie software non a conoscenza di tutti o particolarmente complesse.
Per ovvie ragioni quindi:
●
cercherò di usare un linguaggio non troppo tecnico;
●
”sorvolerò” su alcuni dettagli;
●
non tratterò esaustivamente tutti gli argomenti.
Detto questo: buon NAS4Free a tutti!
Innanzitutto:
cos'è un NAS?
[...Un NAS (acronimo di Network Attached Storage, letteralmente
“immagazzinamento dati attaccato alla rete”), è un dispositivo
collegato ad una rete di computer la cui funzione (principale, NDR) è
quella di condividere tra gli utenti della rete una memoria di massa, in
pratica costituita da uno o più dischi rigidi...]
[Fonte: Wikipedia]
Più precisamente si tratta di un dispositivo hardware e software facente
parte di una rete di computer accessibile attraverso regole e protocolli per
la lettura, scrittura ed esecuzione di dati da parte degli utenti della rete.
Gli scopi di un NAS?
(per uso domestico ed aziendale)
●
●
●
●
centralizzazione dell'immagazzinamento dei dati: un solo
dispositivo accessibile a tutti i nodi della rete;
organizzazione più razionale dei dati: si sa sempre dove è
archiviato un file;
implementazione RAID (Redundant Array of Indipendent Disks,
letteralmente “serie ridondante di dischi indipendenti): migliore
sicurezza dei dati e maggiore (non sempre) velocità di lettura e
scrittura;
il tuo computer si può guastare e lo puoi cambiare in qualsiasi
momento...
La struttura di un NAS
Un NAS è un dispositivo (di rete) e in quanto tale è insieme:
Hardware:
(di piccole pretese)
&
Software:
(basato e derivato da Linux/BSD)
✔
Elettronica (scheda madre);
✔
Sisteme operativo;
✔
Processore;
✔
Interfaccia utente;
✔
Memoria (RAM);
✔
Protocolli di comunicazione.
✔
Controller di I/O (hard disks);
✔
Hard disk (per lo storage);
✔
Scheda di rete.
La struttura di un NAS
Hardware
la struttura di un NAS
Software
Classica configurazione
Ma i prezzi di un NAS?
Marca
Modello
Tipo di uso
Prezzo (€)
Caratteristiche
D-Link
DNS-320
domestico
100,00
2 x SATA II, RAID 0-1, fs: ext2/3,
1 x USB
Qnap
TS-221
domestico,
SOHO
290,00
2 x SATA II, RAID 0-1, fs:
ext2/3/NTFS/FAT32, lan Gbit,
3 x USB
Qnap
TS-569L
ufficio
680,00
2 x Gbit, 7 x USB, 5 x SATA III,
RAID 0-1-5-6, fs:
ext3/ext4/NTFS/FAT32
Buffalo TeraStation 5600
6 x 2 TB
PMI
1.800,00
5 x USB 3, Hot-swap, RAID 0-15-6-10-50-51, Intel Atom D2700
(2.13 Ghz / 2 GB DDR3), 2 x Gbit
HP
Grandi aziende
DataCenter
13.000,00
4 x Gbit, SCSI2, Rack 2U
StoreEasy 1630
14 x 2 TB
NAS ”DIY”
* vista interna di un pc Shuttle XPC SK22G2
NAS ”DIY”
* vista interna di un NAS Qnap TS-509 Pro
NAS ”DIY”
Ma se, fondamentalmente,
l'hardware è uguale ad un
pc desktop...
La differenza è ”SOLO” nel
sistema operativo!!!
La storia del progetto
"A metà del 2005, ho voluto trasformare uno
dei miei vecchi PC in un server NAS per la
mia casa ... non ho trovato un progetto open
source che ha riempito le mie esigenze così
ho scelto di realizzarne uno mio... non avrei
mai immaginato che la mia piccola
personalizzazione da M0n0wall[1] a NAS
sarebbe diventata così famosa."
Nasce così, nel 2005, il progetto
(e la prima release) di FreeNas per
[2]
mano di Olivier Cochard-Labbé
La storia del progetto
Lo sviluppo continuò fino al 2009, quando
l'allora leader del progetto, Volker Theile,
annunciò di non voler o non poter più
continuare lo sviluppo del sistema opertivo
su FreeBSD. Fu quindi prevista una
migrazione verso Debian Linux. Ciò sarebbe
stato un duro colpo per la comunità FreeBSD
e sarebbe derivata la perdita del supporto
nativo a ZFS da parte di FreeNAS.
Nel 2009, viene rilasciata (quella che
sembrava essere) l'ultima versione di
FreeNas. Era la 0.7
La storia del progetto
"Come utilizzatore di lunga data e sostenitore
di FreeNAS, sentii che era importante per
entrambe le comunità, e quella di FreeBSD e
per quella di FreeNAS, che il progetto
continuasse il suo sviluppo. FreeNAS si
dimostrò un solido fileserver per la
iXsystems sin dalla sua versione iniziale e
noi volemmo continuare ad usarlo e
condividere con il resto della comunità di
FreeNAS ogni innovazione che realizzavamo"
Matt Olander (iXsystems CTO)
●
●
2010, iXsystem registra il marchio FreeNAS e
rielabora il sistema operativo;
V.2011, con un salto nella nomenclatura, viene
rilasciato FreeNAS 8.0.
La storia del progetto
Olivier Cochard-Labbé ”vende” il nome alla iXsystem, ma dona ad
una comunity di sviluppo indipendente i codici sorgenti del
progetto iniziale.
Però, per questioni legali, ovviamente, lo sviluppo non può
continuare sotto l'originale nome. Si è costretti ad un cambio...
NAS4FREE
[3]
Alla ”nuova” comunità sta particolarmente a cuore specificare che:
●
●
NON si tratta di un ”fork” di FreeNAS;
è la naturale e diretta continuazione del codice che è stato sotto
sviluppo dal 2005 al 2011 sotto il nome di FreeNAS.
NAS4Free: caratteristiche
●
Multi-architettura: i386 o amd64;
●
Interfaccia di gestione web (WebGUI);
●
Gestione dischi e volumi:
✔
RAID software 0,1,5 e misti (10, 11, 51 etc.);
✔
Crittografia del disco (necessita di controller);
✔
Filesystem supportati: ZFS e UFS, Ext 2 e 3, FAT, NTFS;
✔
Partizioni: MBR e GPT;
✔
iSCSI;
NAS4Free: caratteristiche
●
Protocolli di rete supportati:
✔
SMB/CIFS (Server Message Block/Common Internet File System - Samba)
✔
AFP (Apple Filing Protocol)
✔
NFS (Network File System)
✔
FTP (File Transfer Protocol)
✔
TFTP (Trivial File Transfer Protocol)
✔
RSYNC (Unix)
✔
UNISON (sincronizzazione)
✔
SCP (Secure Copy via SecureSHell)
✔
iSCSI
NAS4Free: caratteristiche
●
Networking:
✔
802.1q vlan tagging (condivisione collegamento fisico tra più VLAN)
✔
Wireless
✔
Link aggregation (cavi Ethernet in parellelo)
✔
Wake On Lan
✔
Bridge
✔
CARP (Common Address Redundancy Protocol)
✔
HAST (Highly Available STorage, protocollo e tool set di sincronizzazione)
NAS4Free: caratteristiche
●
●
Monitoring:
✔
S.M.A.R.T.
✔
Avvisi via e-mail
✔
SYSLOG
✔
NUT (Network UPS Tools)
✔
SNMP (Simple Network Management Protocol)
(Self-Monitoring, Analysis and Reporting Technology)
Servizi extra:
✔
UPnP
✔
Server iTunes/DAAP (Apple Digital Audio Access Protocol)
✔
Webserver (lighttpd)
✔
Misura della larghezza di banda di rete (IPERF)
✔
Client BitTorrent (Transmission)
(Universal Plug aNd Play)
NAS4Free: terze parti
●
Server PHP;
●
Server MySQL;
●
OwnCloud;
●
DVR;
●
Print server;
●
MailMan (?)
●
...
NAS4Free: installazione
Oltre ad un'esecuzione live da CD o USB, sono
previste due tipologie di installazione:
✔
Full Installation
✔
Embedded Installation (metodo preferito)
Full Installation
✔
Installazione completa su hard disk o SSD;
✔
si ”perde” un canale del controller disco;
✔
aggiornamento a nuova release effettuabile tramite
il boot del sistema con la ISO più recente e
selezionando l'opzione ”aggiornamento”.
Embedded Installation
✔
Metodo di installazione preferito e per il quale è
stato realizzato NAS4Free;
✔
Installazione prevista su una CF o pen drive USB;
✔
Più veloce e risparmio energetico;
✔
Sistema caricato completamente in memoria;
✔
Ottimizza il ciclo di vita dei componenti del pc;
✔
Aggiornamento del sistema operativo avviene
scaricando uno speciale firmware .img (di ”peso”
nettamente inferiore ad una iso standard) e
selezionandolo attraverso il menu della WebGUI
LiveCD/LiveUSB
✔
✔
✔
Metodo utilizzato per effettuare prove;
usando anche un disco USB leggere/salvare il file
config.xml si può eseguire il server via USB o CD;
Ovviamente non c'è possibilità di aggiornamento.
Download
✔
Sito ufficiale
http://sourceforge.net/projects/nas4free/files/
✔
Aprire la cartella della versione desiderata;
✔
Scegliere il tipo di architettura;
✔
Scegliere il numero di revisione;
✔
Scegliere il tipo di installazione (LiveCD, LiveUSB, Emb)
Ram richiesta (minimi)
✔
Installazione ”Full”: 256Mb;
✔
Aggiornamento di una piattaforma Embedded: 384Mb;
✔
In caso di funzioni avanzate (RAID 5) o di molte funzioni
abilitate: +512Mb;
✔
Per l'uso di filesystem ZFS: 1Gb (amd64);
✔
Macchina virtuale con i requisiti minimi di cui sopra.
FAQ
Ma perchè non comprare ed utilizzare
un ”classico” NAS già bello e fatto?
Perchè sì:
Perchè no:
&
✔
Economia;
✔
Ecologia;
✔
Flessibilità;
✔
Modularità;
✔
Possibilità di intervento e
riparazione;
✔
Personalizzazione;
✔
SODDISFAZIONE PERSONALE;
✔
Consumi energetici più alti
(se usato solo come NAS)
#nawu14 next step...
#nawu14 è ufficialmente terminato
Ma
è un'associazione ATTIVA
Come minimo, teniamo riunioni didattiche ogni due sabato
Work in progress: LINUX DAY 2014
… stiamo finendo ...
Un sentito ringraziamento a chi ha permesso lo svolgersi di tutto questo:
al Preside della Scuola Politecnica e delle Scienze di Base dell'Università degli Studi di Napoli
Federico II Prof. Piero Salatino
e al Prof. Antonio Pescapè, nostro eterno supporter
Ai ragazzi dell'associazione NaLug – Napoli GNU/Linux Users Group
http://nalug.net
[email protected]
… abbiamo finito!
Bibliografia:
internet
Contatti:
flaviano.andreoli at gmail dot com
Grazie. best regards ;-)
Sitografia

[1] - http://it.wikipedia.org/wiki/M0n0wall

[2] - http://web.freenas.org/about/history.html

[3] - http://www.nas4free.org/