Книга 3. freeNAS

Содержание

Книга 3. freeNAS
3.1 Отказы обычных хранилищ
3.2 freeNAS и ZFS
3.3 Установка freeNAS
3.4 Пробрасываение дисков freeNAS
3.5 Настройка системы хранения без резервного копирования
3.6 Запуск freeNAS из консоли
3.7 Первоначальная регистрация
3.8 Навигация по freeNAS
3.9 Настройка сетевой среды
3.10 Пользователи и группы
3.10.1 Добавление нового пользователя
3.10.2 Добавление новой группы
3.11 Добавление тома ZFS
3.12 Отсоединение и перемещение томов
3.13 Наборы данных ZFS
3.14 Полномочия ZFS
3.15 Службы freeNAS
3.15.1 Служба CIFS (совместное использование в Windows)
3.15.2 Служба NFS (совместное использование в Linux)
3.15.3 Служба таргетов iSCSI
3.15.4 Служба Rsync (резервное копиование)
3.15.5 Служба SSH (безопасная оболочка)
3.16 Добавление совместных ресурсов
3.16.1 Совместные ресурсы NFS
3.16.2 Совместные ресурсы Windows
3.16.3 Совместно используемые таргеты iSCSI
3.17 Резервные копии снимков ZFS
3.18 Восстановление снимков в Windows
3.19 Rsync репликации
3.19.1 Добавление задания продвижения Rsync
3.19.2 Добавление модуля Rsync
3.19.3 Советы по применению Rsync
3.20 Членство в домене
3.20.1 Полномочия в домене
3.21 Резервные копии настроек

 3.1 Отказы обычных хранилищ

На протяжении многих лет я полагался на традиционные сервера хранения настроенные с одним из RAID (1, 5, 6 или 10). Предпочитаемой мной файловой системой была XFS, потому сто она находилась на переднем крае и относительно свободна от неисправностей. Проблема состояла в том, что файловый сервер потреблял все аппаратные ресурсы этой машины даже без нагрузок. Более того, вам нужно множество машин выделенных для хранения для сопровождения избыточности данных.

Ещё одно наблюдение состояла в том, что RAID НЕ совершенен! Если вы выбрали аппаратный RAID, а контроллер вышел из строя, мы имеем развлечение возврата своевременно выполненной резервной копии системы! При выборе RAID на основе программного обеспечения в случае деградации файловой системы мы имеем огромный провал в производительности при выполнении перестроения.

Большие массивы легко займут 24 часа на выполнение этого процесса. В течение этого времени ИТ подразделение будет наводнено запросами о плохой производительности системы! Что ещё хуже, автоматическое резервное копирование стартует на выполнение своего инкрементальное копирование, вызывая падение производительности! Должен существовать лучший способ!

Что делает хорошая система хранения

Как вы определите хорошую систему хранения? Для начала я спросил себя что было НАИБОЛЕЕ важным? Да, не так просто ответить после работы в поле и перенесённых проблем! Существует ряд ключевых вовлечённых элементов.

Для меня это:

  • Платформа хранения данных ДОЛЖНА быть надёжной и совместимой на протяжении многих лет

  • Совершенная система аварийного восстановления ДОЛЖНА быть простой и быстрой

  • Операции ввода/вывода хранилища ДОЛЖНЫ быть быстрыми.

  • Ежедневные запросы восстановления конечных пользователей должны быть простыми и быстрыми

  • Данные ДОЛЖНЫ храниться с избыточностью

  • Порча данных ДОЛЖНА быть минимизирована

Если я не могу удовлетворить ВСЕ эти ожидания, то выбор платформы хранения не верен!

В соответствии с этими потребностями традиционные хранилища RAID (1, 5, 6 или 10) просто не могут работать! Это требует разъяснений!

Рабочие циклы

Когда инженеры проектируют электронные компоненты, они обычно обеспечивают оценку числа рабочих циклов (Duty Cycle Rating). Такие специальные оценки помогают определять сколько времени компонент может работать под нагрузкой пока нагрев не начнёт необратимую деградацию этого элемента. Теперь давайте применим эту концепцию к массиву жёстких дисков!

Когда записывается массив с контрольными суммами, например, RAID (1, 5, 6 или 10) в нём должен синхронизоваться кэш данных без прерываний, иначе он деградирует. Если он деградировал, он БУДЕТ перестраиваться! Если он выполняет перестроение, он вносит дополнительные рабочие циклы увеличение нагрева. Это увеличение нагрева приводит к необратимой деградации компонентов, приводящей к возможному отказу.

Массив с чередованием, подобный RAID-0 никогда не выполняет синхронизацию и не деградирует {из-за неё}. Это уменьшает число рабочих циклов и не приводит к дополнительному нагреву, тем самым продлевая жизнь компоненты. В качестве бонуса это также предоставляет увеличение пропускной способности!

Простота и избыточность

RAID-0 (массив с чередованием) исключительно отвечает запросам производительности. Он может НИКОГДА не деградировать! Он либо работает, либо нет! Как насчёт простоты и избыточности?

Итак, здесь присутствует магия! Мы строим нашу систему применяя ТОЛЬКО массивы с чередованием без контрольных сумм, затем используем Rsync для репликации данных между несколькими машинами NAS. Это даёт производительность RAID-0 при поддержке избыточности данных.

Такой метод обеспечивает скорости ввода/ вывода, которые побивают любые хранилища RAID-10. Более того, при виртуализации выдаётся совместимость всех платформ для выполнения обновлений на лету. Более того, LVM Linux предоставляет простой метод создания UUID томов с последовательным чередованием. Это означает пуленепробиваемую загрузку и лёгкую физическую миграцию на другие машины.

