PowerEdge. Функции готовых решений Dell для хранилища НРС BeeGFS
Summary: Функции готовых решений Dell для хранилища НРС BeeGFS
Instructions
Содержание
- Введение
- StorageBench — для сравнения производительности различных конфигураций RAID
- StorageBench — для выявления неисправных или неправильно настроенных целевых систем хранения
- Выводы и планы на будущее
Введение
В этом блоге обсуждаются основные функции недавно анонсированных решений Dell Ready Solutions для хранилищ HPC BeeGFS. Это третий блог из серии, посвященной решению BeeGFS для высокопроизводительного хранения. В первом блоге было объявлено о выпуске решения. Во втором блоге обсуждалась масштабируемость готовых решений Dell для хранилищ НРС BeeGFS. В нем были представлены подробные сведения о базовых конфигурациях, гибких масштабируемых конфигурациях и измеренной производительности последовательного чтения и записи для различных конфигураций, что свидетельствует о линейной масштабируемости в зависимости от количества серверов в решении. В текущем блоге рассказывается об использовании «StorageBench», эталонного теста BeeGFS для интегрированных целевых показателей хранения.
BeeGFS — это файловая система с открытым исходным кодом, которую можно загрузить с веб-сайта www.beegfs.io. Это параллельная файловая система, которая распределяет данные между несколькими целевыми устройствами хранения. Это программно-определяемое хранилище, которое отделяет логическую файловую систему от базового оборудования хранения, позволяя пользователю определять, как и где будут храниться данные. Программное обеспечение файловой системы включает в себя функции корпоративного класса, такие как высокая доступность, применение квот и списки контроля доступа. Ключевыми особенностями BeeGFS являются простота использования, масштабируемость и гибкость. Простота его использования обусловлена тем, что все серверные компоненты являются демонами пользовательского пространства, в то время как клиент является модулем ядра, который не требует каких-либо исправлений для самого ядра. Все компоненты BeeGFS можно установить и обновить без перезагрузки сервера. Таким образом, мы можем добавлять клиенты и серверы в существующую систему без каких-либо простоев. Добавляя серверы и накопители, можно еще больше масштабировать производительность и емкость файловой системы, о чем можно прочитать в блоге, ссылка на который приведена здесь. BeeGFS поддерживает несколько дистрибутивов Linux и предназначена для работы с любой локальной файловой системой, совместимой с POSIX. BeeGFS также поддерживает запуск нескольких экземпляров одной службы на одном сервере.
Готовые решения Dell для хранилища BeeGFS в хранилищах HPC используют все ключевые функции файловой системы BeeGFS и созданы для обеспечения высокой производительности. В решении используются серверы PowerEdge R740xd для хранения, обслуживания и/или обработки метаданных и данных. Каждый сервер PowerEdge R740xd оснащен 24 твердотельными накопителями Intel P4600 NVMe емкостью 1,6 Тбайт. Эти твердотельные накопители считаются вторым значительным прорывом в технологии накопителей после первого. В средах HPC временное пространство часто может быть ограничивающим фактором. Оно может быть слишком маленьким или слишком медленным. Готовые решения Dell EMC для хранилища HPC BeeGFS предназначены для использования в качестве временного решения и обслуживают временное хранилище, используя файловую систему 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.
Эталонный тест записи 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 Гбайт/с.
Эталонный тест записи StorageBench — в средней конфигурации с целевыми устройствами хранения данных, настроенными в 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 использовалась для записи файла размером 10 Гбит/с с размером блока 1 Мбайт и "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 для систем хранения НРС BeeGFS PowerEdge: Готовые решения Dell для высокопроизводительного хранилища
НРС BeeGFS2) Масштабируемость готовых решений Dell для хранилищ НРС BeeGFS PowerEdge: Масштабируемость готовых решений Dell для хранилищ
НРС 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