PowerEdge: Skalowalność rozwiązań Dell Ready dla pamięci masowej HPC BeeGFS
Summary: Skalowanie rozwiązania wysokowydajnej pamięci masowej Dell BeeGFS pod względem pojemności i/lub wydajności.
Instructions
Spis treści
- Wprowadzenie
- Konfiguracje bazowe
- Obliczanie pojemności użytkowej BeeGFS
- Skalowalne konfiguracje
- Charakterystyka wydajności
- Wnioski i przyszłe prace
Wprowadzenie
Ten wpis na blogu omawia skalowalność niedawno zapowiedzianych rozwiązań Ready Solutions firmy Dell dla pamięci masowej HPC BeeGFS. Architektura BeeGFS obejmuje cztery główne usługi: usługę zarządzania, usługę metadanych, usługę pamięci masowej i usługę klienta. Możliwe jest uruchomienie dowolnej kombinacji tych czterech głównych usług, także wszystkich, na tym samym serwerze, ponieważ role i sprzęt nie są ściśle zintegrowane w przypadku BeeGFS. W „rozwiązaniu hiperkonwergentnym” wszystkie cztery usługi działają na tym samym serwerze. Ta konfiguracja nie jest zalecana w przypadku środowisk, w których krytyczne znaczenie ma wydajność, ponieważ aplikacje klienckie zwykle zużywają zasoby, co może mieć wpływ na wydajność usług pamięci masowej. Rozwiązanie firmy Dell wykorzystuje dedykowane serwery pamięci masowej oraz serwer metadanych i pamięci masowej (o podwójnym przeznaczeniu), aby zapewnić wydajne, skalowalne rozwiązanie pamięci masowej. Istnieje możliwość skalowania systemu poprzez dodanie dodatkowych serwerów pamięci masowej do istniejącego systemu. W tym wpisie na blogu przedstawiamy konfiguracje z różną liczbą serwerów pamięci masowej oraz wydajność, jakiej można oczekiwać z takimi konfiguracjami.
Konfiguracje bazowe
Rozwiązanie pamięci masowej BeeGFS, które zostało zaprojektowane w celu zapewnienia wydajnego systemu plików tymczasowych, wykorzystuje następujące składniki sprzętowe:
- Serwer zarządzania
- R640, dwa procesory Intel Xeon Gold 5218 2,3 GHz, 16 rdzeni, 96 GB (12 modułów RDIMM 8 GB 2666 MT/s), 6 dysków SAS 300 GB 15 tys. obr./min, H740P
- Serwery metadanych i pamięci masowej
- R740xd, 2 procesory Intel Xeon Platinum 8268 przy 2,90 GHz, 24 rdzenie, 384 GB (12 modułów RDIMM 32 GB 2933 MT/s)
- Karta BOSS z 2 dyskami SSD SATA M.2 240 GB w macierzy RAID 1 dla systemu operacyjnego
- 24 dyski Intel 1,6 TB, NVMe, Express Flash mieszanego użycia, dyski SFF 2,5”, programowa macierz RAID
Na serwerze zarządzania działa usługa monitorowania BeeGFS. Serwer metadanych używa 12 dysków w strefie NUMA 0 do hostowania obiektów docelowych metadanych (MDT), podczas gdy pozostałe 12 dysków w strefie NUMA 1 jest używanych do hostowania obiektów docelowych pamięci masowej (ST). Dedykowany serwer metadanych nie jest używany, ponieważ wymagania dotyczące pojemności pamięci masowej metadanych BeeGFS są niewielkie. Obiekty docelowe metadanych oraz pamięci masowej i usługi są odizolowane w oddzielnych węzłach NUMA, dzięki czemu można w znacznym stopniu oddzielić obciążenia robocze. Serwery pamięci masowej użyte w tej konfiguracji mają trzy usługi pamięci masowej działające na strefę NUMA, łącznie sześć na serwer. Aby uzyskać więcej informacji, zobacz blog z ogłoszeniem. Rysunek 1 przedstawia dwie konfiguracje bazowe, które zostały przetestowane i zweryfikowane w laboratorium innowacji HPC i AI firmy Dell EMC.

