Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

Funktioner i Dell EMC-färdiga lösningar för lagring med HPC BeeGFS

Summary: PowerEdge R740xd, PowerEdge R640, PowerSwitch S3048-ON, Mellanox SB7890, BeeGFS v7.1.3, HPC and AI Innovation Lab, HPC, BeeGFS High Performance Storage Solution, IOzone, sekventiell läs- och skrivprestanda, slumpmässig läs- och skrivprestanda ...

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Symptoms

Artikel skriven av Nirmala Sundararajan från Dell EMC HPC and AI Innovation Lab i november 2019

Cause

Funktioner i Dell EMC-färdiga lösningar för lagring med HPC BeeGFS

Resolution

Innehållsförteckning

  1. Introduktion
  2. StorageBench – För att jämföra prestanda hos olika RAID-konfigurationer
  3. StorageBench – Identifiera defekta eller felkonfigurerade lagringsmål
  4. Sammanfattning och framtida arbete
     

Introduktion

Den här bloggen beskriver de senaste funktionerna i Dell EMC Ready-lösningar för HPC BeeGFS-lagring . Det här är den tredje bloggen i serien om lagringslösningen BeeGFS High Performance.  Den första bloggen tillkännagav lanseringen av lösningen. I den andra bloggen diskuteras skalbarheten för Dell EMC Ready-lösningar för lagring med HPC BeeGFS. Det gav detaljer om baskonfigurationerna, flexibla skalbara konfigurationer och den faktiska uppmätta sekventiella läs-/skrivprestandan hos de olika konfigurationerna som visar att skalbarheten är linjär med avseende på antalet servrar i lösningen. Den aktuella bloggen kommer att markera användningen av "StorageBench", det inbyggda prestandatestet för 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 programvarudefinierad 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 High Availability, Quota enforcement och Access Control Lists. De viktigaste funktionerna i BeeGFS är dess användarvänlighet, skalbarhet och flexibilitet.  Det är enkelt att använda det beror på att alla komponenter på serversidan är daemoner för användarutrymme, medan klienten är en kärnmodul som inte kräver några korrigeringsfiler för själva kärnan. Alla BeeGFS-komponenter kan installeras och uppdateras utan att servern startas om. Så att vi kan lägga till klienter och servrar till det befintliga systemet utan driftavbrott. Genom att lägga till servrar och enheter kan filsystemets prestanda och kapacitet skalas upp mer i den länkade bloggen här. BeeGFS stöder flera Linux-distributioner och är utformat för att fungera med alla POSIX-kompatibla lokala filsystem. BeeGFS har även stöd för att köra flera instanser av en viss tjänst på samma server.

Dell EMC Ready-lösningar för lagring med HPC BeeGFS använder alla viktiga funktioner i BeeGFS-filsystemet och är konstruerad för höga prestanda. I lösningen används PowerEdge R740xd-servrar för lagring och server-/bearbetning av metadata och data.  Varje PowerEdge R740xd-server har 24x 1,6 TB Intel P4600 NVMe SSD-hårddiskar som anses vara det andra stora steget inom enhetsteknik, där SSD:er är de första.  I HPC-miljöer kan reputrymmet ofta vara en begränsande faktor. Den kan vara för liten eller för långsam.  Dell EMC Ready-lösningar för lagring med HPC BeeGFS är utformad för att användas som en scratch-lösning och fungerar som scratch-lagring med hjälp av BeeGFS-filsystemet.

