PowerEdge: Особливості готових рішень Dell для зберігання HPC BeeGFS
Summary: Особливості готових рішень Dell для зберігання HPC BeeGFS
Instructions
Зміст
- Введення
- StorageBench - для порівняння продуктивності різних конфігурацій RAID
- StorageBench - Для виявлення дефектних або неправильно налаштованих цілей зберігання
- Висновок і подальша робота
Введення
У цьому блозі обговорюються основні особливості Dell Ready Solutions для зберігання HPC BeeGFS, про які було нещодавно оголошено. Це третій блог із серії, присвячений рішенню для високопродуктивного зберігання даних BeeGFS. У першому блозі було оголошено про вихід рішення. У другому блозі йшлося про масштабованість готових рішень Dell для зберігання HPC BeeGFS. Він надав детальну інформацію про базові конфігурації, гнучкі масштабовані конфігурації та виміряну послідовну продуктивність читання/запису різних конфігурацій, демонструючи, що масштабованість є лінійною щодо кількості серверів у рішенні. У поточному блозі висвітлюється використання "StorageBench", еталону інтегрованих сховищ BeeGFS.
BeeGFS — це файлова система з відкритим вихідним кодом, яку можна завантажити з www.beegfs.io. Це паралельна файлова система, яка розподіляє дані між кількома цілями зберігання. Це програмно-визначене сховище, яке відокремлює логічну файлову систему від базового обладнання зберігання, дозволяючи користувачеві визначати, як і де зберігаються дані. Програмне забезпечення файлової системи включає корпоративні функції, такі як висока доступність, дотримання квот і списки контролю доступу. Ключовими особливостями BeeGFS є простота використання, масштабованість та гнучкість. Простота його використання випливає з того, що всі компоненти на стороні сервера є демонами простору користувача, тоді як клієнт є модулем ядра, який не вимагає жодних патчів до самого ядра. Всі компоненти BeeGFS можна встановлювати та оновлювати без перезавантаження сервера. Таким чином, ми можемо додавати клієнтів і сервери до існуючої системи без будь-яких простоїв. Додаючи сервери та диски, продуктивність та ємність файлової системи можна масштабувати більше у блозі, посилання на який наведено тут. BeeGFS підтримує кілька дистрибутивів Linux і призначений для роботи з будь-якою локальною файловою системою, сумісною з POSIX. BeeGFS також підтримує запуск кількох екземплярів певної служби на одному сервері.
Готові рішення Dell для зберігання HPC BeeGFS використовують всі ключові функції файлової системи BeeGFS і розроблені для високої продуктивності. У рішенні використовуються роздільники PowerEdge R740xd для зберігання та обслуговування, а також обробки метаданих і даних. Кожен сервер PowerEdge R740xd має 24 твердотільні накопичувачі Intel P4600 NVMe ємністю 1,6 ТБ, які вважаються другим великим стрибком у технології приводів, причому твердотільні накопичувачі є першими. У середовищах HPC простір для подряпин часто може бути обмежуючим фактором. Він може бути занадто маленьким або занадто повільним. Сховище Dell EMC Ready Solutions for HPC BeeGFS Storage призначене для використання в якості скретч-рішення і обслуговує скретч-сховище з використанням файлової системи BeeGFS.
BeeGFS включає в себе два інтегрованих інструмента порівняльного аналізу, які можуть допомогти охарактеризувати або оцінити мережу або сховище: NetBench і StorageBench відповідно. При включеному режимі NetBench сервери відкидають отримані запити на запис замість запису даних. Аналогічно, у випадку запитів на читання, замість читання з базової файлової системи, клієнтам надсилаються лише буфери пам'яті. Режим NetBench призначений для перевірки пропускної здатності потокової передачі мережі незалежно від базових дисків. З іншого боку, StorageBench призначений для вимірювання потокової пропускної здатності базової файлової системи незалежно від продуктивності мережі. StorageBench – це бенчмарк цілей зберігання даних, який не використовує мережу. Команда storage-bench просто відправляє запит до цілей сховища, щоб почати запис/читання даних. Тим самим ми усуваємо вплив мережі. Результат, який ми отримуємо зі сховища, є найкращою продуктивністю, якої може досягти система, якщо продуктивність мережі ідеальна. Цей блог ілюструє, як StorageBench можна використовувати для порівняння продуктивності різних цілей зберігання даних і таким чином виявляти дефектні або неправильно налаштовані цілі.
StorageBench - для порівняння продуктивності різних конфігурацій RAID
StorageBench не використовує змонтовану файлову систему. Коли ми запускаємо StorageBench, на файл припадає лише одна ціль. Storagebench створює директорію на кожному об'єкті зберігання в системі, де створюються тестові файли, що дорівнює кількості тестових потоків. Дані передаються безпосередньо на нього, щоб показати низьку пропускну здатність, доступну для кожного цільового сховища. Без будь-якого мережевого зв'язку неможливо імітувати чергування файлів. Таким чином, результати бенчмарку сховища досить можна порівняти з введенням вводу-виводу клієнта з відключеним чергуванням. Коли виконуються тести, файл розподіляється по чотирьох цілях зберігання, якщо використовується стандартний шаблон чергування.
Для тестування різних цілей зберігання використовувалися малі та середні конфігурації, описані в блозі про масштабованість рішення для зберігання Dell BeeGFS. Обидві конфігурації мають однакову кількість цілей метаданих, налаштованих у RAID 1. Вони відрізняються конфігурацією RAID цілей зберігання. У той час як у невеликій конфігурації є сховище, цілі, налаштовані в RAID 0 з 6 дисків, у середній конфігурації цілі сховища налаштовані в RAID 10 з шести дисків. Цілі сховища, налаштовані для малих і середніх налаштувань, наведено в таблиці нижче:
| Таблиця 1 Конфігурація випробувального стенду | ||
|---|---|---|
| Конфігурація | Середній - RAID 10 для цілей зберігання | Малий - RAID 0 для цілей зберігання |
| Кількість цілей метаданих | 6 | 6 |
| Кількість екземплярів сервісу метаданих | 6 | 6 |
| Кількість серверів зберігання даних | 5 | 2 |
| Кількість цілей зберігання | 22 | 10 |
| Кількість сервісів зберігання даних на сервер | 4 | 4 |
| Кількість сервісів зберігання в зоні NUMA | 2 | 2 |
| Кількість цілей на один екземпляр служби зберігання даних | 2 | 2 |
Примітка: Наведена вище конфігурація середовища призначена лише для перевірки пропускної здатності цілей зберігання, налаштованих у різних конфігураціях RAID за допомогою інструменту StorageBench.
Benchmark запису StorageBench - на невеликій конфігурації з цілями сховища, налаштованими в RAID 0
Бенчмарк сховища запускається та контролюється за допомогою інструменту beegfs-ctl. Пакет beegfs-utils надає інструмент командного рядка beegfs-ctl, який може бути використаний для запуску тесту цілей зберігання. Наступний приклад запускає тест запису на всіх цілях всіх серверів зберігання даних BeeGFS з розміром блоку вводу-виводу 512 КБ, використовуючи 16 потоків на ціль, кожен з яких запише 200 Гб даних у свій власний файл.
[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
Програма «Біг: 10-дюймовий вихід вказує на те, що всього в системі налаштовано 10 цілей зберігання.
Щоб запросити статус/результати тесту всіх цілей, можна виконати наступну команду:
[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
Додавання докладного слова до наведеної вище команди показує список усіх цілей та їх відповідну пропускну здатність.
[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]
Висновок з вихідних даних:
Середня пропускна здатність на ціль сховища, налаштовану в RAID 0, становить 5,02 ГБ/с.
Benchmark StorageBench Write - на середній конфігурації з цілями зберігання, налаштованими в RAID 10
Наступний приклад запускає тест запису на всіх цільових серверах зберігання даних BeeGFS з розміром блоку вводу-виводу 512 КБ, використовуючи 16 потоків на ціль, кожен з яких записує 200 Гб даних у свій власний файл.
[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
Додавання докладного слова до наведеної вище команди показує список усіх цілей та їх відповідну пропускну здатність.
[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]
Висновок з вихідних даних:
Середня пропускна здатність на цільовий обсяг сховища становить 3,29 ГБ/с.
З результатів тестів StorageBench, проведених на двох різних конфігураціях BeeGFS, одна з цілями сховища, налаштованими в RAID 0, а інша з цілями зберігання, налаштованими в RAID 10, очевидно, що продуктивність запису краща з цілями зберігання, налаштованими в RAID 0, а не в RAID 10. Коли команда dd використовувалася для запису файлу 10G з розміром блоку 1M і "oflag=direct", середнє значення становило близько 5,1 ГБ/с для невеликої системи, налаштованої в RAID 0, тоді як середня пропускна здатність становила близько 3,4 ГБ/с для середньої системи, налаштованої в RAID 10, що можна порівняти з результатами, отриманими за допомогою інструменту storagebench.
StorageBench - Для виявлення дефектних або неправильно налаштованих цілей зберігання
StorageBench був запущений на середній конфігурації, описаної в блозі анонсів , щоб з'ясувати, чи немає в системі неправильно налаштованих або дефектних цілей зберігання.
[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]
З наведеного вище результату очевидно, що всі цілі зберігання працюють однаково і в системі немає дефектних цілей.
Висновок і подальша робота
У цьому блозі обговорювалися ключові особливості BeeGFS і пояснювалася корисність бенчмарку сховища для оцінки або порівняння продуктивності різних конфігурацій RAID, а також для виявлення того, чи є якісь цілі зберігання дефектними або неправильно налаштованими. У рамках наступних кроків ми пізніше опублікуємо офіційний документ із продуктивністю метаданих та продуктивністю IOR, а також із додатковими подробицями про міркування дизайну, налаштування та конфігурацію.
Посилання
1) Готові рішення Dell EMC для зберігання HPC BeeGFS PowerEdge: Готові рішення Dell для високопродуктивних сховищ
HPC BeeGFS2) Масштабованість готових рішень Dell для зберігання HPC BeeGFS PowerEdge: Масштабованість готових рішень Dell для зберігання
HPC BeeGFS3) Документація BeeGFS:
https://www.beegfs.io/wiki/4) Як підключити два інтерфейси в одній підмережі:
https://access.redhat.com/solutions/305645) Еталонний дизайн прямого доступу до пам'яті PCI Express з використанням зовнішньої пам'яті: https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760