Кажется, что все требования удовлетворены за исключением запросов на восстановление конечных пользователей и минимизации порчи данных. Постойте, существует freeNAS с ZFS!

 3.2 freeNAS и ZFS

Окончательно требования удовлетворяются с добавлением самовосстановления файловой системы ZFS. Лучше всего предназначенным для этого построения дистрибутивом является freeNAS. После установки в соответствии с этой книгой вы можете ожидать очень приличную производительность при сравнении с файловыми серверами на голом железе. freeNAS очень совершенна при интегрируемости в active directory, резервном копировании снимков и супер- встроенном сценарии RSync для освобождения рук от дубликации по узлам. Давайте приступим к установке!

[Замечание]Замечание

freeNAS является мощной платформой и её функциональный набор не может быть полностью покрыт в данной книге. Это руководство разработано как пошаговое для быстрого запуска и перехода к работе Я настоятельно рекомендую применение богатых онлайн ресурсов для получения более глубоких знаний. {Прим. пер.: рекомендуем наши переводы книг Майкла В. Лукаса и Аллана Джуда Мастерство FreeBSD: ZFS и Мастерство FreeBSD: ZFS для профессионалов}.

 3.3 Установка freeNAS

Прежде чем приступить к установке вы должны создать настройку своей ВМ. Я рекомендую для установки виртуальный диск 8ГБ с 8ГБ оперативной памяти. Если вам нужно освежить в памяти эти шаги повторите раздел 1.9 Создание настроек ВМ.

Теперь включите ВМ freeNAS убедившись, что у вас есть CD или загруженный образ диска. Для данной книги я использую freeNAS версию 9.2.1.5-RELEASE -x64.iso. Если у вас нет freeNAS вы можете загрузить самую последнюю редакцию здесь: http://www.freenas.org/download-freenas-release.html {Прим. пер.: на момент перевода это FreeNAS-9.3-STABLE-201602031011.iso}.

[Замечание]Замечание

Раздел загрузок также позволяет вам выбрать другие выпуски приведённые в нижней части страницы. Я бы рекомендовал вам использовать в точности используемую мной для данной книги версию! Она была проверена ОЧЕНЬ тщательно, а если она НЕ СЛОМАНА не пытайтесь починить её!.

После включения питания вы должны увидеть следующие экраны:

Для продолжения нажмите ENTER (что означает OK).


Затем вас пригласят ввести диск установки (как изображено ниже). Так как у нас только один диск это просто!

Для продолжения нажмите ENTER (что означает OK).


freeNAS теперь готов к началу установки (как изображено ниже).

Для продолжения нажмите ENTER (что означает Yes).


Когда установка завершится, вас попросят удалить CD и перезагрузиться (как показано ниже).

Для продолжения нажмите ENTER (что означает OK).


Чтобы удалить CD вам нужно выбрать 4й элемент спсика - shutdown (как изображено ниже).

Для продолжения нажмите ENTER (что означает OK).


Теперь вы можете закрыть консоль и перейти к закладке оборудования ВМ (как изображено ниже). Выберите CD затем кликните Edit


Чтобы предотвратить повторное использование CD ВМ freeNAS просто пометьте Do not use any media (не использовать никакие носители, как изображено ниже).

Для продолжения кликните OK


Далее вам надо скопировать аппаратные Mac адреса сетевых интерфейсов (выделены указателем ниже), так как они могут быть введены в маршрутизатор pfSense, который уже должен быть установлен.


Теперь откройте интерфейс pfSense с веб- управлением и выполните соответствующие записи в статичных соответствиях DHCP (как изображено ниже). Не забудьте сохранить свои изменения.


 3.4 Пробрасываение дисков freeNAS

На данный момент не существует никаких дисковых хранилищ для применения их freeNAS для совместно используемых ресурсов. Мы сейчас добавим том с чередованием LVM, который мы создали в разделе 1.12 Добавление прокидываемых ВМ в качестве транзитного (pass-through) жёсткого диска. Вы можете захотеть повторить материалы этого раздела!

Для начала откройте программу PuTTY и зарегистрируйтесь в качестве root на вашем сервере Proxmox (как изображено ниже).


Чтобы назначить новый диск мы выполним специальную команду QEMU следующим образом:

 
# qm set 800 -ide1 /dev/freenas4/6tbstore
	   

Введённая в PuTTY команда выглядит примерно так (изображено ниже).


Результат этой команды очевиден в новом устройстве IDE1 отображаемом в окне оборудования freeNAS-4 (как изображено ниже).

[Замечание]Замечание

Вам придётся обновить страницу закладки чтобы появился новый диск.


 3.5 Настройка системы хранения без резервного копирования

[Предостережение]ВАЖНО:

Чрезвычайно важно что мы делаем резервную копию ТОЛЬКО первичного диска freeNAS (ide0), а НЕ диска хранения 6ТБ! Если такое произойдёт, это приведёт к серъёзной деградации производительности вашей системы! Такое поведение легко может быть обойдено изменением свойств диска как показано ниже.


Заметим, что свойства диска (изображённые ниже) индицируют, что второй диск (ide1) НЕ будет включён в резервное копирование.


ВМ freeNAS-4 теперь может быть загружена и новый диск 6ТБ настроен как ZFS с чередованием.

[Замечание]ОТМЕТЬТЕ, ПОЖАЛУЙСТА:

Важно отметить, что freeNAS-4 теперь привязан к серверу Proxmox3 своим оборудованием транзитного диска. Он не может быть перемещён на другую физическую машину пока не удалены физические диски.

 3.6 Запуск freeNAS из консоли

Теперь запустим вашу новую ВМ freeNAS открыв консоль Proxmox в верхнем правом углу. Когда появится консоль, кликните на кнопку Start (как изображено ниже).