BeeGFS innehåller två inbyggda benchmarkingverktyg som kan hjälpa dig att karakterisera eller utvärdera nätverks- eller lagrings-NetBench respektive StorageBench . När NetBench-läget är aktiverat ignorerar servrarna mottagna skrivförfrågningar i stället för att skriva data. Om läsbegäran görs i stället för att läsa från det underliggande filsystemet skickas endast minnesbuffertarna till klienterna i stället för att läsa från det underliggande filsystemet. NetBench-läget är avsett att testa nätverksströmningen oberoende av de underliggande diskarna. Å andra sidan är StorageBench avsedd att mäta strömningsgenomströmningen i det underliggande filsystemet oberoende av nätverksprestanda. StorageBench är ett prestandatest av lagringsmål som inte använder nätverket. Kommandot storage-bench skickar helt enkelt förfrågan till lagringsmålen för att börja skriva/läsa data. På så sätt eliminera vi nätverkets påverkan. De utdata vi får från lagringstestet är den bästa prestanda som systemet kan uppnå om nätverkets prestanda är idealiskt. Den här bloggen visar hur StorageBench kan användas för att jämföra prestanda hos olika lagringsmål och på så sätt identifiera defekta eller felkonfigurerade mål.


StorageBench – För att jämföra prestanda hos 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 lika med antalet testtrådar. Data strömmas direkt till detta för att visa låg genomströmning tillgänglig för varje lagringsmål. Utan nätverkskommunikation kan inte filstriping simuleras. Resultatet av lagringstestet är alltså ganska jämförbart med klient-IO med striping avaktiverat. När faktiska prestandatest körs skiktas filen över fyra lagringsmål om standardstripingmönstret används. 

I syfte att testa olika lagringsmål användes de små och medelstora konfigurationerna som beskrivs i bloggen om skalbarhet för lagringslösningen Dell EMC BeeGFS.  Båda konfigurationerna har samma antal metadatamål konfigurerade i RAID 1. De skiljer sig i RAID-konfigurationen för lagringsmålen. Även om den lilla konfigurationen har lagring, mål som konfigurerats i RAID 0 av 6 enheter, har mediekonfigurationen lagringsmålen konfigurerade i RAID 10 av 6 enheter. De lagringsmål som konfigurerats i den lilla och medelstora konfigurationen visas nedan:

 

Tabell 1 Konfiguration av testbädd
Konfiguration Medel – RAID 10 för lagringsmål Liten – RAID 0 för lagringsmål
Antal metadatamål 6 6
Antal instanser av metadatatjänster 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 medelstor konfiguration är endast i syfte att testa genomströmningen för lagringsmål som konfigurerats i olika RAID-konfigurationer med hjälp av StorageBench-verktyget.


StorageBench-skrivtest – På den lilla konfigurationen med lagringsmål konfigurerade i RAID 0


Lagringstestet startas och övervakas med verktyget beegfs-ctl. Beegfs-utils-paketet 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 av alla mål för alla BeeGFS-lagringsservrar med en IO-blockstorlek på 512 KB, med 16 trådar per mål, som alla skriver 200 Gb data till sin egen fil.

[root@stor1 ~]# beegfs-ctl --storagebench --alltargets --write --blocksize=512K --size=200G --threads=16
Skrivlagringstest startades.
Du kan kontrollera statusen med argumentet --status för beegfs-ctl.
Status för servertest:
Körs:     10

"Running: 10"-utdata indikerar att det finns totalt 10 lagringsmål konfigurerade i systemet.
 
Om du vill kontrollera prestandatestets status/resultat för alla mål kan följande kommando köras:

[root@stor1 ~]# beegfs-ctl --storagebench --alltargets --status
Server benchmark status:
Finished:    10
Skrivresultat för prestandatest:
min genomströmning:            4692435 KiB/s nodeID: stor1-numa0-2 [ID: 6], mål-ID: 50
maximal genomströmning:            5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], mål-ID: 48
genomsnittlig genomströmning:            4907091 Samlad genomströmning för KiB/s
:     49070915 KiB/s

Om du lägger till utförlig information i ovanstående kommando visas listan över alla mål och deras respektive genomströmning.

[root@meta-stor ~]# beegfs-ctl --storagebench --alltargets --status --verbose
Server benchmark status:
Finished:    10
Skrivresultat för prestandatest:
min genomströmning:            4692435 KiB/s nodeID: stor1-numa0-2 [ID: 6], mål-ID: 6
Maximal genomströmning:            5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], mål-ID: 2
genomsnittlig genomströmning:            4907091 Samlad genomströmning för KiB/s
:     49070915 KiB/s
Lista över alla mål:
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]

