Hochleistungs-Disk-I/O mit Lustre, dcache und AFS eine vergleichende Betrachtung Stephan Wiesand DESY DV 33. Treffen des ZKI AK Supercomputing Hamburg, 2010-03-04
Computing am DESY Standort Zeuthen Batch Farm 696 Cores Parallel Cluster 1024 Cores, IB NAF/Tier2 Grid 672 Cores Hamburg 350 km NAF Batch 512 Cores apenext 2.5 TFlops WLCG Tier2 Zentrum für ATLAS, CMS, LHCb + Grid Ressourcen für andere VOs + Terascale Alliance National Analysis Facility für LHC/ILC Physik Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 2
Computing + Disk Storage am DESY Standort Zeuthen Batch Farm 696 Cores Parallel Cluster 1024 Cores, IB NAF/Tier2 Grid 672 Cores Lustre AFS 100 TB Lustre 55 TB 50 TB Lustre 40 TB Panasas dcache 9 TB 270 TB dcache 700 TB Hamburg 350 km dcache Lustre AFS NAF Batch 512 Cores Lustre 50 TB AFS Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 3
Der Storage Baustein > Direct Attached Storage. Typische Konfiguration: 1-4 x GbE IB (DDR) 10GbE OSS / Pool Node / Fileserver RAID6 Controller 4x3 Gb/s SAS, x2 (redundant) JBOD 15 x 2 TB SATA 15 x 600 GB SAS > OS: S5L 64-bit Automatische, zentrale Installation, Konfiguration, Wartung, Überwachung genau wie für die Rechenknoten (alle Systeme voll gepatcht) Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 4
AFS Volume Location Database Cluster auf Applikationsebene > Volume basiert eingebette Mountpoints ergeben den Namespace R/O Replizierung, asynchron Transparente Migration Quotas (2 TB max) > Client relativ langsam > Volumes sind auf eine Fileserverpartition beschränkt Fileserver Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 5
AFS + OSD - vielversprechende Entwicklung > Volume basiert eingebette Mountpoints ergeben den Namespace R/O Replizierung, asynchron Transparente Migration Quotas > kleine Dateien auf dem Fileserver > große auf den OSDs (+ Striping) > Client greift ggf. direkt auf OSDs zu ggf. direkt auf das Backend-Filesystem (z.b. Lustre, GPFS) > http://www.rzg.mpg.de/projects/hsm-afs Volume Location Database Cluster auf Applikationsebene OSD Server Fileserver Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 6
Unsere erste Lustre Instanz > in Betrieb seit Anfang 2008 > Anbindung: 2 x GbE / Server OSSs: HP DL380 G5 2 x 4 Cores 2.33 GHz 16 GB RAM, P400+P800 2 x 146 GB SAS RAID1 System & OST Journals 4 x 146 GB SAS RAID10 System & MDT OSTs: HP MSA 60 12 x 750 GB E-SATA RAID6 on P800 OSS 0 OST 0, 3 OSS 1 OST 1, 4 OSS 2 OST 2,5 MGS/MDS Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 7
Unsere zweite Lustre Instanz > In Betrieb seit Mitte 2009 > Anbindung: 2xGbE/Server MGS/MDS > 1 TB SATA Disks 52 TB netto OSSs Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 8
Unsere dritte Lustre Instanz > primär für den Parallel-Cluster, im Aufbau > Anbindung: (1x DDR Infiniband + 2 x GbE) / Server MGS/MDS > 2 TB SATA Disks 104 TB netto OSSs Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 9
Performance: AFS vs. Lustre in Einbrenntests AFS, 1 Server 220 MB/s > 64 Clients, 128 Jobs > kopieren/lesen je 2 GB Lustre, 4 OSSs 900 MB/s Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 10
Lustre Einbrenntest 220 MB/s OSS 1 OSS 2 OSS 3 OSS 4 Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 11
dcache > kein normales Dateisystem Dateien können nicht modifiziert werden Head Node Pool Nodes Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 12
dcache > kein normales Dateisystem Dateien können nicht modifiziert werden Head Node Pool Nodes gestohlen aus http://www.dcache.org/manuals/20091030-storageworkshop-cologne.pdf Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 13
dcache > kein normales Dateisystem Dateien können nicht modifiziert werden Head Node Pool Nodes > Replizierung > Migration > mit/ohne HSM > R/O Pools > Grid Storage Element gestohlen aus http://www.dcache.org/manuals/20091030-storageworkshop-cologne.pdf Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 14
ATLAS Hammercloud Tier2 Site Test, 2. März 2010 > dcache Durchsatz 1 GB/s http://gangarobot.cern.ch/hc/1131/test/ Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 15
dcache Lasttest 4 GB/s Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 16
Vergleich: Skalierbarkeit > Gemeinsamkeit: Trennung von Daten und Metadaten AFS: nur Volume Location auf DB Servern > File/Directory Metadaten sind Teil des Volumes dcache: File Location und alle Metadaten Lustre: File Location und Metadaten auf MDS > außer der Größe - bei stat() arbeiten alle mit nur AFS skaliert gut für kleine Dateien > Lustre und dcache verteilen Daten automatisch auf Storage Nodes > AFS und dcache können Daten replizieren und I/O verteilen AFS: ganze Volumes, asynchron dcache: ganze Files > Lustre: Striping - gut bei extrem großen Dateien > AFS + OSD: Obermenge der besten Features Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 17
Vergleich: Performanz > Lookup AFS gut, skaliert mit Zahl der Fileserver Lustre und dcache (und Panasas...) mäßig > mögliche stat(), open() Rate begrenzt durch Leistung eines Servers > Read/Write - einzelner Client AFS: < 100 MB/s (deutlich besser: OSD + Lustre Backend) Lustre: GbE Wire Speed ohne Tuning, >> 100 MB/s mit Infiniband dcache: GbE Wire Speed nach Client Tuning (dcap), 10 GbE:? > Read/Write - viele parallele Clients AFS: max. ca. 300 MB/s/Volume (falls nicht repliziert) Lustre, dcache: > 500 MB/s/Server > nur begrenzt durch Netzwerk und Zahl der OSS / Pool Nodes Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 18
Vergleich: Vielseitigkeit > untrusted Clients/Networks? AFS: ja, Kerberos - aber schwache Schlüssel dcache: ja - Kerberos, X509 Lustre: nein - Kerberos auf der Roadmap > heterogene Clients? AFS: nativer Client für Linux, Windows, ander Unices (OS X) dcache: viele Zugriffsprotokolle (neu: pnfs, WebDAV) Lustre: nur Linux Client. NFS Export als Notlösung > alle funktionieren gut übers WAN (Lustre: mit VPN) > dcache Besonderheiten: kommt als Grid Storage Element HSM-Anbindung ist natürlich nicht ganz POSIX-artig Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 19
Vergleich: Zuverlässigkeit und Verfügbarkeit > AFS: sehr stabil auch gegen zeitweilige Ausfälle von Netzwerk, Servern HA eingebaut für DB Server, nicht möglich für Fileserver asynchrone R/O Replizierung von Volumes mit Client Failover > Lustre: HA im Design erfordert Shared Storage + Standby Server Preis: Recovery, Eviction - Client Crash ist signifikantes Ereignis relativ jung - neues Release, neue Features, neue Bugs noch nicht robust gegen Aussetzer des Netzwerks > dcache: in der Praxis sehr robust Keine Redundanz beim Head Node Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 20
Fazit > Aus Standardbausteinen aus Commodity Hardware mit Direct Attached Storage entstehen flexibel Dateisysteme mit verschiedenen Eigenschaften. > Mit Lustre und dcache lassen sich so sehr performante Gesamtsysteme aufbauen. > Der Ansatz und die drei Dateisysteme haben sich in der Praxis bewährt. > Die relativ hohe Anzahl der Server ist unproblematisch, dank Verwendung der selben Methoden und Infrastruktur wie für Rechenknoten. AFS 55 TB Lustre 100 TB dcache 700 TB > AFS wird wohl nie Rekorde aufstellen. Mit der OSD Erweiterung könnte es aber für manche Anwendungen ein guter Kompromiss werden. Stephan Wiesand Hochleistungs-Disk-I/O mit Lustre, dcache und AFS 2010-03-04 Page 21