Rysunek 1. Konfiguracje bazowe
Konfiguracja mała składa się z trzech serwerów R740xd. Ma 15 obiektów docelowych pamięci masowej. Konfiguracja średnia obejmuje 6 serwerów R740xd i ma 33 obiekty docelowe pamięci masowej. Użytkownik może rozpocząć pracę od konfiguracji „małej” lub „średniej” i w razie potrzeby dodawać serwery pamięci masowej lub metadanych, aby zwiększyć odpowiednio pamięć masową i ogólną wydajność lub liczbę plików i wydajność metadanych. W tabeli 1 przedstawiono dane dotyczące wydajności konfiguracji bazowych, które zostały gruntownie przetestowane i zweryfikowane w laboratorium innowacji HPC i AI firmy Dell.
| Base Configuration | Small | Średnia | |
|---|---|---|---|
| Całkowita liczba U (MDS+SS) | 6U | 12U | |
| Liczba dedykowanych serwerów pamięci masowej | 2 | 5 | |
| Liczba dysków NVMe do przechowywania danych | 60 | 132 | |
| Szacowana pojemność użytkowa | 1,6 TB | 86 TiB | 190 TiB |
| 3,2 TB | 173 TiB | 380 TiB | |
| 6,4 TB | 346 TiB | 761 TiB | |
| Szczytowy odczyt sekwencyjny | 60,1 GB/s | 132,4 GB/s | |
| Szczytowy zapis sekwencyjny | 57,7 GB/s | 120,7 GB/s | |
| Odczyt losowy | 1,80 mln IOPS | 3,54 mln IOPS | |
| Zapis losowy | 1,84 mln IOPS | 3,59 mln IOPS | |
Tabela 1: Szczegóły dotyczące pojemności i wydajności w konfiguracjach bazowych
Obliczanie pojemności użytkowej BeeGFS
Szacowana pojemność użytkowa jest obliczana w TiB (ponieważ większość narzędzi pokazuje pojemność użytkową w jednostkach binarnych) przy użyciu następującego wzoru:
BeeGFS Usable Space in TiB= (0.99* # of Drives* size in TB * (10^12/2^40)
W powyższym wzorze 0,99 jest współczynnikiem otrzymanym przy konserwatywnym założeniu, że istnieje 1% narzutu z systemu plików. Aby uzyskać liczbę dysków pamięci masowej, uwzględniono również 12 dysków z MDS. Wynika to z faktu, że w MDS 12 dysków w strefie NUMA 0 jest używanych na metadane, a 12 dysków w strefie NUMA 1 jest używanych na pamięć masową. Ostatni czynnik we wzorze 10^12/2^40 ma na celu przeliczenie pojemności użytkowej z TB na TiB.
Skalowalne konfiguracje
Rozwiązanie pamięci masowej BeeGFS o wysokiej wydajności zostało zaprojektowane z myślą o elastyczności, umożliwiając łatwe i bezproblemowe skalowanie wydajności i/lub pojemności przez dodawanie kolejnych serwerów, jak pokazano poniżej:
Rysunek 2: Przykłady konfiguracji skalowanych
Część stosu dotycząca metadanych pozostaje taka sama dla wszystkich powyższych konfiguracji opisanych w tym wpisie na blogu. Wynika to z faktu, że wymagania dotyczące pojemności pamięci masowej metadanych BeeGFS wynoszą zwykle od 0,5% do 1% całkowitej pojemności pamięci masowej. Jednak tak naprawdę zależy to od liczby katalogów i plików w systemie plików. Z reguły użytkownik może dodać dodatkowy serwer metadanych, gdy procentowy udział pojemności na metadane w pamięci masowej spadnie poniżej 1%. W tabeli 2 przedstawiono dane dotyczące wydajności różnych elastycznych konfiguracji rozwiązania pamięci masowej BeeGFS.
| Konfiguracja | Small | Mała +1 | Mała +2 | Średnia | Średnia +1 | |
|---|---|---|---|---|---|---|
| Całkowita liczba U (MDS+SS) | 6U | 8U | 10U | 12U | 14U | |
| Liczba dedykowanych serwerów pamięci masowej | 2 | 3 | 4 | 5 | 6 | |
| Liczba dysków NVMe do przechowywania danych | 60 | 84 | 108 | 132 | 156 | |
| Szacowana pojemność użytkowa | 1,6 TB | 86 TiB | 121 TiB | 156 TiB | 190 TiB | 225 TiB |
| 3,2 TB | 173 TiB | 242 TiB | 311 TiB | 380 TiB | 449 TiB | |
| 6,4 TB | 346 TiB | 484 TiB | 622 TiB | 761 TiB | 898 TiB | |
| Szczytowy odczyt sekwencyjny | 60,1 GB/s | 83,3 GB/s | 105,2 GB/s | 132,4 GB/s | 152,9 GB/s | |
| Szczytowy zapis sekwencyjny | 57,7 GB/s | 80,3 GB/s | 99,8 GB/s | 120,7 GB/s | 139,9 GB/s | |
Tabela 2. Szczegółowe informacje o pojemności i wydajności skalowanych konfiguracji
Charakterystyka wydajności
Wydajność różnych konfiguracji została przetestowana poprzez utworzenie pul pamięci masowej. Mała konfiguracja obejmuje 15 obiektów docelowych pamięci masowej, a każdy dodatkowy serwer pamięci masowej dodaje sześć dodatkowych obiektów docelowych pamięci masowej. W celu przetestowania wydajności różnych konfiguracji utworzono pule pamięci masowej od 15 do 39 obiektów docelowych pamięci masowej (przyrosty wynoszące sześć dla konfiguracji małych, małych+1, małych+2, średnich, średnich+1). Dla każdej z tych pul uruchomiono trzy iteracje testu porównawczego IOzone, każda z jednym do 1024 wątków (z potęgami dwa). Przyjęta metodologia testowania jest taka sama, jak opisana na blogu ogłoszenia. Na rysunkach 3 i 4 przedstawiono wydajność odpowiednio zapisu i odczytu skalowalnych konfiguracji, z maksymalną wydajnością każdej konfiguracji zaznaczoną w celach informacyjnych:

Rysunek 3. Wydajność zapisu skalowalnych konfiguracji.
Rysunek 4. Wydajność odczytu skalowalnych konfiguracji.
Uwaga:
Pule pamięci masowej, o których mowa, zostały utworzone wyłącznie w celu scharakteryzowania wydajności różnych konfiguracji. Podczas oceny wydajności konfiguracji średniej opisanej szczegółowo na blogu ogłoszenia wszystkie 33 obiekty docelowe znajdowały się tylko w „puli domyślnej”. Dane wyjściowe beegfs-ctl --liststoragepools polecenia podanego poniżej pokazują przypisanie obiektów docelowych pamięci masowej:
# beegfs-ctl --liststoragepools Pool ID Pool Description Targets Buddy Groups ======= ================== ============================ ============================ 1 Default 1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30, 31,32,33
Wnioski i przyszłe prace
W tym wpisie na blogu omówiono skalowalność rozwiązań Dell Ready dla pamięci masowej HPC BeeGFS i zwrócono uwagę na wydajność sekwencyjnego odczytu i zapisu w różnych konfiguracjach. Zapoznaj się z trzecią częścią tej serii wpisów na blogu, w której omówione zostaną dodatkowe funkcje BeeGFS i przedstawione zostaną zastosowania „StorageBench”, wbudowanego testu porównawczego obiektów docelowych pamięci masowej BeeGFS. W ramach kolejnych kroków opublikujemy później białą księgę z wydajnością dotyczącą metadanych, oceną wydajności IOR N-1 oraz dodatkowymi szczegółami dotyczącymi kwestii projektowych, dopasowywania i konfiguracji.
Odniesienia
[1] Dell Ready Solutions for HPC BeeGFS Storage: https://www.dell.com/support/article/sln319381/
[2] Dokumentacja BeeGFS: https://www.beegfs.io/wiki/
[3] Jak podłączyć dwa interfejsy w tej samej podsieci: https://access.redhat.com/solutions/30564
[4] Projekt referencyjny PCI Express Direct Memory Access przy użyciu pamięci zewnętrznej: https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760