Теперь мы используем запущенное окно консоли для того чтобы убедиться что ВМ запущена надлежащим образом и ей назначены соответствующие IP адреса через DHCP. Отметим, что внизу дисплея консоли индицируется адрес нашего веб- интерфейса, который должен быть http://192.168.0.22


 3.7 Первоначальная регистрация

Теперь мы можем открыть веб- браузер и ввести адрес ВМ freeNAS. Лично я применяю и рекомендую Mozilla Firefox.

Первый экран, который вы увидите, будет диалогом изменения пароля пользователя root (показан ниже). Сделайте себе сильный пароль!


Когда пароль установлен, вы должны увидеть полный интерфейс веб- управления (как изображено ниже).


 3.8 Навигация по freeNAS

Навигация достаточно проста! Вы найдёте несколько вкладок поверх главного экрана. Также существует дерево в левой колонке (на снимке ниже).


 3.9 Настройка сетевой среды

В процессе установки freeNAS по умолчанию применяются DHCP со своими именами установленными в freenas. DHCP НЕ требуется когда вы запускаете любые серверы. Более того, при множестве машин freenas работающих в вашей сети они не могут иметь одно и то же имя! Давайте изменим это!

В закладке Network>Global Configuration (на снимке ниже) вы можете изменить имя вашего хоста, домена, шлюза и информацию сервера имён. В нашем случае я установил шлюз и сервер имён на IP адрес маршрутизатора pfSense, работающего на Proxmox. Не забывайте сохранять изменения!


Теперь кликните на закладку Network Summary (показанную ниже) чтобы проверить сетевые имя и адрес. Это будет нужно для настройки соответствия статичного адреса.


Далее кликните Network>Add Interface (как на снимке ниже).


Когда появится диалог интерфейса (показанный ниже) введите соответствующие имя интерфейса и IP адрес. Сетевая маска почти ВСЕГДА будет 255.255.255.0. Это наиболее часто применяемая Сетевая маска для резервирования дома или на работе.


Когда вы завершите, вы должны увидеть новую запись в списке под интерфейсами (как показано ниже).


 3.10 Пользователи и группы

  3.10.1 Добавление нового пользователя

Если увас нет локально работающего домена, вам придётся добавлять пользователей на ваш сервер или сервера. Невдалеке справа от главного интерфейса вы найдёте кнопку Account (как изображено ниже).

Для продолжения нажмите Account


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

Для добавления членов кликните Add User (как показано ниже).


Затем должен появиться диалог Add User (как показано ниже). Введите необходимую информацию о новом пользователе. Я вставил простые данные для примера.


В нижней части формы записи существует раздел, позволяющий выбрать вспомогательные группы (Auxiliary groups) для нового пользователя. Давайте добавим John Smith в группу ftp! Для этого кликните дважды по соответствующей группе в колонке Available (как изображено ниже).


  3.10.2 Добавление новой группы

Добавление новой группы так же просто.

Для добавления членов кликните Add Group (как показано ниже).


Затем должен появиться диалог Add Group (как показано ниже). Введите необходимую информацию о новом группе.


 3.11 Добавление тома ZFS

Веб интерфейс freeNAS делает добавление хранилищ вполне простым. Для доступа к менеджеру томов проверьте в верхней части экрана что вы работаете под вкладкой Storage (как на снимке ниже).

Для продолжения нажмите ZFS Volume Manager.


Чтобы добавить новый том, наберите уникальное имя, затем выберите доступный диск (как изображено ниже).

Для продолжения кликните Add Volume.


Затем должен появится как активный новый том (как показано ниже).


 3.12 Отсоединение и перемещение томов

Если по какой- то причине вам нужно переместить ВМ freeNAS на другую физическую машину Proxmox, наилучшим методом будет аккуратное отсоединение тома. В нижней части страницы вы увидите набор управляющих кнопок (как изображено ниже).

Для продолжения кликните Detach Volume.


Затем freeNAS спрсит вас хотите ли вы разрушить эти данные (как на снимке ниже)! УБЕДИТЕСЬ ЧТО ВЫ НЕ ПОМЕТИЛИ ЭТОТ БЛОК, ИНАЧЕ ВАШИ ДАННЫЕ БУДУТ УТРАЧЕНЫ!

Для продолжения кликните Yes.


Раз уж том удалён, он НЕ должен быть виден в активных томах. Теперь вам нужно выключить вашу ВМ freeNAS. Я советую сделать дополнительную резервную копию образа ВМ с применением интерфейса Proxmox. Убедитесь что резервная копия сохранена там, где она легко доступна! Теперь вы можете безопасно выключить физическую машину Proxmox и переместить freeNAS диски с данными на вашу новый сервер Proxmox.

Когда вы завершите перенос дисков данных, вам нужно восстановить резервную копию образа ВМ freeNAS выполненную перед переносом. Следующим шагом будет повторное добавление пробрасываемого жёсткого диска на новый сервер Proxmox. Если вы забыли, повторите: 3.4 Пробрасываение дисков freeNAS.

Когда вы завершите приведённые выше шаги включите ВМ FreeNAS, зарегистрируйтесь и кликните Auto Import Volume (как на снимке ниже).


Теперь вы увидите мастер импорта тома. На 1м шаге выберите No: Skip to import ("нет, пропустить для импорта" в ответ на вопрос: "том ZFS зашифрован?"), затем кликните OK (как показано ниже).


На 2м шаге выберите том, который вы хотите импортировать, затем кликните OK (как показано ниже).


После успешного импорта вы должны увидеть свой том, отображаемый как активный (как показано ниже).


 3.13 Наборы данных ZFS

