Введение
Файловая
система описывает метод хранения информации на жестком диске. Примерами
файловых систем являются ext2, ext3, ReiserFS и JFS. General Parallel
File System (GPFS) - это еще один тип файловой системы, доступной для
кластерной среды. Цель GPFS - обеспечить лучшую производительность и
высокую отказоустойчивость. В данной статье рассматривается простой
пример реализации GPFS. Для упрощения вы будете использовать системы с
двумя жесткими дисками - первый диск используется для Linux®, второй
оставлен нетронутым (в "сыром" формате).
Аппаратное и программное обеспечение, конфигурация
Необходимое аппаратное и программное обеспечение перечислено ниже.
На рисунке 1 изображена конфигурация системы.
- eServer™ x336
- Red Hat Enterprise Linux Version 4.0 Advanced Server with Update 2
- GPFS Version 2.3
- GPFS Version 2.3.0.9 Fix
Рисунок 1. Примерная конфигурация
Установка и настройка
Перед началом работы обратите внимание на следующие допущения:
- На всех машинах установлена операционная система Red Hat Enterprise Linux AS (например, RHEL4 AS with Update 2).
- Файл /etc/hosts обновлен на всех узлах.
- SSH настроен таким образом, что пользователь root может войти в любую систему без указания пароля.
- Узлы
gpfs1.my.com и gpfs2.my.com работают в качестве GPFS-серверов и
предлагают /dev/sdb для хранилища. Узел gpfs3.my.com работает как
GPFS-клиент.
- Код GPFS доступен в tar-формате в каталоге /dump.
- Шаги 1, 2, 3, 4 и 5 необходимо выполнить на всех узлах (gpfs1.my.com, gpfs2.my.com и gpfs3.my.com).
- Шаги 6 и 7 необходимо выполнить только на gpfs1.my.com, поскольку на нем установлен gpfs.gpl-2.3.0-9.noarch.rpm.
- Если
вам доступен код в tar-формате, извлеките GPFS-файлы, либо смонтируйте
CD-ROM или DVD, на которых есть RPM-файлы GPFS, следующим образом:
#cd /dump #tar zxvf gpfs_code.tar.gz |
На рисунке 2 показана часть извлеченного содержимого:
Рисунок 2. Cодержимое GPFS
- Извлеките RPM-файлы GPFS следующим образом:
#./gpfs_install-2.3.0-0_i386 --dir /dump |
Эта команда отобразит сообщение "License". Подтвердите его. Для скрытия лицензионного сообщения используйте параметр --silent .
Рисунок 3. Извлечение GPFS
После извлечения вы должны увидеть:
Рисунок 4. Извлеченные файлы
- Для установки GPFS используйте следующие команды:
#cd /dump #rpm -ivh gpfs.msg.en_US-2.3.0-0.noarch.rpm gpfs.base-2.3.0-0.i386.rpm gpfs.docs-2.3.0-0.noarch.rpm gpfs.gpl-2.3.0-0.noarch.rpm OR rpm -ivh *.rpm |
Рисунок 5. Установка GPFS
Установка gpfs.gpl-2.3.0-0.noarch.rpm необходима только на gpfs1.my.com.
- После установки RPM-файлов GPFS будут доступны показанные ниже бинарные каталоги.
Рисунок 6. Бинарные каталоги
- Для установки обновления GPFS используйте следующие команды:
#tar zxvf gpfs-2.3.0-9.i386.update.tar.gz #rpm -Uvh gpfs.msg.en_US-2.3.0-9.noarch.rpm gpfs.base-2.3.0-9.i386.rpm gpfs.docs-2.3.0-9.noarch.rpm gpfs.gpl-2.3.0-9.noarch.rpm OR rpm -Uvh *.rpm |
Рисунок 7. Установка обновления GPFS
Обновление gpfs.gpl-2.3.0-9.noarch.rpm требуется только на gpfs1.my.com.
- Теперь
вы готовы к компоновке GPL-модулей GPFS на выбранном для данной
процедуры узле (gpfs1.my.com). Вы сделаете эту процедуру только на
одном узле. После этого вы распространите сгенерированные бинарные
файлы на другие узлы (gpfs2.my.com и gpfs3.my.com).
#cd /usr/lpp/mmfs/src/config #cp site.mcr.proto site.mcr #vi site.mcr |
Обратитесь к файлу README, расположенному в каталоге /usr/lpp/mmfs/src, для просмотра желательных изменений.
Рисунок 8. GPL-модули GPFS
В
приведенном выше примере LINUX_DISTRIBUTION, LINUX_DISTRIBUTION_LEVEL и
LINUX_KERNEL_VERSION были специально обновлены для соответствия системе
RHEL4 Update 2.
#cd /usr/lpp/mmfs/src #export SHARKCLONEROOT=/usr/lpp/mmfs/src #make World #make InstallImages |
Рисунок 9. Установка бинарных образов
#cd /usr/lpp/mmfs/bin #scp mmfslinux mmfs26 lxtrace dumpconv tracedev gpfs2:/usr/lpp/mmfs/bin /* Скопируйте на все остальные узлы */ |
- Теперь вы готовы создать GPFS-кластер и настроить Network Storage Device (NSD).
- Запустите демон GPFS на всех узлах, используя команду:
#/usr/lpp/mmfs/bin/mmstartup -a |
Рисунок 10. GPFS-демоны
- Создайте файл, который идентифицирует узлы, участвующие в GPFS-кластере. Подробная информация приведена в руководстве "Конфигурирование и настройка GPFS для цифровых систем хранения", ссылка на которую приведена в разделе "Ресурсы".
Рисунок 11. GPFS-узлы
- Создайте отдельный файл, содержащий дисковую информацию для создания NSD. Подробная информация приведена в руководстве "Конфигурирование и настройка GPFS для цифровых систем хранения", ссылка на которую приведена в разделе "Ресурсы".
Рисунок 12. GPFS-диски
- Создайте GPFS-кластер, используя команду:
#/usr/lpp/mmfs/bin/mmcrcluster -p gpfs1.my.com -s gpfs2.my.com -n /dump/gpfs.nodes -r /usr/bin/ssh -R /usr/bin/scp |
Рисунок 13. GPFS-кластер
Отобразите детальную информацию о GPFS-кластере, используя команду:
/usr/lpp/mmfs/bin/mmlscluster |
Рисунок 14. Подробная информация о GPFS
- Создайте NSD, используя:
#/usr/lpp/mmfs/bin/mmcrnsd -F /dump/gpfs.disks -v yes |
Рисунок 15. Создание NSD
Отобразите детальную информацию о NSD, используя команду:
/usr/lpp/mmfs/bin/mmlsnsd |
Рисунок 16. Подробная информация о NSD
Содержимое /dump/gpfs.disks меняется после выполнения команды mmcrnsd .
Рисунок 17. Измененные GPFS-диски
- Создайте файловую систему GPFS, используя:
#/usr/lpp/mmfs/bin/mmcrfs /gpfs gpfsdev -F /dump/gpfs.disks -B 1024K -m 1 -M 2 -r 1 -R 2 |
Рисунок 18. Создание файловой системы GPFS
Приведенная
выше команда создает файловую систему GPFS (например, 286GB) и
монтирует ее в папке /gpfs. Она также создает запись в файле /etc/fstab
на всех узлах, для того чтобы файловая система могла быть автоматически
смонтирована после перезагрузки.
Рисунок 19. Файл fstab
- Теперь ваша GPFS-система готова к использованию.
| Процесс деинсталляции
Для деинсталляции RPM-файлов GPFS выполните следующие команды:
#rpm -e gpfs.msg.en_US gpfs.docs gpfs.base /* gpfs2.my.com и gpfs3.my.com */ #rpm -e gpfs.msg.en_US gpfs.docs gpfs.base gpfs.gpl /* gpfs1.my.com */ #rm -rf /usr/lpp/mmfs /* gpfs1.my.com, gpfs2.my.com и gpfs3.my.com */ |
Об авторе | | | Хэриш
Чаухан (Harish Chauhan) работает в IBM с 1998. Из последних семи лет в
IBM он пять лет работал в India Research Lab и более полутора лет - в
IBM T.J.Watson Research Center. Хэриш в настоящее время руководит Linux
Center of Competency в Бангалоре, Индия. Вы можете связаться с ним по
адресу hchauhan@in.ibm.com. |
Источник: http://www.ibm.com/developerworks/ru/library/es-gpfs/index.html |