Lustre FS. Настраиваем и используем кластерную систему в промышленных масштабах. Часть 1::Журнал СА 11.2008
www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
1001 и 1 книга  
19.03.2018г.
Просмотров: 6828
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7360
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4609
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3159
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3964
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3966
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6469
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3311
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3591
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7450
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10814
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12525
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14231
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9263
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7210
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5518
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4749
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3567
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3275
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3508
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3161
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Lustre FS. Настраиваем и используем кластерную систему в промышленных масштабах. Часть 1

Архив номеров / 2008 / Выпуск №11 (72) / Lustre FS. Настраиваем и используем кластерную систему в промышленных масштабах. Часть 1

Рубрика: Администрирование /  Продукты и решения

Виталий Банковский

Lustre FS. Настраиваем и используем кластерную систему в промышленных масштабах
Часть 1

Наши постоянные читатели уже заметили, что редакция периодически публикует статьи, связанные с кластерными технологиями. Представляем очередную повесть об использовании кластерной файловой системы Lustre FS.

Уже прошли те времена, когда сайтов было мало и пользователи были согласны ждать, пока «упавший» сайт «подымется». В Интернете при столь высокой конкуренции даже пятиминутный сбой в работе сервиса вызывает отток пользователей к конкуренту. Поэтому каждый, кто хочет построить устойчивый сервис, должен начать с ее основ – отказоустойчивой файловой системы. Про одну такую файловую систему и пойдет речь.

Обзор современных кластерных систем

В этом разделе приведен список активно развиваемых кластерных файловых систем, включая коммерческие решения.

  • GFS. Высоконадежная файловая система для совместного использования хранилищ Storage Area Network (SAN). Элементом хранения является блок файловой системы. Для исключения конфликтов при доступе к файлам используется распределенный блокировщик доступа Distributed Lock Manager (DLM). Из-за этого у GFS очень низкая масштабируемость и низкая производительность при большом количестве обращений серверов-клиентов.
  • LustreFS. Высоконадежная файловая система с двумя подсистемами – сервер метаданных для хранения информации о файлах и сервер для хранения самих данных. Используется в больших вычислительных центрах. Пятнадцать суперкомпьютеров из мирового top30, включая Blue Gene/L, используют именно эту файловую систему. Элементом хранения является файл, в отличие от файловой системы GFS.
  • GlusterFS. На данный момент находится в активной разработке и не рассматривается как пригодная для использования в промышленных масштабах.
  • Google FS. Высоконадежная файловая система, устойчивая к сбоям. Но доступна только для использования в приложениях, написанных с помощью инструментария Google API.

Немного истории из личного опыта по использованию кластерных файловых систем.

Основные современные кластерные системы

Название

Производитель/владелец

Лицензия

Примечания

GFS

RedHat Inc

GPL

Используется распределенная система блокировки

Lustre

Sun Microsystems, Inc

GPL

Используется центральный сервер метаданных

GlusterFS

http://www.gluster.org

GPL

Запускается на уровне пользователя. Все еще находится в состоянии разработки

Google FS

Google, Inc

Доступна как часть Google API

Автор этих строк успешно установил и запустил в работу комплекс с использованием GFS, который включал в себя:

  • HP StorageWorks 1000 как Storage Attached Network (SAN);
  • пять серверов с операционной системой Linux;
  • коммутатор FiberChannel для подключения серверов и вышеуказанного SAN.

Этот комплекс предполагался для построения отказоустойчивого хранилища статистического контента для веб-сайта. Максимальная скорость отдачи такого комплекса достигала 1 gbps, но при при повышении нагрузки начали сказываться недостатки Distributed Lock Manager, так как перед открытием файла сервер должен опросить все серверы для блокировки какого-то блока файловой системы и получить подтверждение, что блок свободен. В связи с низкой производительностью я продолжил исследование кластерных файловых систем и остановился на файловой системе Lustre.

Обзор структуры файловой системы Lustre

Файловая система Lustre (далее – Lustre) состоит из следующих подсистем:

  • Сервер метаданных (MetaData Server (MDS)), который хранит имена файлов и каталогов и их права.
  • Серверы для хранения самих данных (Object Storage Servers (OSSes)). Общий объем доступного пространства Lustre вычисляется как сумма пространств на этих серверах.
  • Клиенты. Серверы, которые имеют доступ к файловой системе Lustre.

MDS, OSSes и клиенты могут располагаться как и на одном сервере, так и на разных серверах. Для взаимодействия Lustre поддерживает различные протоколы, включая Infiniband, TCP/IP поверх Ethernet, Myrinet и Quadrics.

OSS поддерживает файловую систему (на данный момент – ext3, в будущем – ZFS) для хранения локальных данных, которая экспортируется в кластер для операций чтения/записи.

Когда клиент пытается получить доступ к файлу, он обращается к серверу MDS за получением ссылки на OSS, где хранится сам файл, и в дальнейшем взаимодействует уже с конкретным сервером OSS.