Inferens från utdata:

Det genomsnittliga dataflödet per lagringsmål som konfigurerats i RAID 0 är 5,02 GB/s.  


StorageBench-skrivtest – På medelkonfiguration med lagringsmål konfigurerade i RAID 10

I följande exempel startas ett skrivtest av alla mål för alla BeeGFS-lagringsservrar med en IO-blockstorlek på 512 KB, med 16 trådar per mål, som alla skriver 200 Gb data till sin egen fil.

[root@node001 ~]# beegfs-ctl --storagebench --alltargets --write --blocksize=512K --size=200G --threads=16
Skrivlagringstest startades.
Du kan kontrollera statusen med argumentet --status för beegfs-ctl.
Status för servertest:
Körs:     22

Om du lägger till utförlig information i ovanstående kommando visas listan över alla mål och deras respektive genomströmning.

[root@node001 ~]# beegfs-ctl --storagebench --alltargets --status --verbose
Server benchmark status:
Finished:    22
Skrivresultat för prestandatest:
min genomströmning:            2705987 KiB/s nodeID: node006-numa0-1 [ID: 19], mål-ID: 1
maximal genomströmning:            3364311 KiB/s nodeID: node001-numa1-1 [ID: 1], mål-ID: 1
genomsnittlig genomströmning:            3212845 Samlad genomströmning för KiB/s
:     70682603 KiB/s

Lista över alla mål:
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]

Inferens från utdata:

Det genomsnittliga dataflödet per lagringsmål är 3,29 Gbit/s.

I utdata från prestandatesterna för StorageBench som utförts på två olika BeeGFS-konfigurationer, en med lagringsmål konfigurerade i RAID 0 och ett annat med lagringsmål konfigurerade i RAID 10, visar det sig att skrivprestandan är bättre med lagringsmålen konfigurerade i RAID 0 i stället för i RAID 10. När dd-kommandot användes för att skriva en 10G-fil med 1M blockstorlek och "oflag=direct" var genomsnitt cirka 5,1 Gbit/s för det lilla systemet som konfigurerats i RAID 0 medan det genomsnittliga dataflödet var cirka 3,4 Gbit/s för det mediesystem som konfigurerats i RAID 10, vilket är jämförbart med resultaten från lagringsbenchverktyget. 


StorageBench – Identifiera defekta eller felkonfigurerade lagringsmål

StorageBench kördes på den medelstora konfigurationen som beskrivs i tillkännagivandebloggen 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
Läs prestandatestresultat:
min genomströmning:            2830479 KiB/s nodeID: node003-numa1-2 [ID: 14], mål-ID: 14
maximal genomströmning:            3025500 KiB/s nodeID: node005-numa0-1 [ID: 22], mål-ID: 22
genomsnittlig genomströmning:            2917836 Samlad genomströmning för KiB/s
:     96288596 KiB/s
Lista över alla mål:
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]

Utifrån ovanstående utdata visas att alla lagringsmål fungerar enhetligt och att det inte finns några defekta mål i systemet.

 

Sammanfattning och framtida arbete

I den här bloggen diskuteras de viktigaste funktionerna i BeeGFS och förklarar hur användbart prestandatestet vid lagringstestet är för att utvärdera eller jämföra prestanda för olika RAID-konfigurationer och även för att identifiera om några 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-färdiga lösningar för lagring med HPC BeeGFS https://www.dell.com/support/article/sln319381/
2) Skalbarhet för Dell EMC Ready-lösningar för HPC BeeGFS-lagring https://index?page=content&actp=search&id=sln319382
3) BeeGFS-dokumentation: 
https://www.beegfs.io/wiki/4) Så här ansluter du två gränssnitt i samma delnät: 
https://access.redhat.com/solutions/305645) Referensdesign för PCI Express Direct Memory Access med externt minne: https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760

 

 

Article Properties


Affected Product

PowerSwitch S3048-ON, Mellanox SB7800 Series, PowerEdge R640, PowerEdge R740XD

Last Published Date

03 Oct 2023

Version

5

Article Type

Solution