GPFS (General Parallel File System)
Последнее изменение этой страницы: 21:12, 22 мая 2016.
GPFS (англ. General Parallel File System - рус. Общая параллельная файловая система) — высокопроизводительная кластерная файловая система, разработанная IBM. GPFS отличается от других кластерных файловых систем возможностью одновременного высокоскоростного доступа к файлам для приложений, выполняющихся на нескольких узлах кластера под управлением операционных систем AIX 5L, Linux или гетерогенного кластера из узлов на AIX, Linux и Windows. Помимо возможностей хранения данных, GPFS предоставляет инструменты для управления и администрирования GPFS-кластера и позволяет осуществлять совместный доступ к файловым системам с удалённых GPFS-кластеров.
Содержание
История появления
GPFS изначально разрабатывалась как Tiger Shark file system в 1993 году в исследовательском центре IBM Almaden Research Center. Первый коммерческий релиз GPFS состоялся в 1998 году. GPFS изначально проектировалась для поддержки мультимедиа-приложений, требовательных к полосе пропускания. Такой дизайн хорошо подходит для научных вычислений. Сегодня GPFS используется на многих суперкомпьютерах из списка «500 Самых Мощных». С самого начала GPFS была успешно использована для множества коммерческих приложений.
Причины появления
Традиционные файловые среды были в основном разработаны для среды одного сервера, так, например, популярная файловая система в Linux/ Unix операционных системах - NFS – в высокопроизводительных вычислениях страдает тем, что в данный момент запись с файлом может работать только один из вычислительных узлов (блокирую весь файл), а все остальные должны ждать освобождения очереди, чтобы записать свою порцию информации. При этом все остальные вычислительные узлы простаивают, не выполняя никаких полезных действий. Возникает вопрос: « А если этих узлов десятки или сотни?». Можно сделать вывод, что простой может оказаться настолько существенным, что поставит под вопрос эффективность такого кластера, который, к слову, стоит весьма не дешево. Многие разработчики задумались о необходимости создания новых специализированных файловых систем для вычислительных многоузловых кластеров, которые предоставляли бы возможность кластерным приложениям параллельный, быстрый, и равнозначный доступ к общим данным всем узлам одновременно. Одной из первых такого рода систем стала система IBM General Parallel File System 1998-го года.
Технология и принцип работы
Функционально узлы в файловой системе GPFS делятся:
- узлы, которым необходим доступ к данным – обычные GPFS узлы.
- узлы «доступа» Network Shared disk (NSD).
Сегодня наиболее распространенная конфигурация данной системы представляет из себя:
Два или более Узла Доступа, соединенных по IP со всеми вычислительными узлами с одной стороны и по «Fibre-channel» с несколькими системами хранения - с другой. Причем каждый Узел Доступа может задействовать два или более порта «Fibre-channel» и два и более порта IP для увеличения пропускной способности каналов. При использовании нескольких Узлов Доступа отказ одного из них не приведёт к потере доступа к данным файловой системы, доступ будет обеспечиваться через оставшиеся Узлы. IP каналы могут быть как и по Ethernet, так и поверх Infiniband и Myrinet сетей. Начиная с версии 3.2, GPFS поддерживает родной протокол Infiniband – RDMA, то есть IP пакеты больше не нужно инкапсулировать в пакеты Infiniband. Сеть доступа к данным может быть как совмещенной с сетью интерконнекта всех вычислительных узлов ( используемой для счета), так и раздельной ( для максимальной производительности).
Большее количество операций ввода/вывода в GPFS обеспечивается за счет разбиение данных файлов блоки ( stripes), которые варьируется в диапазоне от 16 Кбайт до 1 Мбайт, и разнесения их по различным массивам ( RAID) и системам хранения, в результате чего операции чтения и записи блоков происходят в параллель – до нескольких тысяч дисков в самых больших дисках в самых больших установках GPFS, что позволяет при чтении/записи даже одного файла получить суммарную производительность всех дисковых систем, входящих в эту файловую систему GPFS.
Любая файловая система состоит минимум из двух из двух составляющих:
- Непосредственно самих данных
- Информации о размещении этих данных на системе хранения (метаданные)
GPFS обеспечивает полностью параллельный доступ как к данным, так и к метаданным. Иными словами каждый Узел Доступа, имея доступ к каждому разделу в каждой системе хранения, может работать с разными частями данных и метаданных параллельно. Стоит отметить, что нет специализации серверов на работу с одним типом данных – все сервера работают с одним типом данных, что обеспечивает максимальное масштабирование, отказоустойчивость и производительность.
Параллельные операции чтения и записи в файловой системе, осуществляемые множеством узлов, должны быть соответствующим образом синхронизированы, чтобы данные и методанные не были пов
реждены. GPFS использует специальные протоколы распределения блокировок для синхронизации доступа к раздельным, которые обеспечивают целостность данных, с одной стороны, и высокую пропускную способность файловой системы - с другой. Из этого следует, что при работе с файлами на запись GPFS может блокировать часть файла на уровне для одного узла, а другие части – для других узлов, тем самым обеспечивая возможность многим узлам работать конкретно с одним файлом параллельно как на запись, так и на чтение.
Файловая система GPFS имеет встроенный механизм репликации данных в дополнение к RAID - массивам дисковых систем для повышения отказоустойчивости. Когда он включен, то GPFS резервирует место для каждого блока данных и метаданных на двух разных дисковых системах.
Процесс масштабирования также важен не только для обычных файловых операций , но и для операций по обслуживания самой файловой системы, особенно, если она большого объема. GPFS позволяет менять размеры файловой системы (замена дисковых систем). Благодаря возможности перераспределения « на лету» полезных данных у администратора системы. Администратор сам регулирует количество вовлечённых Узлов Доступа, при этом сохраняя общую производительность файловой системы для пользователей.
Полезной особенностью является объедение нескольких GPFS-систем в одну для ситуаций когда:
- Кластеры могут монтировать файловые системы, принадлежащие и управляемые другими кластерами.
- Кластеры могут разделять данные и таким образом вычислительные ресурсы могут быть использованы более эффективно.
- Дисковые подсистемы могут быть объединены в группы в зависимости от их производительности.
- Когда требуется разделить вычислительные площадки и площадки данных.
- Объединение множества кластеров в единый суперкластер для решения более сложной задачи.
GPFS не требует ни каких изменений со стороны программного обеспечения – используется станд артный доступ к файлам. GPFS поддерживает операционные системы RedHat, SuSe, AIX.
Установка
Процесс установки происходит следующим образом:
Итог
Благодаря огромному количеству возможностей, которые предоставляет GPFS, система не требует никаких изменений, она нашла себе применение не только как файловая система для высокопроизводительных кластерных систем, но и для решения таких бизнес-задач, как Oracle RAC, SAP Business, видео-серверы, где необходима высокая производительность дисковой подсистемы.
ISSN 2542-0356
Следуй за Полисом
Оставайся в курсе последних событий
Лицензия
Если не указано иное, содержание этой страницы доступно по лицензии Creative Commons «Attribution-NonCommercial-NoDerivatives» 4.0, а примеры кода – по лицензии Apache 2.0. Подробнее см. Условия использования.