Когда клиент пытается изменить файловую систему (например, запись файла), то он делегирует эту операцию серверу MDS. Таким образом мы получаем практически линейное масштабирование (особенно в режиме чтения), в отличие от блочных кластерных систем, таких как GFS, где клиент должен получить разрешение от всех серверов на модификацию блоков, принадлежащих какому-то файлу.

Это также обеспечивает целостность данных, так как модификацию данных производит только сервер MDS, а не несколько клиентов, которые потенциально могут неправильно работать с файловой системой.

Топология сети и файловой системы Lustre

Топология сети и файловой системы Lustre

Установка

В свой работе я использую CentOS, поэтому описание процедуры установки и настройки будет ориентировано на этот дистрибутив.

Сначала нужно получить по адресу http://www.sun.com/software/products/lustre/get.jsp следующие компоненты:

  • ядро Linux с специальными патчами для Lustre;
  • сами исходники Lustre.

Я использовал ядро версии 2.6.16.54 и версию 1.6.5 Lustre, которые были доступны по вышеуказанному адресу на момент установки.

Настройка и установка ядра Linux

Здесь процедура настройки, компиляции и установки ядра не отличается от типичных, за исключением следующих параметров настроек ядра:

  • должна быть включена поддержка Quote, ext3;
  • должна быть выключена поддержка preemt;
  • также обязательна поддержка модулей.

Настраиваем, компилируем, устанавливаем новое ядро и перезагружаем. Эта процедура должна быть повторена на всех серверах MDS, OSS и серверах-клиентах.

Как вариант компания Sun Microsystems предоставляет предкомпилированные компоненты в формате .rpm и .deb.

Настройка и установка программы Lustre

Процесс установки программных компонентов Lustre тоже не отличается особой оригинальностью и выполняется следующими шагами:

tar -xzvf lustre-1.6.5.tar.gz

cd lustre-1.6.5

./configure

make

make install

Настройка и запуск системы

Первым шагом необходимо подготовить сервер MDS, который будет хранить метаданные. Для этого следует выделить отдельный раздел для этих данных и отформатировать:

mkfs.lustre --mdt --mgs --fsname=webstorage /dev/sdb

mount -t lustre /dev/sdb /mnt/mdt

где:

  • параметр webstorage – имя файловой системы, используемое для идентификации хранилища внутри кластера;
  • устройство /dev/sdb – раздел для хранения метаданных.

Примечание. Lustre FS поддерживает хранение и в файле, но с небольшой потерей производительности и надежности из-за дополнительного слоя (файловой системы, где хранится файл данных).

Следующий наш шаг – форматирование и подключение серверов OSS, где будут храниться данные.

На OSS1 выполняем следующие шаги:

mkfs.lustre --ost --fsname=webstorage —mgsnode=mds.domain.com@tcp0 /dev/sdb

mount -t lustre /dev/sdb /mnt/ost1

где:

  • параметр webstorage – имя файловой системы;
  • параметр mds.domain.com – адрес сервера MDS (обязательно, чтобы все серверы кластера могли получить IP по этому имени через DNS или путем прописывания записей в /etc/hosts) или можно использовать IP-адрес сервера MDS;
  • устройство /dev/sdb – место для хранения самих данных.

Аналогично выполняем эти же шаги на серверах oss2.domain и oss3.domain.com, причем разделы для хранения данных могут быть отличными от разделов, используемых на других OSS. И теперь самое главное – подключение клиентов к нашей кластерной файловой системе:

mount -t lustre mds.domain.com:/webstorage /mnt/lustre

где:

  • mds.domain.com – адрес нашего MDS (mds.domain.com);
  • webstorage – имя файловой системы;
  • /mnt/lustre – точка монтирования, где клиенты могут записывать и читать файлы.

Конечно, процесс запуска MDS, OSS и клиентов нужно прописать в файле /etc/fstab, чтобы при загрузке серверов активировались соответствующие сервисы (MDS и OSS) и подключались клиенты к файловой системе.

Строка для сервера MDS для файла /etc/fstab:

/dev/sdb /mnt/mdt lustre defaults 0 0

Строка для серверов OSS для файла /etc/fstab:

/dev/sdb /mnt/ost lustre defaults 0 0

Строка для клиентов для файла /etc/fstab:

mds.domain.com:/webstorage /mnt/lustre lustre defaults 0 0

Заключение

В первой части статьи я рассмотрел первые шаги по созданию хранилищ на основе кластерной системе Lustre. Во второй части я планирую описать такие необходимые операции, как увеличение надежности хранилища, процедуру создания архивных копий.

  1. http://en.wikipedia.org/wiki/GPFS.
  2. http://en.wikipedia.org/wiki/Google_File_System.
  3. http://en.wikipedia.org/wiki/Global_File_System.
  4. http://en.wikipedia.org/wiki/Lustre_(file_system).
  5. http://en.wikipedia.org/wiki/List_of_file_systems.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru