PowerEdge: Funktioner i Dell Ready Solutions til HPC BeeGFS-storage
Summary: Funktioner i Dell Ready Solutions til HPC BeeGFS-storage
Instructions
Indholdsfortegnelse
- Indledning
- StorageBench – til at sammenligne ydeevnen for forskellige RAID-konfigurationer
- StorageBench – til at identificere defekte eller fejlkonfigurerede storagedestinationer
- Konklusion og fremtidigt arbejde
Indledning
Denne blog beskriver de vigtigste funktioner i Dell Ready Solutions til HPC BeeGFS Storage, som blev annonceret for nylig. Dette er den tredje blog i serien vedrørende BeeGFS High-Performance Storage Solution. Den første blog annoncerede udgivelsen af løsningen. Den anden blog diskuterede skalerbarheden af Dell Ready Solutions til HPC BeeGFS-storage. Det gav detaljer om basiskonfigurationerne, de fleksible skalerbare konfigurationer og den målte sekventielle læse-/skriveydelse for de forskellige konfigurationer, hvilket viser, at skalerbarheden er lineær med hensyn til antallet af servere i løsningen. Den aktuelle blog fremhæver brugen af "StorageBench", det integrerede benchmark for lagringsmål for BeeGFS.
BeeGFS er et open source-filsystem, som kan downloades fra www.beegfs.io. Det er et parallelt filsystem, der distribuerer data på tværs af flere lagringsmål. Det er et softwaredefineret lager, der afkobler det logiske filsystem fra den underliggende lagerhardware, så brugeren kan definere, hvordan og hvor dataene er gemt. Filsystemsoftwaren indeholder virksomhedsfunktioner såsom høj tilgængelighed, kvotehåndhævelse og adgangskontrollister. Nøglefunktionerne i BeeGFS er dens brugervenlighed, skalerbarhed og fleksibilitet. Dens brugervenlighed stammer fra det faktum, at alle server-side komponenter er user-space dæmoner, mens klienten er et kernemodul, der ikke kræver nogen patches til selve kernen. Alle BeeGFS-komponenter kan installeres og opdateres uden at genstarte serveren. Så vi kan føje klienter og servere til det eksisterende system uden nedetid. Ved at tilføje servere og drev kan filsystemets ydeevne og kapacitet skaleres mere op i bloggen, der linkes til her. BeeGFS understøtter flere Linux-distributioner, og det er designet til at fungere med ethvert POSIX-kompatibelt lokalt filsystem. BeeGFS understøtter også kørsel af flere forekomster af en given tjeneste på den samme server.
Dell Ready Solutions til HPC BeeGFS Storage udnytter alle de vigtigste funktioner i BeeGFS-filsystemet og er udviklet til høj ydeevne. Løsningen bruger PowerEdge R740xd-servere til lagring, servering og/eller behandling af metadata og data. Hver PowerEdge R740xd-server har 24 x 1,6 TB Intel P4600 NVMe SSD'er, der betragtes som det andet store spring inden for drevteknologi, hvor SSD'erne er de første. I HPC-miljøer kan ridsepladsen ofte være en begrænsende faktor. Det kan være for lille eller for langsomt. Dell EMC Ready Solutions til HPC BeeGFS-storage er designet til at blive brugt som en ridseløsning og fungerer til scratch-storage ved hjælp af BeeGFS-filsystemet.
BeeGFS indeholder to integrerede benchmarkingværktøjer, som kan hjælpe med at karakterisere eller evaluere henholdsvis netværk eller opbevaring NetBench og StorageBench . Når NetBench-tilstand er aktiveret, kasserer serverne modtagne skriveanmodninger i stedet for at skrive dataene. Tilsvarende, i tilfælde af læseanmodninger, i stedet for at læse fra det underliggende filsystem, sendes kun hukommelsesbufferne til klienterne. NetBench-tilstanden er beregnet til at teste netværksstreaminghastigheden uafhængigt af de underliggende diske. På den anden side er StorageBench beregnet til at måle streaminggennemstrømningen for det underliggende filsystem uafhængigt af netværkets ydeevne. StorageBench er et benchmark for storagemål, der ikke bruger netværket. Storage-bench-kommandoen sender simpelthen anmodningen til lagermålene om at begynde at skrive/læse data. Dermed eliminerer vi virkningen af netværket. Det output, vi får fra lagerbænken, er den bedste ydelse, som systemet kan opnå, hvis netværksydelsen er ideel. Denne blog illustrerer, hvordan StorageBench kan bruges til at sammenligne ydeevnen for forskellige storagemål og dermed identificere defekte eller forkert konfigurerede mål.
StorageBench – til at sammenligne ydeevnen for forskellige RAID-konfigurationer
StorageBench bruger ikke det monterede filsystem. Når vi kører StorageBench, er der kun ét mål pr. fil. Storagebench opretter en mappe på hvert lagringsmål på systemet, hvor testfiler oprettes svarende til antallet af testtråde. Data streames direkte til dette for at vise det lave gennemløb, der er tilgængeligt for hvert storagemål. Uden netværkskommunikation kan filsletning ikke simuleres. Så lagringsbenchmarkresultaterne er ret sammenlignelige med klient-IO med striping deaktiveret. Når benchmarks køres, bliver filen spredt på tværs af fire lagerdestinationer, hvis standardstripingmønsteret anvendes.
Til test af forskellige storagedestinationer blev de små og mellemstore konfigurationer, der er beskrevet i bloggen om skalerbarheden af Dell BeeGFS-storageløsningen, anvendt. Begge konfigurationer har det samme antal metadatadestinationer konfigureret i RAID 1. De adskiller sig i RAID-konfigurationen af storagedestinationerne. Mens den lille opsætning har storage, mål konfigureret i RAID 0 på 6 drev, har den mellemstore konfiguration storagemålene konfigureret i RAID 10 af seks drev. De storagemål, der er konfigureret i konfigurationen Lille og Mellem, er angivet nedenfor:
| Tabel 1 Testbed-konfiguration | ||
|---|---|---|
| Konfiguration | Mellem – RAID 10 til storagedestinationer | Lille – RAID 0 til storagedestinationer |
| Antal metadatamål | 6 | 6 |
| Antal forekomster af metadatatjenesten | 6 | 6 |
| Antal storageservere | 5 | 2 |
| Antal storagemål | 22 | 10 |
| Antal storageservices pr. server | 4 | 4 |
| Antal lagerpladstjenester pr. NUMA-zone | 2 | 2 |
| Antal mål pr. forekomst af storageservice | 2 | 2 |
Bemærk: Ovenstående konfiguration af den mellemstore opsætning har kun til formål at teste overførselshastigheden for storagemål, der er konfigureret i forskellige RAID-konfigurationer ved hjælp af værktøjet StorageBench.
StorageBench-skrivebenchmark – i den lille konfiguration med storagemål konfigureret i RAID 0
Lagringsbenchmarket startes og overvåges med beegfs-ctl-værktøjet. Pakken beegfs-utils indeholder kommandolinjeværktøjet beegfs-ctl, som kan bruges til at køre benchmarket for storagemål. Følgende eksempel starter et skrivebenchmark på alle mål for alle BeeGFS-storageservere med en IO-blokstørrelse på 512 KB ved hjælp af 16 tråde pr. mål, som hver skriver 200 GB data til 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øbende: 10" output angiver, at der er i alt 10 lagermål konfigureret i systemet.
For at forespørge på benchmarkstatus/-resultater for alle mål kan følgende kommando køres:
[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
Tilføjelse af detaljeret til ovenstående kommando viser listen over alle mål og deres respektive gennemstrømning.
[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]
Slutning fra outputtet:
Den gennemsnitlige overførselshastighed pr. storagemål, der er konfigureret i RAID 0, er 5,02 GB/s.
StorageBench-skrivebenchmark – Medium konfiguration med storagemål konfigureret i RAID 10
Følgende eksempel starter et skrivebenchmark på alle mål for alle BeeGFS-storageservere med en IO-blokstørrelse på 512 KB ved hjælp af 16 tråde pr. mål, som hver skriver 200 Gb data til 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
Tilføjelse af detaljeret til ovenstående kommando viser listen over alle mål og deres respektive gennemstrømning.
[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]
Slutning fra outputtet:
Det gennemsnitlige gennemløb pr. storagemål er 3,29 GB/s.
Ud fra outputtet fra StorageBench-benchmarktestene, der er udført på to forskellige BeeGFS-opsætninger, en med Storage Targets konfigureret i RAID 0 og en anden med Storage Targets konfigureret i RAID 10, er skriveydeevnen bedre med storagedestinationerne konfigureret i RAID 0 i stedet for i RAID 10. Når kommandoen dd blev brugt til at skrive en 10G-fil med 1M blokstørrelse og "oflag=direct", var gennemsnittet ca. 5,1 GB/s for det lille system konfigureret i RAID 0, mens den gennemsnitlige overførselshastighed var omkring 3,4 GB/s for det mellemstore system konfigureret i RAID 10, hvilket kan sammenlignes med de resultater, der opnås ved hjælp af storagebench-værktøjet.
StorageBench – til at identificere defekte eller fejlkonfigurerede storagedestinationer
StorageBench blev kørt på den mellemstore konfiguration, der er beskrevet i annonceringsbloggen for at finde ud af, om der er nogen fejlkonfigurerede eller defekte storagedestinationer 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]
Fra ovenstående output er det tydeligt, at alle lagermål fungerer ensartet, og der er ingen defekte mål i systemet.
Konklusion og fremtidigt arbejde
Denne blog diskuterede nøglefunktionerne i BeeGFS og forklarede nytten af benchmarket for storagebench til at evaluere eller sammenligne ydeevnen for forskellige RAID-konfigurationer og også til at identificere, om nogen af lagringsmålene er defekte eller forkert konfigureret. Som en del af de næste trin udgiver vi senere en hvidbog med metadataydeevnen og IOR-ydeevnen og med yderligere detaljer om designovervejelser, justering og konfiguration.
Referencer
1) Dell EMC Ready Solutions til HPC BeeGFS Storage PowerEdge: Dell Ready Solutions til HPC BeeGFS med høj ydeevne
2) Skalerbarhed af Dell Ready Solutions til HPC BeeGFS Storage PowerEdge: Skalerbarhed af Dell Ready Solutions til HPC BeeGFS-storage
3) BeeGFS-dokumentation:
https://www.beegfs.io/wiki/4) Sådan tilsluttes to grænseflader på det samme undernet:
https://access.redhat.com/solutions/305645) PCI Express Direct Memory Access Referencedesign ved hjælp af ekstern hukommelse: https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760