PowerEdge: Funktionerna i Dell Ready Solutions för HPC BeeGFS-lagring
Summary: Funktionerna i Dell Ready Solutions för HPC BeeGFS-lagring
Instructions
Innehållsförteckning
- Introduktion
- StorageBench – För att jämföra prestanda för olika RAID-konfigurationer
- StorageBench – För att identifiera defekta eller felkonfigurerade lagringsmål
- Slutsats och framtida arbete
Introduktion
I den här bloggen diskuteras de viktigaste funktionerna i Dell Ready Solutions för HPC BeeGFS-lagring som tillkännagavs nyligen. Detta är den tredje bloggen i serien om BeeGFS högpresterande lagringslösning. Den första bloggen tillkännagav lanseringen av lösningen. I den andra bloggen diskuterades skalbarheten hos Dell Ready Solutions för HPC BeeGFS-lagring. Den innehåller information om baskonfigurationerna, de flexibla skalbara konfigurationerna och den uppmätta sekventiella läs-/skrivprestandan för de olika konfigurationerna, vilket visar att skalbarheten är linjär när det gäller antalet servrar i lösningen. Den aktuella bloggen belyser användningen av "StorageBench", riktmärket för integrerade lagringsmål för BeeGFS.
BeeGFS är ett filsystem med öppen källkod som kan laddas ner från www.beegfs.io. Det är ett parallellt filsystem som distribuerar data över flera lagringsmål. Det är en mjukvarudefinierad lagring som frikopplar det logiska filsystemet från den underliggande lagringsmaskinvaran, vilket gör det möjligt för användaren att definiera hur och var data lagras. Filsystemprogramvaran innehåller företagsfunktioner som hög tillgänglighet, kvottillämpning och åtkomstkontrollistor. De viktigaste funktionerna i BeeGFS är dess användarvänlighet, skalbarhet och flexibilitet. Dess användarvänlighet härrör från det faktum att alla komponenter på serversidan är demoner i användarrymden, medan klienten är en kärnmodul som inte kräver några korrigeringar till själva kärnan. Alla BeeGFS-komponenter kan installeras och uppdateras utan att starta om servern. Så vi kan lägga till klienter och servrar till det befintliga systemet utan några driftstopp. Genom att lägga till servrar och enheter kan filsystemets prestanda och kapacitet skalas upp mer i bloggen som länkas här. BeeGFS stöder flera Linux-distributioner och är utformat för att fungera med alla POSIX-kompatibla lokala filsystem. BeeGFS stöder också att köra flera instanser av en viss tjänst på samma server.
Dell Ready Solutions för HPC BeeGFS-lagring utnyttjar alla de viktigaste funktionerna i BeeGFS-filsystemet och är konstruerad för hög prestanda. Lösningen använder PowerEdge R740xd-servrar för lagring och serverhantering och/eller bearbetning av metadata och data. Varje PowerEdge R740xd-server har 24 × 1,6 TB Intel P4600 NVMe SSD-hårddiskar som anses vara det andra stora språnget inom diskteknik, SSD-enheterna är det första. I HPC-miljöer kan arbetsytan ofta vara en begränsande faktor. Den kan vara för liten eller för långsam. Dell EMC Ready Solutions för HPC BeeGFS-lagring är utformad för att användas som en scratch-lösning och hanterar scratch-lagringen med hjälp av BeeGFS-filsystemet.
BeeGFS innehåller två integrerade benchmarkingverktyg som kan hjälpa till att karakterisera eller utvärdera NetBench respektive StorageBench för nätverk eller lagring. När NetBench-läget är aktiverat ignorerar servrarna mottagna skrivbegäranden i stället för att skriva data. På samma sätt skickas endast minnesbuffertarna till klienterna i stället för att läsa från det underliggande filsystemet. NetBench-läget är avsett för att testa dataflödet för nätverksströmning oberoende av de underliggande diskarna. Å andra sidan är StorageBench avsedd att mäta strömningsdataflödet för det underliggande filsystemet oberoende av nätverkets prestanda. StorageBench är ett prestandatest för lagringsmål som inte använder nätverket. Kommandot storage-bench skickar helt enkelt begäran till lagringsmålen för att börja skriva/läsa data. På så sätt eliminerar vi nätverkets påverkan. De utdata vi får från lagringsbänken är den bästa prestanda som systemet kan uppnå om nätverksprestandan är idealisk. Den här bloggen illustrerar hur StorageBench kan användas för att jämföra prestanda för olika lagringsmål och därmed identifiera defekta eller felkonfigurerade mål.
StorageBench – För att jämföra prestanda för olika RAID-konfigurationer
StorageBench använder inte det monterade filsystemet. När vi kör StorageBench finns det bara ett mål per fil. Storagebench skapar en katalog på varje lagringsmål i systemet där testfiler skapas som är lika med antalet testtrådar. Data strömmas direkt till detta för att visa det dataflöde på låg nivå som är tillgängligt för varje lagringsmål. Utan nätverkskommunikation kan striping inte simuleras. Därför är resultaten för lagringstestet ganska jämförbara med klient-IO med striping inaktiverat. När prestandatester körs blir filen stripad över fyra lagringsmål om standardstripingmönstret används.
I syfte att testa olika lagringsmål användes de små och medelstora konfigurationer som beskrivs i bloggen om skalbarheten hos Dell BeeGFS-lagringslösningen. Båda konfigurationerna har samma antal metadatamål som konfigurerats i RAID 1. De skiljer sig åt i RAID-konfigurationen för lagringsmålen. Medan den lilla installationen har lagringsmål konfigurerade i RAID 0 på 6 enheter, har den medelstora konfigurationen lagringsmålen konfigurerade i RAID 10 på sex enheter. De lagringsmål som konfigurerats i konfigurationen Liten och Medel visas nedan:
| Tabell 1 Testbäddens konfiguration | ||
|---|---|---|
| Konfiguration | Medium – RAID 10 för lagringsmål | Liten – RAID 0 för lagringsmål |
| Antal metadataobjekt | 6 | 6 |
| Antal instanser av metadatatjänsten | 6 | 6 |
| Antal lagringsservrar | 5 | 2 |
| Antal lagringsmål | 22 | 10 |
| Antal lagringstjänster per server | 4 | 4 |
| Antal lagringstjänster per NUMA-zon | 2 | 2 |
| Antal mål per instans av lagringstjänsten | 2 | 2 |
Obs! Ovanstående konfiguration av mediekonfigurationen är endast till för att testa genomströmningen för lagringsmål som konfigurerats i olika RAID-konfigurationer med hjälp av StorageBench-verktyget.
StorageBench Write Benchmark – på den lilla konfigurationen med lagringsmål konfigurerade i RAID 0
Lagringsriktmärket startas och övervakas med verktyget beegfs-ctl. Paketet beegfs-utils tillhandahåller kommandoradsverktyget beegfs-ctl som kan användas för att köra prestandatestet för lagringsmål. I följande exempel startas ett skrivtest på alla mål för alla BeeGFS-lagringsservrar med en IO-blockstorlek på 512 kB, med 16 trådar per mål, som var och en skriver 200 Gb data till sin egen fil.
[root@stor1 ~]# beegfs-ctl --storagebench --alltargets --write --blocksize=512K --size=200G --threads=16 Write storage benchmark was started. You can query the status with the --status argument of beegfs-ctl. Server benchmark status: Running: 10
Den "Löpning: 10" utdata indikerar att det finns totalt 10 lagringsmål konfigurerade i systemet.
Om du vill fråga efter prestandateststatus/resultat för alla mål kan du köra följande kommando:
[root@stor1 ~]# beegfs-ctl --storagebench --alltargets --status Server benchmark status: Finished: 10 Write benchmark results: Min throughput: 4692435 KiB/s nodeID: stor1-numa0-2 [ID: 6], targetID: 50 Max throughput: 5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], targetID: 48 Avg throughput: 4907091 KiB/s Aggregate throughput: 49070915 KiB/s
Om du lägger till utförlig i kommandot ovan visas listan över alla mål och deras respektive dataflöde.
[root@meta-stor ~]# beegfs-ctl --storagebench --alltargets --status --verbose Server benchmark status: Finished: 10 Write benchmark results: Min throughput: 4692435 KiB/s nodeID: stor1-numa0-2 [ID: 6], targetID: 6 Max throughput: 5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], targetID: 2 Avg throughput: 4907091 KiB/s Aggregate throughput: 49070915 KiB/s List of all targets: 1 5368477 KiB/s nodeID: meta-stor-numa1-1 [ID: 1] 2 5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2] 3 4706368 KiB/s nodeID: stor1-numa0-1 [ID: 3] 4 4896077 KiB/s nodeID: stor1-numa1-1 [ID: 4] 5 4872876 KiB/s nodeID: stor1-numa1-2 [ID: 5] 6 4692435 KiB/s nodeID: stor1-numa0-2 [ID: 6] 7 4879054 KiB/s nodeID: stor2-numa1-2 [ID: 7] 8 4864737 KiB/s nodeID: stor2-numa1-1 [ID: 8] 9 4696152 KiB/s nodeID: stor2-numa0-1 [ID: 9] 10 4726202 KiB/s nodeID: stor2-numa0-2 [ID: 10]
Slutsats från utdata:
Den genomsnittliga genomströmningen per lagringsmål som konfigurerats i RAID 0 är 5,02 GB/s.
StorageBench Write Benchmark – på medelhög konfiguration med lagringsmål konfigurerade i RAID 10
I följande exempel startas ett skrivtest på alla mål för alla BeeGFS-lagringsservrar med en IO-blockstorlek på 512 kB, med 16 trådar per mål, som var och en skriver 200 Gb data till sin egen fil.
[root@node001 ~]# beegfs-ctl --storagebench --alltargets --write --blocksize=512K --size=200G --threads=16 Write storage benchmark was started. You can query the status with the --status argument of beegfs-ctl. Server benchmark status: Running: 22
Om du lägger till utförlig i kommandot ovan visas listan över alla mål och deras respektive dataflöde.
[root@node001 ~]# beegfs-ctl --storagebench --alltargets --status --verbose Server benchmark status: Finished: 22 Write benchmark results: Min throughput: 2705987 KiB/s nodeID: node006-numa0-1 [ID: 19], targetID: 1 Max throughput: 3364311 KiB/s nodeID: node001-numa1-1 [ID: 1], targetID: 1 Avg throughput: 3212845 KiB/s Aggregate throughput: 70682603 KiB/s List of all targets: 1 3364311 KiB/s nodeID: node001-numa1-1 [ID: 1] 2 3361591 KiB/s nodeID: node001-numa1-2 [ID: 2] 3 3309530 KiB/s nodeID: node002-numa0-1 [ID: 3] 4 3312840 KiB/s nodeID: node002-numa0-2 [ID: 4] 5 3332095 KiB/s nodeID: node002-numa1-1 [ID: 5] 6 3323319 KiB/s nodeID: node002-numa1-2 [ID: 6] 7 3313000 KiB/s nodeID: node003-numa0-1 [ID: 7] 8 3321214 KiB/s nodeID: node003-numa0-2 [ID: 8] 9 3335072 KiB/s nodeID: node003-numa1-1 [ID: 9] 10 3339743 KiB/s nodeID: node003-numa1-2 [ID: 10] 11 3302175 KiB/s nodeID: node004-numa0-1 [ID: 11] 12 3309474 KiB/s nodeID: node004-numa0-2 [ID: 12] 13 3329879 KiB/s nodeID: node004-numa1-1 [ID: 13] 14 3328291 KiB/s nodeID: node004-numa1-2 [ID: 14] 15 3306132 KiB/s nodeID: node005-numa0-1 [ID: 15] 16 3307096 KiB/s nodeID: node005-numa0-2 [ID: 16] 17 3318436 KiB/s nodeID: node005-numa1-1 [ID: 17] 18 3329684 KiB/s nodeID: node005-numa1-2 [ID: 18] 19 2705987 KiB/s nodeID: node006-numa0-1 [ID: 19] 20 2716438 KiB/s nodeID: node006-numa0-2 [ID: 20] 21 2707970 KiB/s nodeID: node006-numa1-1 [ID: 21] 22 2708326 KiB/s nodeID: node006-numa1-2 [ID: 22]
Slutsats från utdata:
Det genomsnittliga dataflödet per lagringsmål är 3,29 GB/s.
Från resultaten av StorageBench-prestandatesterna som gjorts på två olika BeeGFS-konfigurationer, en med lagringsmål konfigurerade i RAID 0 och en annan med lagringsmål konfigurerade i RAID 10, är det uppenbart att skrivprestandan är bättre med lagringsmålen konfigurerade i RAID 0 snarare än i RAID 10. När dd-kommandot användes för att skriva en 10 G-fil med en blockstorlek på 1 M och "oflag=direct" var genomsnittet cirka 5,1 Gbit/s för det lilla systemet som konfigurerats i RAID 0 medan den genomsnittliga genomströmningen var cirka 3,4 Gbit/s för det medelstora systemet som konfigurerats i RAID 10, vilket är jämförbart med de resultat som erhölls med verktyget storagebench.
StorageBench – För att identifiera defekta eller felkonfigurerade lagringsmål
StorageBench kördes på den medelkonfiguration som beskrivs i blogginlägget för att ta reda på om det finns några felkonfigurerade eller defekta lagringsmål i systemet.
[root@node001 ~]# beegfs-ctl --storagebench --alltargets --status --verbose Server benchmark status: Finished: 33 Read benchmark results: Min throughput: 2830479 KiB/s nodeID: node003-numa1-2 [ID: 14], targetID: 14 Max throughput: 3025500 KiB/s nodeID: node005-numa0-1 [ID: 22], targetID: 22 Avg throughput: 2917836 KiB/s Aggregate throughput: 96288596 KiB/s List of all targets: 1 2950039 KiB/s nodeID: node001-numa1-1 [ID: 1] 2 2956121 KiB/s nodeID: node001-numa1-2 [ID: 2] 3 2954473 KiB/s nodeID: node001-numa1-3 [ID: 3] 4 2957658 KiB/s nodeID: node002-numa0-1 [ID: 4] 5 2947109 KiB/s nodeID: node002-numa0-2 [ID: 5] 6 2969886 KiB/s nodeID: node002-numa0-3 [ID: 6] 7 2892578 KiB/s nodeID: node002-numa1-1 [ID: 7] 8 2886899 KiB/s nodeID: node002-numa1-2 [ID: 8] 9 2888972 KiB/s nodeID: node002-numa1-3 [ID: 9] 10 2861995 KiB/s nodeID: node003-numa0-1 [ID: 10] 11 2874314 KiB/s nodeID: node003-numa0-2 [ID: 11] 12 2879096 KiB/s nodeID: node003-numa0-3 [ID: 12] 13 2832635 KiB/s nodeID: node003-numa1-1 [ID: 13] 14 2830479 KiB/s nodeID: node003-numa1-2 [ID: 14] 15 2830971 KiB/s nodeID: node003-numa1-3 [ID: 15] 16 2986890 KiB/s nodeID: node004-numa0-1 [ID: 16] 17 2979197 KiB/s nodeID: node004-numa0-2 [ID: 17] 18 2983958 KiB/s nodeID: node004-numa0-3 [ID: 18] 19 2897974 KiB/s nodeID: node004-numa1-1 [ID: 19] 20 2900880 KiB/s nodeID: node004-numa1-2 [ID: 20] 21 2904036 KiB/s nodeID: node004-numa1-3 [ID: 21] 22 3025500 KiB/s nodeID: node005-numa0-1 [ID: 22] 23 3021558 KiB/s nodeID: node005-numa0-2 [ID: 23] 24 3017387 KiB/s nodeID: node005-numa0-3 [ID: 24] 25 2921480 KiB/s nodeID: node005-numa1-1 [ID: 25] 26 2930226 KiB/s nodeID: node005-numa1-2 [ID: 26] 27 2930548 KiB/s nodeID: node005-numa1-3 [ID: 27] 28 2900018 KiB/s nodeID: node006-numa0-1 [ID: 28] 29 2898520 KiB/s nodeID: node006-numa0-2 [ID: 29] 30 2907113 KiB/s nodeID: node006-numa0-3 [ID: 30] 31 2855079 KiB/s nodeID: node006-numa1-1 [ID: 31] 32 2853527 KiB/s nodeID: node006-numa1-2 [ID: 32] 33 2861480 KiB/s nodeID: node006-numa1-3 [ID: 33]
Från ovanstående utdata är det uppenbart att alla lagringsmål fungerar enhetligt och att det inte finns några defekta mål i systemet.
Slutsats och framtida arbete
Den här bloggen diskuterade de viktigaste funktionerna i BeeGFS och förklarade användbarheten av benchmark-testet för lagringsbänk för att utvärdera eller jämföra prestanda för olika RAID-konfigurationer och även för att identifiera om något av lagringsmålen är defekta eller felkonfigurerade. Som en del av nästa steg kommer vi att publicera ett informationsdokument senare med metadataprestanda och IOR-prestanda och med ytterligare information om designöverväganden, justering och konfiguration.
Referenser
1) Dell EMC Ready Solutions för HPC BeeGFS-lagring PowerEdge: Färdiga Dell-lösningar för HPC BeeGFS-lagring
med hög prestanda2) Skalbarheten hos Dell-färdiga lösningar för HPC BeeGFS-lagring PowerEdge: Skalbarheten hos Dell Ready Solutions för HPC BeeGFS-lagring
3) BeeGFS-dokumentation:
https://www.beegfs.io/wiki/4) Så här ansluter du två gränssnitt på samma subnät:
https://access.redhat.com/solutions/305645) PCI Express Direct Memory Access Reference Design med externt minne: https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760