Сергей Яремчук
Openfiler – дистрибутив для организации NAS
Необходимость обеспечения постоянного доступа к информации, упрощение создания резервных копий данных и требования к безопасности приводят к решению использовать сетевые хранилища. В статье разберем возможности специализированного дистрибутива Openfiler.
Решение организовать выделенное сетевое хранилище (NAS – Network Attached Storage) возникает в компаниях любого размера. Часто это решение принимается в ходе «экспериментов» над своими же сотрудниками.
Например, хранение информации на свободном месте жестких дисков рабочих компьютеров пользователей. Несмотря на начальную простоту (не нужно закупать специальное оборудование) такое решение имеет обратную сторону. Сотрудник, чей компьютер использован в качестве свалки, большую часть рабочего времени начинает тратить на его обслуживание, да и работать на таком компьютере часто становится невозможно в силу увеличения нагрузки.
Установка выделенного файл-сервера не всегда оправдана. Такой подход потребует значительных финансовых затрат на покупку ПО и оборудования, которые не всегда оправданны для небольших организаций. Кроме того, на файл-серверах используется серверное ПО, все возможности которого все равно не задействуются, но зато это потребует привлечения специалиста для его обслуживания.
Таким образом, в небольших организациях больше востребованы простые в настройке и обслуживании специализированные файл-серверы – NAS (файлеры от англ. filers). Их задача по сравнению с традиционным файл-сервером упрощена до одной – предоставление данных по сети. В таких решениях используется операционная система, не имеющая лишних функций, поэтому вся мощь системы направлена на операции с файлами.
В итоге по сравнению с файл-серверами требования к оборудованию у NAS несколько ниже, а с его настройкой справится и неопытный пользователь. Правда, учитывая узкую специализацию, стоимость серверов NAS может быть несколько выше, но ее можно уменьшить, использовав стандартное оборудование и специализированный дистрибутив выпускаемый под Open Source-лицензией.
В журнале уже шла речь об одном из таких специализированных дистрибутивов – FreeNAS [1, 2], сегодня еще об одном подобном решении – Openfiler.
Назначение и возможности Openfiler
Дистрибутив возник из одноименной Open Source-утилиты, выпущенной компанией Xinit Systems в 2003 году. В виде дистрибутива Openfiler был впервые представлен в мае 2004 года. Первые его версии базировались на CentOS 3, сегодня дистрибутив собирается с использованием сервиса rBuilder Online дистрибутива rPath.
Полный список возможностей приведен на сайте проекта [3], поэтому остановлюсь лишь на основных характеристиках.
В Openfiler используются известные приложения, выпускаемые под лицензией Open Source, – Apache, Samba, Bacula и другие. Сам дистрибутив доступен по лицензии GNU GPL.
Поддерживаются основные сетевые протоколы, используемые сегодня для передачи файлов, – CIFS/SMB (с «теневыми» копиями), NFSv3 (с поддержкой ACL) и NFSv4, HTTP/DAV, FTP.
Последняя актуальная версия 2.3 поддерживает iSCSI как в качестве клиента (initiator), так и сервера (target).
В качестве файловой системы, используемой при хранении файлов, можно выбрать любую из поддерживаемых Linux-ядром: Ext3 и XFS (основные форматируются через GUI), а также ReiserFS и JFS (форматирование вручную или в ходе установки). В скором времени к этому списку планируется добавить и GFS.
Поддерживется аппаратный и программные RAID-массивы (0, 1, 5, 6 и 10), а также LVM2. Поэтому можно собрать решение полностью под конкретные задачи. Реализована синхронная и асинхронная поблочная репликация данных при помощи rsync.
Аутентификация пользователей может производиться средствами PAM, NIS, LDAP, Hesiod, Active Directory и домена NT4, причем можно задействовать несколько механизмов. По крайней мере так заявлено в Feature Summary, на счет PAM привожу дословно: «Authentication using Pluggable Authentication Modules, configured from the web-interface». В Administration Guide говорится, что Openfiler: «imports user and group information from central directory servers such as …». На самом деле средств настройки пользователей посредством PAM в текущей реализации не наблюдается, только просмотр их списка. Да, настроить такую проверку можно, но только в консоли и при наличии определенных знаний.
Политику доступа можно реализовать на основании IP-адреса или принадлежности к сети. Возможна активация персональных (home) ресурсов пользователей и гостевых каталогов. Поддерживается протокол Kerberos 5. Возможно задание индивидуальных, групповых и гостевых квот. Доступна работа нескольких NAS-серверов в качестве кластера высокой доступности (HA – High Availability).
Все настройки осуществляются через простой и понятный, хотя и нелокализованный веб-интерфейс, или через SSH. Причем веб-интерфейс предоставляет Java-клинет для работы по SSH.
Кроме коммерческой поддержки пользователей, информацию по работе Openfiler можно получить на форуме проекта, подписавшись на список рассылки или в IRC-канале. Сайт имеет и RSS-канал.
Знакомимся ближе
Дистрибутив доступен в версиях i386 и x86_64. Кроме традиционного ISO-образа, предназначенного для установки, имеются и образы для виртуальных машин VMware, Xen и Citrix XenServer.
Рисунок 1. Программа установки Openfiler достаточно проста и понятна даже новичку
На странице Hardware Compatibility можно найти список совместимых устройств, выпускаемых Qlogic. Кроме этого, заявлена поддержка контролеров RAID и Fibre Channel и дисков SAS, SATA и SCSI, и разнообразных сетевых карт вплоть до 10 Gigabit Ethernet.
В Openfiler в качестве программы установки используется Anaconda, которая встречается во всех RedHat-совместимых дистрибутивах. Установить систему можно как в графическом, так и текстовом режиме. По умолчанию используется графический вариант. Для активации текстовой установки достаточно ввести «linux text». По сравнению с оригинальной Anaconda программа установки несколько сокращена, так как убраны ненужные шаги вроде выбора пакетов. И хотя русский интерфейс в программе установки не предлагается, запутаться в настройках довольно проблематично, так как их практически нет. В большинстве случаев достаточно нажимать «Next».
Для разметки диска используется Disk Druid, имеющий режим автоматического и ручного создания нужных разделов.
В автоматическом режиме предусмотрено использование свободного места или разделов Linux, поэтому при его выборе данные не обязательно будут уничтожены. При автоматической разметке всего диска был создан 100 Мб раздел /boot, swap-раздел равнялся двойному ОЗУ, и остальное пространство было занято корневой системой, отформатированной в ext3.
Кстати, сами разработчики рекомендуют именно ручную разметку диска, так как при разметке нужно создать несколько разделов без указания точки монтирования, или оставив их пустыми. На этих разделах впоследствии будут размещаться тома разделяемых данных.
По умолчанию сетевые интерфейсы настраиваются при помощи DCHP, на этапе установки можно указать IP-адреса и прочие параметры вручную. В общем, установка занимает максимум 15 минут времени. После перезагрузки регистрируемся при помощи веб-браузера по адресу https://ip-адрес:446. Для входа используем логин «openfiler» и пароль – «password».
Основное окно состоит из 7 основных вкладок. После выбора вкладки справа появляются дополнительные меню, которые открывают доступ к специфическим для данной вкладки настройкам.
Рисунок 2. Получение информации о системе
Самая простая вкладка Status, куда пользователь попадает после регистрации. Как понятно из названия, здесь выводится информация о системе и оборудовании, использовании памяти и сети, занятости файловых систем. Кроме этого, здесь же настраивается iSCSI Targets.
Во вкладке System уже несколько больше подпунктов.
В Network Setup настраиваются сетевые интерфейсы и доступ к NAS-серверу на основе адресов.
В других пунктах настраиваются работа в HA-кластере, системное время и синхронизация с определенным NTP-сервером, работа с устройством бесперебойного питания.
В Notification можно указать почтовый сервер, который будет использоваться для отправки уведомлений.
Отдельные пункты отвечают за создание резервной копии (используется Bacula), а также восстановление и обновление системы. Выбор Secure Console приведет к запуску Java-апплета для доступа к SSH.
Рисунок 3. Настройка аутентификации
Параметры аутентификации пользователей настраиваются во вкладке Accounts. Для того чтобы настроить получение информации с нужного сервиса, достаточно установить напротив его пункта флажок и заполнить параметры. Обратите внимание, что имеется два режима просмотра Standart и Expert. Во втором будет доступно чуть больше параметров.
В этой же вкладке можно просмотреть список локальных учетных записей и групп. В отличие от FreeNAS создать локальную учетную запись можно только традиционным способом, то есть в консоли, используя команду adduser.
В Admin Password меняем пароль администратора, установленный по умолчанию.
Во вкладке Services производятся активация/деактивация сервисов, используемых NAS, и настройка параметров их работы.
В настройках SMB не забудьте изменить значение параметра DOS Charset на CP866.
Вкладка Volumes предназначена для управления дисковыми томами и программным RAID. Логические тома являются фундаментом, на котором строится система хранения данных в Openfiler. Поэтому перед началом работы потребуется создать том, использовав свободное место на жестком диске.
Для этого нажимаем ссылку «Сreate new physical volumes», которая будет показана в окне предупреждения. Появится список дисков Block Device Management. Выбираем диск, на котором будем создавать том, и нажимаем на ссылку в столбце Edit Disk. В появившемся окне будет выведена подробная информация в виде круговых диаграмм по использованию разделов диска. В самом низу находится таблица «Create a partition in …». Здесь создается том. Указываем тип раздела (Physical Volume), размер в цилиндрах и нажимаем кнопку Create. В диаграмме появится новый раздел – Linux Physical Volume. Возвращаемся в первое окно вкладки – Volumes – и вводим название Volume group, выбрав physical volumes, если их несколько. Теперь необходимо выделить место в созданной группе. Это можно сделать в Add Volume: просто выбираем Volume group, вводим имя, указываем файловую систему (ext3 иди XFS) и при помощи ползунка Required Space – размер. Учтите, имя будет соответствовать каталогу. То есть имя test означает, что Volume group будет смонтирована в /mnt/test/user/ и доступна в сети под этим именем.
Рисунок 4. Создаем Volume Group
После нажатия на кнопку Create значок вместо красного окрасится в зеленый цвет. Теперь можно переходить к настройке квот во вкладке Quota и общих каталогов в Shares. Настройка двух последних очень проста. Например, в Shares можно лишь добавить подкаталоги.
Рисунок 5. Можно переходить к настройкам
Вот и все основные возможности. Также хочется отметить наличие руководства [5], которое хоть и описывает работу с ранней версией Openfiler, но, в общем, дает возможность понять принцип настройки.
Заключение
Как видите, Openfiler достаточно простое в настройке решение, позволяющее с минимальными затратами и в короткий срок развернуть полнофункиональный NAS-сервер. С таким сервером вполне может справиться так называемый продвинутый пользователь, не имеющий специальной подготовки.
Удачи!
Приложение
Отличия FreeNAS и OpenFiler
Также хочу обратить внимание на документ [4], в котором сравнивается производительность дистрибутивов FreeNAS и Openfiler при выполнении основных операций, связанных с копированием файлов в разных условиях. Согласно этому документу Openfiler победил в большинстве тестов. Правда, датирован документ 2007 годом. Но это не значит, что FreeNAS однозначно хуже. Здесь следует учитывать, что FreeNAS построен на FreeBSD, поэтому список файловых систем несколько отличается (UFS). Размер FreeNAS меньше, и установленная система занимает 22 Мб, поэтому его можно использовать во встроенных устройствах. Для установки и использования FreeNAS требуется компьютер, как минимум, с 96 Мб оперативной памяти. Ожидается переход на FreeBSD седьмой ветки, когда станут доступными все нововведения (gjournal, ZFS, gvistor и прочие). Хотя дата выхода версии 0.7 пока не известна. Наличие Unison в последних версиях FreeNAS позволяет производить двустороннюю синхронизацию данных.
Системные требования к Openfiler несколько противоречивы, хотя и однозначно выше, чем у FreeNAS. Так, на странице, рассказывающей об установке, сказано о компьютере с 256 Мб ОЗУ и 1 Гб свободного места для системы плюc сетевая карточка. Но в System Requirements минимальные требования даны как 32-битный 1 Гц процессор, 512 Мб ОЗУ, 1 Гб места для ОС и 512 Мб для swap. Рекомендованные требования в два раза выше.
Программа установки Anaconda в Openfiler более понятна новичку, чем текстовый вариант FreeNAS.
Поддерживаемые средства аутентификации одинаковы, но Openfiler больше ориентирован на внешние системы AD, LDAP, NIS, тогда как в FreeNAS можно просто создать локального пользователя и указать ему права. В Openfiler это также возможно, но для этого уже необходимы определенные знания, так как администратору придется браться за консоль. Во всяком случае веб-интерфейс нужные инструменты не предоставляет.
- Яремчук С. Сетевая система хранения данных FreeNAS. //Системный администратор, № 7, 2006 г. – С. 48-52.
- Сайт проекта FreeNAS – http://www.freenas.org.
- Сайт проекта Openfiler – http://www.openfiler.com.
- Сравнение производительности FreeNAS и Openfiler – http://www.scribd.com/doc/29643/OpenFiler-vs-FreeNAS.
- Документация по настройке Openfiler – http://wwwold.openfiler.com/docs/manual.