Workshop CCR Otranto - maggio 2006 General Parallel File System: caratteristiche, prestazioni ed...
-
Upload
cipriana-masi -
Category
Documents
-
view
216 -
download
1
Transcript of Workshop CCR Otranto - maggio 2006 General Parallel File System: caratteristiche, prestazioni ed...
Workshop CCROtranto - maggio 2006
General Parallel File General Parallel File System: caratteristiche, System: caratteristiche, prestazioni ed esempi prestazioni ed esempi
di utilizzo in di utilizzo in
produzioneproduzione Alessandro Brunengo - Sezione INFN di GenovaAlessandro Brunengo - Sezione INFN di Genova
2
SommarioSommario
Caratteristiche del file system GPFSCaratteristiche del file system GPFS Test di affidabilita’, prestazioni e Test di affidabilita’, prestazioni e
scalabilita’scalabilita’ Esempio di infrastruttura in Esempio di infrastruttura in
produzioneproduzione meccanismi di export del file systemmeccanismi di export del file system configurazione ad alta affidabilita’configurazione ad alta affidabilita’ inter-cluster exportinter-cluster export
3
CaratteristicheCaratteristiche GPFS e’ un file system commerciale GPFS e’ un file system commerciale
sviluppato da IBM per AIX e portato su linux:sviluppato da IBM per AIX e portato su linux: standard POSIX + quota + ACLstandard POSIX + quota + ACL ridimensionamento dinamico dei volumiridimensionamento dinamico dei volumi prestazioni elevate: parallelizzazione degli accessi prestazioni elevate: parallelizzazione degli accessi
e bilanciamento del caricoe bilanciamento del carico alta affidabilita’ peralta affidabilita’ per
conservazione dei dati tramite repliche di dati e metadaticonservazione dei dati tramite repliche di dati e metadati accesso ai dati grazie a server secondari di volumi che accesso ai dati grazie a server secondari di volumi che
possono subentrare in failoverpossono subentrare in failover esportabilita’ dei volumi via NFS (V3/V4) e sambaesportabilita’ dei volumi via NFS (V3/V4) e samba
4
ClusterCluster Nodo GPFS: singolo sistema operativo su cui gira il Nodo GPFS: singolo sistema operativo su cui gira il
software GPFSsoftware GPFS moduli del kernelmoduli del kernel utility di management del file systemutility di management del file system utility di management del clusterutility di management del cluster
Cluster GPFS: insieme di nodi che condividono le Cluster GPFS: insieme di nodi che condividono le configurazioni e l’accesso ai file system, che possono configurazioni e l’accesso ai file system, che possono avere funzioni diavere funzioni di manager/clientmanager/client quorum/non quorumquorum/non quorum
Quorum type:Quorum type: quorum nodes (quorum soddisfatto con la meta’ piu’ uno dei quorum nodes (quorum soddisfatto con la meta’ piu’ uno dei
quorum node)quorum node) tie-breaker disks (quorum soddisfatto quando almeno un tie-breaker disks (quorum soddisfatto quando almeno un
quorum node vede la meta’ piu’ uno dei tiebreaker disk)quorum node vede la meta’ piu’ uno dei tiebreaker disk)
5
Cluster managementCluster management E’ definito un primary configuration server, ed E’ definito un primary configuration server, ed
un secondary configuration server opzionaleun secondary configuration server opzionale in caso di inaccessibilita’ di configuration server in caso di inaccessibilita’ di configuration server
saranno precluse le modifiche di configurazione al saranno precluse le modifiche di configurazione al cluster, e lo startup di GPFS sui nodicluster, e lo startup di GPFS sui nodi
Tutti i nodi del cluster devono poter eseguire Tutti i nodi del cluster devono poter eseguire comandi privilegiati su ciascun altro nodo, comandi privilegiati su ciascun altro nodo, senza introdurre passwordsenza introdurre password e’ possibile utilizzare rsh o sshe’ possibile utilizzare rsh o ssh tecnologia che limita la sicurezza e complica il tecnologia che limita la sicurezza e complica il
management del clustermanagement del cluster si possono adottare work-around per limitare si possono adottare work-around per limitare
l’accesso reciproco al solo file transfer dei file di l’accesso reciproco al solo file transfer dei file di configurazioneconfigurazione
6
Network Shared DiskNetwork Shared Disk Ogni partizione che dovra’ contenere dati viene Ogni partizione che dovra’ contenere dati viene
configurata come NSD (ha un nome ed un device file)configurata come NSD (ha un nome ed un device file) Le informazioni relative all’NSD vengono scritte Le informazioni relative all’NSD vengono scritte
anche sullo stesso NSDanche sullo stesso NSD il riconoscimento di un NSD non dipende dal device file name il riconoscimento di un NSD non dipende dal device file name
della partizione fisica, ed e’ riconosciuto da tutti i nodi che della partizione fisica, ed e’ riconosciuto da tutti i nodi che hanno accesso diretto al devicehanno accesso diretto al device
L’accesso al singolo NSD avviene:L’accesso al singolo NSD avviene: direttamente se il nodo vede il device fisico associato all’NDSdirettamente se il nodo vede il device fisico associato all’NDS indirettamente tramite export GPFS di un NSD serverindirettamente tramite export GPFS di un NSD server
Ridondanza per l’accesso all’NSDRidondanza per l’accesso all’NSD il singolo NSD puo’ essere esportato da un server il singolo NSD puo’ essere esportato da un server
secondario, che in caso di necessita’ subentra al primario secondario, che in caso di necessita’ subentra al primario senza perdita di continuita’ di serviziosenza perdita di continuita’ di servizio
7
File SystemFile System Il file system GPFS e’ costituito da uno o piu’ Il file system GPFS e’ costituito da uno o piu’
NSDNSD POSIX: l’applicativo accede tramite standard file POSIX: l’applicativo accede tramite standard file
I/O, con supporto di quota ed ACL (GPFS o I/O, con supporto di quota ed ACL (GPFS o compatibili con NFS V4) a livello di filecompatibili con NFS V4) a livello di file
rapido recovery: GPFS e’ un logging file system rapido recovery: GPFS e’ un logging file system che registra le operazioni sui metadatiche registra le operazioni sui metadati
parallelizzazione: le operazioni di I/O vengono parallelizzazione: le operazioni di I/O vengono realizzate in striping sugli NSD disponibili, realizzate in striping sugli NSD disponibili, mettendo a disposizione la banda aggregata e mettendo a disposizione la banda aggregata e bilanciando il carico tra gli NSD serverbilanciando il carico tra gli NSD server
dinamicita’: NSD possono essere aggiunti al - e dinamicita’: NSD possono essere aggiunti al - e rimossi dal - file system on linerimossi dal - file system on line
affidabilta’: possibilita’ di replicare dati e metadati affidabilta’: possibilita’ di replicare dati e metadati su diverse NSD senza punti critici in comunesu diverse NSD senza punti critici in comune
8
Configuration Manager, Configuration Manager, File System Manager e File System Manager e
locking distribuitolocking distribuito Il configuration manager viene eletto tra i Il configuration manager viene eletto tra i
quorum node attivi e si occupa di quorum node attivi e si occupa di controllare il quorum e la consistenza delle controllare il quorum e la consistenza delle
configurazioniconfigurazioni recovery dei dischi in seguito a node failurerecovery dei dischi in seguito a node failure definizione del file system manager (per ogni fs)definizione del file system manager (per ogni fs)
Il file system manager ha le funzioni di:Il file system manager ha le funzioni di: aggiunta/rimozione di dischiaggiunta/rimozione di dischi recovery del file systemrecovery del file system disk space allocation e quotadisk space allocation e quota definire i token managerdefinire i token manager
Entrambe le funzionalita’ possono migrare Entrambe le funzionalita’ possono migrare senza perdita di operativita’ in caso di failure di senza perdita di operativita’ in caso di failure di un managerun manager
9
Locking distribuitoLocking distribuito Consistenza di dati e metadati tramite locking Consistenza di dati e metadati tramite locking
distribuito, mantenuto tramite meccanismi di distribuito, mantenuto tramite meccanismi di tokentoken l’accesso al file viene permesso tramite la l’accesso al file viene permesso tramite la
concessione di un token, il cui stato risiede sul nodo concessione di un token, il cui stato risiede sul nodo e sul token managere sul token manager
un nodo chiede al token manager (attraverso il file un nodo chiede al token manager (attraverso il file system manager) un token per accedere ad un filesystem manager) un token per accedere ad un file
il token manager concede il token o comunica al il token manager concede il token o comunica al nodo la lista dei nodi che hanno un token in conflittonodo la lista dei nodi che hanno un token in conflitto
il nodo contatta i nodi che impediscono l’accesso per il nodo contatta i nodi che impediscono l’accesso per chiedere il rilascio del tokenchiedere il rilascio del token
Come per gli altri, anche le funzioni di token Come per gli altri, anche le funzioni di token manager possono migrare su altre macchine manager possono migrare su altre macchine senza perdita di funzionalita’senza perdita di funzionalita’
10
File System ExportFile System Export GPFS nativoGPFS nativo: l’accesso al file system per nodi non : l’accesso al file system per nodi non
connessi alla SAN avviene attraverso i singoli NSD connessi alla SAN avviene attraverso i singoli NSD serverserver
Inter-cluster Inter-cluster exportexport i volumi di un cluster possono essere esportati a client di i volumi di un cluster possono essere esportati a client di
altri clusteraltri cluster si richiede uno scambio di chiavi GPFS (non e’ richiesto si richiede uno scambio di chiavi GPFS (non e’ richiesto
l’accesso privilegiato reciproco)l’accesso privilegiato reciproco) e’ possibile limitare l’accesso per file system (non per e’ possibile limitare l’accesso per file system (non per
nodi del cluster remoto) e rimappare l’UID 0nodi del cluster remoto) e rimappare l’UID 0 NFS NFS exportexport
il file system puo’ essere esportato via NFS V3 o NFS V4 il file system puo’ essere esportato via NFS V3 o NFS V4 (richiede l’utilizzo di ACL opportuni)(richiede l’utilizzo di ACL opportuni)
SambaSamba export export
11
Layout test di Layout test di affidabilita’affidabilita’
12
Failure del controllerFailure del controller
13
Failure dello switch FCFailure dello switch FC
14
Failure del disk serverFailure del disk server
15
Upgrade on lineUpgrade on line La ridondanza e’ stata sfruttata per operare un La ridondanza e’ stata sfruttata per operare un
upgrade di versione di GPFS e di kernel senza perdita upgrade di versione di GPFS e di kernel senza perdita di funzionalita’di funzionalita’
L’infrastruttura costituita da 3 NSD server (e quorum L’infrastruttura costituita da 3 NSD server (e quorum node), con tutte le NSD esportate via primario e node), con tutte le NSD esportate via primario e secondario, circa 40 clientsecondario, circa 40 client
GPFS “accetta” la dissincronizzazione delle versioni GPFS “accetta” la dissincronizzazione delle versioni nello stesso clusternello stesso cluster il GPFS team di IBM suggerisce caldamente di non protrarre il GPFS team di IBM suggerisce caldamente di non protrarre
questa situazione a lungoquesta situazione a lungo La migrazione effettuata con un nodo per volta (con La migrazione effettuata con un nodo per volta (con
rimozione dal cluster e successivo reinserimento) non rimozione dal cluster e successivo reinserimento) non ha portato a perdita di funzionalita’: ciascun nodo ha ha portato a perdita di funzionalita’: ciascun nodo ha mantenuto sempre la visibilita’ dei file system - con la mantenuto sempre la visibilita’ dei file system - con la sola eccezione del proprio rebootsola eccezione del proprio reboot
16
Test di prestazioniTest di prestazioni
Sono stati effettuati numerosi test di Sono stati effettuati numerosi test di prestazioni nell’ambito del gruppo prestazioni nell’ambito del gruppo storage di CCRstorage di CCR
Sono state confrontate le prestazioniSono state confrontate le prestazioni rispetto ad altri file system (Ext3, rispetto ad altri file system (Ext3,
Lustre) (solo su kernel 2.4)Lustre) (solo su kernel 2.4) in configurazioni differenti in configurazioni differenti
(parallelizzazione e distribuzione del (parallelizzazione e distribuzione del carico)carico)
Client I/O (write)
32.7038.00
42.8039.00
42.00
54.80
89.00 89.40 88.00
103.00
121.60 120.00
0.00
20.00
40.00
60.00
80.00
100.00
120.00
140.00
1 client 2 clients 4 clients
MB/s
NFS (ext3)
NFS (GPFS, 1 srv, 1 NSD)
GPFS (1 srv, 1 NSD)
GPFS (2 srv, 2 NSD)
server e clients: dual Xeon 3 GHz SLC3 GPFS 2.3.0-3
Client I/O (read)
67.0060.20
46.00
114.00
50.0046.00
113.00 114.60108.00
116.50
209.00 210.00
0.00
50.00
100.00
150.00
200.00
250.00
1 client 2 clients 4 clients
MB/s
NFS (ext3)
NFS (GPFS, 1 srv, 1 NSD)
GPFS (1 srv, 1 NSD)
GPFS (2 srv, 2 NSD)
server e clients: dual Xeon 3 GHz SLC3 GPFS 2.3.0-3
19
Early Parallel File System Test-bed
IBMFastT 900(DS 4500)4 TB, 2 LUN
17x250 GBRaid-5 array
4 TB, 2 LUN17x250 GB
Raid-5 array
IBMFastT 900(DS 4500)4 TB, 2 LUN
17x250 GBRaid-5 array
4 TB, 2 LUN17x250 GB
Raid-5 array
IBMFastT 900(DS 4500)4 TB, 2 LUN
17x250 GBRaid-5 array
4 TB, 2 LUN17x250 GB
Raid-5 array
3 disk storage24 TB, 12 LUN
BrocadeFiber
ChannelSwitch
IBM xseries 346dual Xeon, 2 GB RAM
IBM xseries 346dual Xeon, 2 GB RAM
IBM xseries 346dual Xeon, 2 GB RAM
IBM xseries 346dual Xeon, 2 GB RAM
IBM xseries 346dual Xeon, 2 GB RAM
IBM xseries 346dual Xeon, 2 GB RAM
GigabitEthernetSwitch
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
client nodedual Xeon, 2 GB RAM
50
0 c
lien
t nod
es
6 file system server
thanks to V.Vagnoni
20
Native GPFS with different file sizesE
ffe
ctiv
e av
erag
e th
rou
gh
pu
t (G
b/s
)
# of simultaneous read/writes
0
0,5
1
1,5
2
2,5
3
3,5
4
1 3 5 7 9 20 40 60 80 100
120
GPFS 1 MB x 1000 write
GPFS 1 MB x 1000 read
GPFS 10 MB x 100 write
GPFS 10 MB x 100 read
GPFS 100 MB x 10 write
GPFS 100 MB x10 read
GPFS 1GB x 1 write
GPFS 1 GB x 1 read
thanks to V.Vagnoni
21
8.1 TB of data processed in 7 hours, all 14000 jobs completed
successfully. 500 jobs running simultaneously. > 3 Gbit/s raw sustained read throughput from the file servers with
GPFS (about 320MByte/s effective I/O throughput). Write throughput of output data negligible (1 MB/job).
PHASE 2: Realistic analysis (II)
thanks to V.Vagnoni
22
ProblemiProblemi
Problemi funzionaliProblemi funzionali GPFS evidenzia un problema di memory map e GPFS evidenzia un problema di memory map e
problemi legati ad NFS sui kernel 2.4: devono problemi legati ad NFS sui kernel 2.4: devono essere essere installate patch opportuneinstallate patch opportune. I kernel 2.6 . I kernel 2.6 sono a posto.sono a posto.
GPFS release > 2.3.0-3 su kernel 2.4 manifesta un GPFS release > 2.3.0-3 su kernel 2.4 manifesta un problema nell’export via NFS: l’NFS server problema nell’export via NFS: l’NFS server non non puo’ essere up-to-datepuo’ essere up-to-date, o deve avere il , o deve avere il kernel 2.6kernel 2.6..
Prestazioni non brillantiPrestazioni non brillanti per NSD server con per NSD server con kernel kernel 2.62.6; altri problemi di funzionalita’ evidenziati in ; altri problemi di funzionalita’ evidenziati in occasione del recovery occasione del recovery dopo un disk failuredopo un disk failure..
poca esperienza: analisi da approfondirepoca esperienza: analisi da approfondire
23
Problemi-2Problemi-2 Problemi di Problemi di sicurezzasicurezza
GPFS richiede la condivisione di accesso GPFS richiede la condivisione di accesso privilegiato senza password tra i nodi di un privilegiato senza password tra i nodi di un cluster; sono stati utilizzati due work-around:cluster; sono stati utilizzati due work-around:
utilizzo di un wrapper sopra ssh per limitare l’accesso utilizzo di un wrapper sopra ssh per limitare l’accesso dei nodi del cluster ai soli file di configurazione di GPFSdei nodi del cluster ai soli file di configurazione di GPFS
raggruppamento delle macchine di esperimento in un raggruppamento delle macchine di esperimento in un cluster separato, ed utilizzo dell’inter-cluster export di cluster separato, ed utilizzo dell’inter-cluster export di GPFSGPFS
Problemi di Problemi di managementmanagement La condivisione delle chiavi ssh richiede un La condivisione delle chiavi ssh richiede un
meccanismo di distribuzione delle chiavi ssh meccanismo di distribuzione delle chiavi ssh attraverso una gestione centralizzata dei file attraverso una gestione centralizzata dei file authorized_keys e known_hostsauthorized_keys e known_hosts
** attenzione alle reinstallazioni **** attenzione alle reinstallazioni **
24
Note sulla installazioneNote sulla installazione Distribuito tramite pacchetti rpm, ma:Distribuito tramite pacchetti rpm, ma:
richiede l’installazione di release <= 2.3.0-3 richiede l’installazione di release <= 2.3.0-3 prima di fare upgrade alla release correnteprima di fare upgrade alla release corrente
richiede la compilazione dei moduli GPL dopo richiede la compilazione dei moduli GPL dopo editing di un file di configurazioneediting di un file di configurazione
Automazioni sviluppate in casa:Automazioni sviluppate in casa: ““quattorizzazione”: realizzato un rpm per i quattorizzazione”: realizzato un rpm per i
moduli GPL precompilati, ed un rpm per moduli GPL precompilati, ed un rpm per aggirare la necessita’ di fare upgradeaggirare la necessita’ di fare upgrade
realizzazione di un source rpm per la realizzazione di un source rpm per la generazione rapida del pacchetto rpm dei generazione rapida del pacchetto rpm dei moduli GPLmoduli GPL
25
GPFS @ INFNGPFS @ INFN INFN-CTINFN-CT
GPFS in produzione sui volumi di GPFS in produzione sui volumi di esperimento e volumi GRIDesperimento e volumi GRID
disco FC con 20 TB, due NSD disco FC con 20 TB, due NSD serverserver
3 box con controller 3ware da 1.2 3 box con controller 3ware da 1.2 TB/cadTB/cad
120 GPFS client (WN)120 GPFS client (WN) GPFS release 2.3.0-10 su kernel GPFS release 2.3.0-10 su kernel
2.42.4 INFN-TSINFN-TS
GPFS sui volumi della farm GPFS sui volumi della farm centrale e GRIDcentrale e GRID
disco FC con 22 TB, tre NSD disco FC con 22 TB, tre NSD server connessi alla SANserver connessi alla SAN
30 GPFS client30 GPFS client GPFS release 2.3.0-10 su kernel GPFS release 2.3.0-10 su kernel
2.42.4 Export dei volumi via NFSExport dei volumi via NFS
Infortrend FC-FC Infortrend FC-SATA
SAN Switch
Tape Library
Storage Servers
Mail Cluster
GPFS/NFS/Castor
FARM
AFS Server
Switch Ethernet
Switch Ethernet
Switch Ethernet
26
GPFS@INFN - 2GPFS@INFN - 2
INFN-GEINFN-GE Volumi di farm, esperimento, servizi centrali Volumi di farm, esperimento, servizi centrali
(home dir, web), GRID, backup(home dir, web), GRID, backup Disco FC 20 TB + 2 box controller 3ware (6 TB)Disco FC 20 TB + 2 box controller 3ware (6 TB) Tre cluster (centrale, di esperimento, backup), 5 Tre cluster (centrale, di esperimento, backup), 5
+2 NSD server+2 NSD server 40 GPFS client sul cluster centrale40 GPFS client sul cluster centrale Export dei volumi via inter-cluster GPFS, NFS e Export dei volumi via inter-cluster GPFS, NFS e
sambasamba GPFS release 2.3.0-11 su kernel 2.4 e kernel 2.6 GPFS release 2.3.0-11 su kernel 2.4 e kernel 2.6
(32 e 64 bit) sul cluster centrale(32 e 64 bit) sul cluster centrale
27
GPFS @ INFN Genova - GPFS @ INFN Genova - schemaschema
28
Accessibilita’ e risorseAccessibilita’ e risorse GPFS e’ un prodotto commerciale di IBMGPFS e’ un prodotto commerciale di IBM
last release: 3.1 (aprile 2006)last release: 3.1 (aprile 2006) distribuito per AIX e linux RH/SUSEdistribuito per AIX e linux RH/SUSE
Fornito gratuitamente (assieme ad altro: DB2, Tivoli, Fornito gratuitamente (assieme ad altro: DB2, Tivoli, Rational, CSM, …) attraverso il programma “IBM Rational, CSM, …) attraverso il programma “IBM University” (http://www.ibm.com/university)University” (http://www.ibm.com/university)
Distribuzione via reteDistribuzione via rete http://techsupport.services.ibm.com/server/gpfs/download/home.hhttp://techsupport.services.ibm.com/server/gpfs/download/home.htmltmla partire dalla release 2.3.0-7, installabili solo come a partire dalla release 2.3.0-7, installabili solo come upgradeupgrade per l’installazione e’ necessario iscriversi al programma per l’installazione e’ necessario iscriversi al programma
University e richiedere ad IBM i CD della release base 2.3.0-1University e richiedere ad IBM i CD della release base 2.3.0-1 RisorseRisorse
IBM fornisce contratti di supporto sotto condizioni stringenti: IBM fornisce contratti di supporto sotto condizioni stringenti: in corso il tentativo di definire un contratto di manutenzione in corso il tentativo di definire un contratto di manutenzione per (le) installazioni INFNper (le) installazioni INFN
Disponibili ampia documentazione e FAQ in reteDisponibili ampia documentazione e FAQ in rete Esiste una mailing list abbastanza attiva del San Diego Super Esiste una mailing list abbastanza attiva del San Diego Super
Computing (https://lists.sdsc.edu/mailman/listinfo.cgi/gpfs-Computing (https://lists.sdsc.edu/mailman/listinfo.cgi/gpfs-general)general)
29
ConclusioniConclusioni GPFS si presenta come una soluzione GPFS si presenta come una soluzione
interessanteinteressante Buone prestazioni, che migliorano grazie alla Buone prestazioni, che migliorano grazie alla
parallelizzazione che puo’ fornire con semplicita’ parallelizzazione che puo’ fornire con semplicita’ anche il bilanciamento di caricoanche il bilanciamento di carico
Ottime caratteristiche di affidabilita’, che si Ottime caratteristiche di affidabilita’, che si sfruttano al meglio in una infrastruttura SANsfruttano al meglio in una infrastruttura SAN
POSIX I/O: puo’ essere utilizzato dalle applicazioni POSIX I/O: puo’ essere utilizzato dalle applicazioni senza adattamentisenza adattamenti
scalabile: supportato da IBM fino a 1024 nodi, ma scalabile: supportato da IBM fino a 1024 nodi, ma esistono gia’ in produzione installazioni di oltre 2000 esistono gia’ in produzione installazioni di oltre 2000 nodinodi
Funzionalita’ come la duplicazione di dati e Funzionalita’ come la duplicazione di dati e metadati, supporto per ACL e quota ne fanno una metadati, supporto per ACL e quota ne fanno una soluzione interessante anche per file system general soluzione interessante anche per file system general purpose (home dir)purpose (home dir)