Теперь, когда мы создали том, самое время улучшить его. О наборе данных (Dataset) можно думать как об аналоге папки (folder) в MS Windows. Даже лучше! Виртуальная папка со специальными свойствами!

Чтобы создать новый набор данных кликните Create ZFS Dataset (как показано ниже.


Просмотром по умолчанию в freeNAS является основной режим (Basic Mode), поэтому после именования вами нового набора данных, кликните кнопку Advanced Mode (Расширенный режим, как показано ниже).


Advanced Mode предлагает улучшения, такие как сжатие, тип совместного использования, резервирование и дедупликацию. Отметим, что я установил для данного набора данных квоту 100ГБ (как показано ниже).

Для продолжения кликните Add Dataset.


Теперь вы увидите свой новый набор данных в списке активных томов (Active Volumes, отображённом ниже). Отметим, что информация в колонках размер и доступно (Size, Available) получается от предварительно установленной квоты.


Приведённый выше пример показывает имя набора данных, которое я обычно НЕ применяю. В качестве примера мы сейчас разрушим набор данных.

Для продолжения кликните Destroy Dataset (как показано ниже).


Разработчики freeNAS благоразумно решили дать любую возможность уклониться от деструктивных действий. Отметим, что диалог снабжён красным фоном (как показано ниже).


Я предоставил предварительно заполненный том в соответствии с соглашениями об именах наборов данных которые я предпочитаю применять. Префикс ds просто отображает тот факт, что я работаю с томом с именем pool0. Отметим, что возможно встраивать наш набор данных в другой набор данных (каа изображено ниже).


В любой момент времени вы можете изменить существующий набор данных. Давайте взглянем на свойства набора данных с именем ds.filestore/protected (на снимке ниже).


Для просмотра свойств набора данных кликните на Edit ZFS Options (как показано ниже)


Если вам необходимо дополнительное пространство для этого набора данных, измените оба значения квоты в соответствии с вашими потребностями (как показано ниже):


Тщательно следите за тем, чтобы НЕ превышать размер родительского набора данных (как показано ниже)!


 3.14 Полномочия ZFS

Обычно когда вы создаёте набор данных вам нужно установить соответствующие полномочия для пользователей. Для целей данного примера мы установим полномочия public (общедоступные), которые являются широко открытыми. Однако не стоит беспокоиться, вы также можете ограничить (restrict) общедоступные совместные ресурсы IP адресом, в закладке Share. По секрету я могу сказать, даже с установленными для ваших разделяемых ресурсов общедоступными полномочиями, поскольку pfSence настроен в соответствии с данной книгой, с применением аппаратной фильтрации, что совершенно безопасно для вас!

Давайте теперь установим полномочия на набор данных ds.backups (как показано ниже).


Для продолжения кликните Change Permissions (как на снимке ниже).


Вы должны увидеть диалог полномочий (показанный ниже). Для разрешения доступа к этому набору данных я пометил все блоки в Mode для Owner Group и Other. Рекурсивная пометка блоков означает, что ВСЕ наборы данных, вложенные в обсуждаемый также получат изменение полномочий. ACL может быть оставлен в значении по умолчанию Unix даже если настраивается в домене. Если вам нужны определённые полномочия для пользователя или группы, они могут быть выбраны с применением ниспадающего блока.

[Замечание]Замечание:

Если у вас есть проблемы с присоединением к совместному ресурсу, это то место, с которого вы должны начать поиск неисправности. Показанный ниже сброс полномочий гарантирует доступ к набору данных.


 3.15 Службы freeNAS

Ваш сервер может быть установлен для размещения различных служб, которые могут быть найдены во вкладке служб (Services, как показано ниже). В данной книге мы в первую очередь сосредоточимся на CIFS, iSCSI, NFS, Rsync и SSH.


  3.15.1 Служба CIFS (совместное использование в Windows)

Вначале мы посмотрим на CIFS (также известную как SAMBA). Эта служба является основой совместимости с Windows сетевой среды и будет вашим первичным протоколом совместного использования файлов. Теперь давайте изучим параметры настройки CIFS.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Параметры настроек по умолчанию (изображённые ниже) позволяют совместно использовать файлы в сетевой среде Windows в компьютере с именем freenas в пределах рабочей группы с именем WORKGROUP. Вы можете изменить эти имена в соответствии со своими потребностями! Например: имя моего домена yourwebs.us, а моя рабочая группа называется YOURWEBS. Поскольку у меня есть более одного работающего сервера freeNAS, я применяю имена такие, как freeNAS-1, freeNAS-2, freeNAS-3 и т.п.


  3.15.2 Служба NFS (совместное использование в Linux)

Далее мы изучим NFS. Эта служба является изначальным протоколом файлового обмена на основе Linux. Сегодня вы можете установить службы на Windows для соединения с разделяемыми ресурсами NFS. Я предпочитаю сохранять мои совместно используемые ресурсы NFS закрытыми только для машин Linux. Если вам нужен доступ из Windows просто разрешите временный совместный ресурс CIFS, причём только он будет иметь полномочия для Windows. Давайте теперь рассмотрим параметры настройки для NFS.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Единственный параметр настройки который вам нужно будет изменить это Bind IP Address (IP адрес привязки, показанный ниже). Можно привязывать NFS к IP адресам отличным от применяемых для совместных ресурсов CIFS. Для лучшей производительности я рекомендую иметь 2 сетевых адаптера, один для CIFS, а другой для NFS и Rsync.


  3.15.3 Служба таргетов iSCSI

Далее мы рассмотрим глобальные параметры iSCSI. iSCSI является мощным сетевым протоколом и может быть слегка сложным для начинающих. Он делает возможным создание последовательных совместных ресурсов таким образом, что гостевые операционные системы вводятся в заблуждение, полагая чтоони располагают большим числом физических дисков. Сейчас давайте изучим глобальные параметры настройки (Global Configuration ) для iSCSI.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Теперь вы должны видеть экран глобальных настроек таргетов (Target Global Configuration, как показано ниже). Единственное место, к которому вы олжны притрагиваться на этом экране будет Base Name. Например, вам понадобится изменить org.example (как на снимке ниже) на что-то вроде us.freenas1.yourwebs.

[Предостережение]Предостережение

Будьте предельно внимательны при изменении основного имени, иначе ваш сервер может стать не видимым для соответствия. Если это произойдёт, вернитесь назад к значениям по умолчанию: iqn.2011-03.org.example.istgt


  3.15.4 Служба Rsync (резервное копиование)

Теперь мы рассмотрим параметры настройки Rsync. Rsync является мощной утилитой резервного копирования, которая широко применяется в сообществе Linux. Она легковесна и очень хороша в том что она делает! freeNAS предоставляет исключительные сценарии для резервного копирования Rsync! Мы рассмотрим их позже! Давайте теперь рассмотрим параметры настройки для Rsync.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Настройки для службы Rsync очень просты. Их попросту нет! Сохраните значение порта TCP по умолчанию (как на рисунке ниже).


  3.15.5 Служба SSH (безопасная оболочка)

Наконец, мы рассмотрим параметры настройки SSH. SSH поддерживает безопасную оболочку. Она позволяет удалённую регистрацию через программу консоли, например, использовавшуюся ранее в книге программа PuTTY. Сейчас давайте изучим параметры настройки для SSH.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Убедитесь что вы пометили ВСЕ позиции для отметки, которые пометил я (как на снимке ниже). Больше никаких настроек не требуется.


Теперь, когда мы рассмотрели самые важные параметры настройки служб убедитесь что они все разрешены, кликнув на каждый из переключателей службы (как отображено ниже). Они должны быть подсвечены голубым во включенном состоянии!


 3.16 Добавление совместных ресурсов

  3.16.1 Совместные ресурсы NFS

Как уже упоминалось ранее в этой книге, для резервных копий Proxmox я предпочитаю применять NFS. Сейчас мы создадим совместный ресурс с именем netbackups, который будет использоваться для резервных копий образов ВМ Proxmox.

Для продолжения кликните Sharing>NFS (как на снимке ниже)


Далее кликните Add NFS Share (как на снимке ниже)


Когда появится диалог, введите соответствующую информацию (как изображено ниже). Отметим, что у меня есть 3 Авторизованных (Authorized) IP адреса серверов Proxmox. Это ограничивает доступ и настоятельно рекомендуется! В Maproot User выберите root. Это может быть НЕ безопасным, однако гарантирует работу и оставляет вещи простыми. Также отметим, что я просматривал и выбирал встраиваемые набор данных в ds.backup с именем netbackups.

Если вы ещё не создали набор данных, вернитесь назад и сделайте его сейчас. В противном случае кликните close после выбора вашего набора данных (как наснимке ниже).


Теперь внимательно просмотрите свою запись, затем кликните OK для продолжения (как изображено ниже).


Вы должны теперь увидеть новый совместный ресурс NFS netbackups в вашем списке (как показано ниже).


  3.16.2 Совместные ресурсы Windows

Настройка разделяемого ресурса Windows очень похожа на то,что мы делали с NFS. Сейчас мы создадим совместный ресурс с именем netbackups, который будет использоваться для резервных копий образов ВМ Proxmox.

Для продолжения кликните Add CIFS Share (как на снимке ниже)


Начните с набора соответствующего имени и выбора пути нужного набора данных, как показано ниже!


Теперь, если пожелаете, введите комментарий и установите все другие параметры в соответствии с вашими потребностями. Отметим, что я установил для данного совместного ресурса Read Only и Browsable to Network Clients (как показано ниже).


По завершению ваш новый совместный ресурс Windows будет видим в вашем списке (изображённом ниже).


  3.16.3 Совместно используемые таргеты iSCSI

Я оставил iSCSI напоследок, поскольку его настройка занимает больше всего времени. Пожалуйста, будьте очень внимательны! Чтобы настроить таргет iSCSI вначале вам нужно отобразить add a dataset. Для данного примера я создал 40ГБ набор данных с именем example.trgt012 встроенным вовнутрь набора данных ds.iscsitrgts (как показано ниже). Соглашения об именовании помогает мне определять тип предназначения совместного ресурса с которым я работаю.


Когда вы создадите набор данных перейдите к закладке служб (Services) как показано ниже.

Для продолжения кликните на иконку гаечного ключа (как показано ниже).


Далее перейдите напрямую к закладке Portals и кликните Add Portal (как изображено ниже).


Когда появится диалоговый экран (показанный ниже) вы отметите, что IP Address установлен в 0.0.0.0, что подразумевает, что будет применяться ЛЮБОЙ интерфейс. Эта установка прекрасна! Также вы можете захотеть добавить некие комментарии.

Для продолжения кликните OK.


Далее мы настроим инициатор! Для выполнения кликните Add Initiator (как изображено ниже).


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

Для продолжения кликните OK (как показано ниже).


Теперь мы настроим группы доступа!

Для продолжения кликните Add Authorized Access (как показано ниже).


Когда появится диалог, как показано ниже, введите соответствующую информацию. Для данного примера я установил User как network client с именем win7pro, а Peer User как моё active directory Username: lsurber.

[Замечание]Замечание:

Secret и Peer Secret не могут быть одинаковыми! Я выбираю произвольный Secret и применяю свой пароль active ditrectory для Peer Secret.

Для продолжения кликните OK (как показано ниже).


Далее поднимем таргеты! Для продолжения кликните Add Target (как показано ниже).


Теперь вы должны увидеть экран диалога таргета показанный ниже. Моё предпочтение состоит в использовании имени набора данных (example.trgt012) в качестве имени таргета. Теперь выберем Portal Group ID и установленный ранее Initiator Group ID. Такжевы можете выбрать Authentication Group number. Я оставляю эту настройку в none для данного примера.

Для продолжения кликните OK (как показано ниже).


Теперь вы должны увидеть свои вновь созданные таргеты как показано ниже.


Далее мы настроим экстенты!

Для продолжения кликните Add Extent (как показано ниже).


Повторюсь, в качестве имени экстента я выбираю применение имени набора данных и установку размера экстента на 40g. Это соответствует квоте, которую я установил для этого набора данных при его создании. Мои предпочтения и рекомендации заключаются в применении типа экстента File. Теперь выберем соответствующий путь к экстенту. Отмечу: для пути я выбрал вложенный набор данных example.trgt012.

После выбора вашего пути кликните Close (как показано ниже).


Для выполнения кликните OK (как показано ниже).


Я специально создал эту распространённую ошибку для вашей справки (как показано ниже).

[Замечание]Замечание:

Поскольку тип экстента установлен в File вы не можете просто выбрать набор данных как путь к экстенту Также отметим, что верный синтаксис для размера экстента был не верен! Он должен быть 40GB.


Чтобы исправить путь к экстенту я просто добавлю /trgt012 в конец выбранного экстента. Вы можете начинать понимать почему имена так важны!

Когда все исправлено, кликните OK (как показано ниже).


Наконец мы можем ассоциировать таргет с экстенотм!

Для выполнения кликните Add Target/Extent (как показано ниже).


Когда появится диалог, просто выберите Target и Extent для связывания из ниспадающих блоков. Вы можете оставить установку LUN ID в Auto.

Для выполнения кликните OK (как показано ниже).


Когда таргет будет успешно добавлен в вашу систему, он появится как показано ниже. Наши поздравления!


 3.17 Резервные копии снимков ZFS

Возможно, САМОЕ ЛУЧШЕЕ свойство файловой системы ZFS это копирование при записи (copy on write). Эта функциональность делает возможным почти моментальное восстановление резервных копий из архивов снимков. Когда она установлена и используется надлежащим образом, вам больше НИКОГДА не понадобится другая форма программного обеспечения резервного копирования... Я ВСЕГДА НАСТОЯТЕЛЬНО рекомендую применять мой метод лучшей практики. Он включает работу 2, 3 или 4 серверов freeNAS, причём все с одинаковыми наборами данных.

Любой набор данных содержащий рабочие данные будет рассматриваться как первичный набор данных. Каждый первичный набор данных нуждается в репликации вручную (один раз в процессе установки) на все остальные узлы freeNAS. Первичный набор данных (размещающий рабочие данные) будет настроен как продвигающее задание Rsync (Rsync push tasks) на этом узле размещающем рабочие совместно используемые ресурсы. Наборы данных резервных копий (исключительно данные резервной копии) будут настроены как модули Rsync на любом узле НЕ размещающем рабочие разделяемые ресурсы. При применении этого метода все наборы данных реплицируются на каждом узле freeNAS автоматически.

Снимки ZFS затем могут быть настроены впоследствии на каждом узле с применением различных расписаний. первичный набор данных может быть настроен на почасовые или ежедневные снимки в то время как остальные устанавливаются на еженедельные, ежемесячные и т.д. При достаточных издержках на хранилище представляется возможным установить их и забыть про них в то время как они поддерживают резервное копирование на протяжении года и даже более. Давайте сейчас настроим задачу снимка!

Для выполнения кликните Add Periodic Snapshot (как показано ниже).


Для этой задачи снимка я выбрал наш набор данных ds.backups (как на снимке ниже).


Повторю, выключатель Recursive означает что ВСЕ вложенные в ds.backups наборы данных будут включены в снимок. Все другие параметры должны быть понятны по названию (изображены ниже).


После сохранения ваше задание снимка возникнет в вашем списке (как на снимке внизу).


Отметим, что новое задание снимка выполнилось почти сразу и может быть доступно из вкладки снимков ZFS (как показано ниже). В данном месте пользователи Windows 7 или выше {Прим. пер.: определяется требованиями к NTFS} могут теперь кликнуть совместный ресурс файлов CIFS на этом наборе данных и смонтировать или восстановить файл из снимка.


 3.18 Восстановление снимков в Windows

Будучи ИТ администратором, приходится в порядке очень распространённой практики иметь ежедневные запросы конечных пользователей, говорящих что они случайно удалили свой файлы. Снимки ZFS делают эту ежедневную задачу лёгкой в обработке в системах работающих под Windows 7 или выше {Прим. пер.: определяется требованиями к NTFS}! Давайте изучим параметры восстановления снимков для машины Windows 7 (как изображено ниже)!


Давайте предположим, что пользователь удалил файл с диска помеченного Z. Чтобы просмотреть доступные снимки просто кликните правой кнопкой по вашему диску, затем выберите Properties (как на снимке ниже).


Когда появится диалог, выберите закладку предыдущих версий (Previous Versions, как изображено ниже). Затем вы получите параметры для открытия, копирования или восстановления любых файлов из диапазона снимков в вашем расписании.


 3.19 Репликации Rsync

{Прим. пер.: отдавая должное Автору данной книги, вынуждены заметить, что время не стоит на месте, и ZFS обзавелась собственными мощными средствами репликации, которые как тузик грелку рвут в большинстве вариантов использования Rsync по производительности, что обусловлено применением внутренних свойств самих наборов данных и, прежде всего, наличию в них свойства даты рождения. Кроме того, Rsync, например, не позволяет сохранять свойства наборов данных и множество прочих метаданных, включая полномочия, квотрирования и т.п. Собственные репликации ZFS бурно развиваются. В 2016г, например, репликации ZFS обзавелись возможностями возобновления отправки после разрыва связи с точки прекращения, что делает жизнь системных администраторов намного более спокойной. Стоит также отметить возможности автоматизации создания резервных копий при помощи zxfer. За подробностями отсылаем вас к Главе 4. Репликация во второй книге Лукаса и Джуда по ZFS, вышедшей в апреле 2016.
Тем не менее, продолжим перевод.
}

Как уже упоминалось ранее, Rsync является мощной утилитой широко применяемой в сообществе Linux. Это Высокая Доступность (HA) бедных людей без устройств ограждения! Во многих отношениях это лучше! Конечно, у вас не будет милисекундного восстановления после отказов и реальной HA, но вы будете иметь различные копии данных, которые при необходимости могут быть получены очень быстро (в течение 5-10 минут). Наибольшим БОНУСОМ здесь является стоимость! Оборудование с реальным ограждением фермами систем хранения с высокой доступностью будет стоить между $20000 и $100000 в валюте США! {Прим. пер.: здесь можно поспорить с автором: сегодня на рынке присутствуют доступные по стоимости устройства ограждения, обращайтесь!}

Чтобы установить Rsync для первого выполнения убедитесь, что у вас созданы идентичные наборы данных на всех узлах freeNAS. Таким образом, если у вас есть 3 планируемых сервера, то вы должны иметь 3 множества идентичных наборов данных для резервного копирования Rsync. Первичные наборы данных (размещающие рабочие данные) будут настроены как проталкивающие задания Rsync на размещающем рабочие совместно используемые ресурсы узле. Наборы данных резервной копии (исключительно для резервной копии) будут настроены как модули Rsync на любых узлах, которые НЕ размещают рабочие разделяемые ресурсы. При таком подходе все наборы данных реплицируются по всем узлам freeNAS автоматически.

  3.19.1 Добавление задания продвижения Rsync

Давайте добавим задание Rsync для нашего первичного набора данных с именем netbackups! Этот набор данных содержит важные рабочие (live) данные и является местом, в котором Proxmox хранит ВСЕ резервные копии образов ВМ в системе настроенной наподобие (Вариант-2) Оптимизированный для систем хранения с сетевой поддержкой!

Для выполнения кликните System>Rsync Tasks>Add Rsync Task (как показано ниже).


Вы должны теперь увидеть блок диалога задания. Кликните Browse и выберите соответствующий набор данных (как показано ниже).


Отметим (ниже) что я выбрал набор данных netbackups который является вложенным в ds.backups! ЗАМЕТЬТЕ, пожалуйста, что когда работает Rsync, он будет делать резервное копирование всей папки набора данных netbackups. Это ВАЖНО помнить когда вы настраиваете резервные копии наборов данных на других узлах.


Далее вам будет нужно ввести IP адрес удалённого хоста (Remote Hos) и имя удалённого модуля (Remote Module Name). Отметим, я выбрал freenas5.netbackups в качестве имени модуля (как изображено ниже). Это обозначает freenas5 как удалённый модуль, а netbackups как папку набора данных, для которой я выполняю резервное копирование. Теперь если я хочу реплицировать netbackups на другой сервер freeNAS-2, имена модулей уникально идентифицируют каждую репликацию.

Оставим настройку режима Rsync в значении module, а направление (direction) установим в значение Push. Мы можете пожелать ввести описание, которое обозначит частоту резервного копирования.


Далее выберем желательную частоту резервного копирования отрегулировав ползунок (рисунки 1-3 ниже).

[Замечание]Замечание:

Каждые 15 минут может быть слишком часто для хорошей производительности! Это приведено исключительно в качестве примера! Обычно я применяю 1 часдля файлов, которые изменяются часто и 1 день для статичных файлов.

 

Рисунок 1



 

Рисунок 2



 

Рисунок 3



Вы также можете выбрать определённые месяцы (как показано ниже).


И, конечно, определите дни недели (как на снимке ниже).


Пользователем по умолчанию назначен root (как показано ниже). Я НЕ буду менять это пока вы не знаете что вы делаете.


Мне нравится применять набор параметров показанный ниже.



Снимок экрана ниже отображает то, как выглядит таблица работающих заданий Rsync. Эти задания настроены на файловом сервере с именем freeNAS-1, размещающем рабочие данные. Все наборы данных проталкиваются на удалённые модули (Remote Modules) на узлах freeNAS-2 и freeNAS-4 каждый час.


  3.19.2 Добавление модуля Rsync

Давайте сейчас установим модуль Rsync для резервного копирования набора данных на одном из других узлов Proxmox для синхронизации вашего набора данных

Для выполнения кликните Services>Rsync (как показано ниже).

netbackups!


Теперь кликните Add Rync Module (как показано ниже).


Сейчас вы должны увидеть блок диалога модуля (как на снимке ниже). Введите имя модуля из задания проталкивания Rsync, которое вы перед этим настроили freenas5.netbackups. Вы можете захотеть использование того же самого комментария из задания проталкивания Rsync. Оставьте режим доступа (Access Mode) Read/Write, пользователем установите root.

[Замечание]Замечание:

Я добавил адрес IP первичного freeNAS узла с заданием проталкивания в поле Host allow для ограничения доступа.

[Предостережение]ОЧЕНЬ ВАЖНО:

Является критической установка пути к /mnt/pool0/ds.backups а НЕ к /mnt/pool0/ds.backups/netbackups, иначе вы завершите с вложенной копией, которая будет выглядеть как то так: /mnt/pool0/ds.backups/netbackups/netbackups.


Снимок экрана ниже отображает то, как выглядит таблица работающих модулей Rsync. Эти модули настроены на машине с именем freeNAS-4. Все наборы данных проталкиваются с freeNAS-1 каждый час.


  3.19.3 Советы по применению Rsync

Настройка заданий и модулей может быть сбивающей с толку вначале, так что будьте терпеливы и думайте о том, что вы делаете.

  • Помните, что когда вы настраиваете Rsync в режиме проталкивания (применяемом в данной книге) рабочие наборы данных (live datasets) будут иметь задание (Task), а наборы данных резервных копий (backup datasets) будут иметь модуль (Module).

  • Избегайте наличия рабочих наборов данных на всех узлах freeNAS. Вас следует иметь по крайней мере 1 узел freeNAS, на котором НЕ будет размещено рабочих данных. Обычно это означает, что на этой машине НЕ будет заданий проталкивания Rsync.

  • Проверяйте дважды все создаваемые вами задания (Task) и модули (Module). Это позволит вам предотвращать перезапись (overwriting) важных рабочих данных.

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

  • Применяйте продуманную практику наименований во избежание недоразумений.

  • Применяйте выделенные сетевые адаптеры и изолируйте подсеть для впечатляющего улучшения производительности. Вы также можете пожелать ограничить пропускную способность ИЛИ применять виртуальные сетевые адаптеры 100Base для таких выделенных соединений.

 3.20 Членство в домене

Каталог домена содержит центральной базы данных и позволяет НАМНОГО легче управлять пользователями, группами и сетевыми службами. Большая часть доменов управляются Microsoft active directory, работающей на Windows server. В эту книгу я включил альтернативу с открытым исходным кодом которая усиливается мощностью платформы Samba4 работающей на сервере небольшого предприятия Zentyal.

Хотя freeNAS способен взаимодействовать с Контроллером Домена, я предпочитаю применять Zentyal, потому что сохраняет вещи модульными и он может без задержки устанавливаться на управление Master/Slave (Главный/Ведомый). Этот метод является предпочтительным, поскольку он добавляет резервирование центральной базе данных!

Давайте добавим такой freeNAS сервер в домен под управлением Zentyal. В традициях сохранять вещи простыми и совместимости я буду использовать более старый стиль базы данных NT4 (как показано ниже).

Чтобы настроить службу каталога домена кликните System>General, затем выберите NT4 в ниспадающем списке. Не забывайте сохранять настройки!


Далее перейдите в System>Directory Services и кликните на иконку гаечного ключа (как показано ниже).


Сейчас вы должны получить диалог Directory Services (как показано ниже). Введите IP адрес Контроллера Домена вместо имени хоста. Это адрес вашего сервера Zentyal.

[Замечание]Замечание:

Этот адрес также должен быть введён в вашем статичном списке резервирования pfSense DHCP.

[Предостережение]ОБРАТИТЕ ВНИМАНИЕ:

В каталогах на основе NT4 вам НЕ НАДО вводить суффиксы доменов .com, .org, .us и т.п. Кроме того, имя вашей рабочей группы ограничено 15 символами. Я ввёл YOURWEBS для имени рабочей группы, даже хотя мной управляет имя домена YOURWEBS.US (как изображено ниже).


Ранее мы настроили совместный ресурс CIFS (Windows) на вашем новом сервере freeNAS. Когда мы настраиваем машину на участие в домене установки CIFS Workgroup должны соответствовать установкам в службе домена.

Теперь дважды проверьте свои настройки перейдя в Services>CIFS, а затем кликните на иконку гаечного ключа (как показано ниже). Не забудьте сохранить свои изменения!


Теперь вы можете разрешить вашу Cлужбу Каталога (Directory Service) кликнув на выключатель как показано ниже. Когда он станет разрешённым, он подсветится синим цветом.


Завершающим шагом станет перестроение кэша (Rebuild the cach). Перейдите в System>Settings>Advanced, затем кликните Rebuild LDAP/AD Cache в нижней части текущей страницы (как показано ниже).

[Замечание]Замечание:

Иногда для того, чтобы изменения вступили в силу, необходимо перезагрузить сервер..


  3.20.1 Полномочия в домене

Так как ваш сервер теперь стал активным участником домена, вам должны стать доступными дополнительные пользователи и группы в вашем диалоге полномочий для набора данных. Чтобы продемонстрировать это я включил диалог полномочий для ранее созданного нами набора данных netbackups. Отметим дополнительных пользователей в нижней части ниспадающего списка (как на снимке экрана внизу).


В качестве примера я изменил полномочия владельцев для набора данных netbackups (как изображено ниже). При таких новых полномочиях доступ к набору данных будут иметь только администраторы домена.


 3.21 Резервные копии настроек

Помимо применения резервных копий образов ВМ также будет целесообразно сохранять копию настроек freeNAS. Резервная копия настроек особенно важна когда разработчики переписывают сборку таким образом, что некоторые пакеты при обновлении разрушаются. В этом случае ваша резервная копия образа ВМ вернёт только последнюю использованную вами версию. Я не встречал подобного для freeNAS, поэтому не стоит очень сильно беспокоиться! {Прим. пер.: но, "бережёного Бог бережет, сказала монахиня, надевая презерватив на свечку..." }

Для доступа к странице настроек резервных копий кликните System>Settings>General с последующим Save Config (как на снимке внизу).


Когда появится диалог загрузки, сохраните файл настройки на диск (как показано ниже).

[Совет]Подсказка:

Я рекомендую сохранять её копию на флешке!


Восстановление вашего freeNAS должно быть самоочевидным! Просто воспользуйтесь параметром восстановления настройки (Upload Config)!