Перейти к содержимому

True nas что это

  • автор:

Установка и настройка операционной системы TrueNAS на NAS-сервере

RS Raid Retrieve

TrueNAS – одна из оптимальных операционных систем для NAS, ранее известная как FreeNAS. Это бесплатная операционная система, которую можно использовать для работы NAS, собранных самостоятельно. Весомое преимущество TrueNAS – возможность работы с современной производительной файловой системой ZFS. Реализует уникальные конфигурации отказоустойчивых RAID-массивов RAID-Z и RAID-Z2. Как установить TrueNAS на хранилище NAS и как настроить систему для базовых потребностей, а так же как подключить NAS на Windows-компьютере расскажем далее.

Операційна система TrueNAS

Системные требования TrueNAS

TrueNAS – это операционная система для собранных самостоятельно NAS хранилищ.

Системные требования для операционной системы TrueNAS:

  • 64-разрядный процессор Intel или AMD;
  • 8 Гб оперативной памяти;
  • отдельный SSD или HDD, как минимум на 16 Гб, для установки операционной системы TrueNAS;
  • жесткие диски непосредственно для хранилища.

Для хранилища желательно как минимум 2 HDD, чтобы обеспечить отказоустойчивый RAID 1. И желательно, чтобы диски были одинакового объема, еще лучше – одной модели.

Подключать к NAS можно любой объем дисков. Но не забываем, что в режиме BIOS Legacy видимость каждого из дисков ограничена его максимальным размером 2,2 Тб. Чтобы этого ограничения не было, в BIOS должен быть активен режим UEFI.

Дистрибутив TrueNAS

Дистрибутив TrueNAS поставляется в обычном виде установки ISO. Скачать этот образ можно на официальном сайте операционной системы.

Далее ISO-образ необходимо записать на загрузочную флешку. Для записи существует множество программ и утилит. Одна из них проста и удобна — бесплатная Rufus. При создании загрузочной флешки с TrueNAS не забываем о режиме BIOS – Legacy или UEFI. Флешка должна быть адаптирована к BIOS.

Установка TrueNAS

Подключаем к NAS временно монитор и клавиатуру. Запускаем устройство с флешки установки TrueNAS. Процесс установки примитивен, работает только клавиатура. Выбирать пункты меню и разные варианты необходимо стрелками навигации. Подтверждать выбор, то есть нажать «Ok» – клавишей Enter.

На начальном этапе нажимаем Enter, чтобы запустить первый пункт меню «Boot TrueNAS Installer», то есть установку операционной системы.

Установка TrueNAS

Выбираем первый пункт «Install/Upgrade». Enter.

Установка TrueNAS

Перед нами появится список жестких дисков устройства. Выбираем выделенный под ОС диск, на котором будет установлена ОС TrueNAS. Отмечаем его клавишей пробела. Enter.

Как установить TrueNAS

Дальше следует предупреждение о стирании данных на выбранном диске. Выбираем «Yes».

Как установить операционную систему TrueNAS

На этапе создания аккаунта администратора NAS необходимо задать пароль. Имя нам дается дефолтное – стандартное для UNIX-систем root. Оно неизменно. Вводим пароль и подтверждаем его.

Установка операционной системы TrueNAS

Выбираем режим BIOS, под которым будет подстроен TrueNAS. «Boot via UEFI» — это UEFI, а «Boot via BI0S» — это Legacy. UEFI лучше, но если NAS создан на базе процессора и материнской платы менее 10 лет. Если больше, возможно, UEFI не поддерживается, и есть только старый BIOS Legacy. В этом случае выбираем, конечно, Legacy. Enter.

Установка TrueNAS в режиме UEFI

Этап создания файла подкачки размером 16 Гб. Жмем «Create swap».

Файл подкачки TrueNAS

Далее TrueNAS установится.

Как установить TrueNAS

Необходимо перезапустить устройство. Выбираем пункт «Reboot System». Нажимаем Enter.

TrueNAS на NAS своими руками

Вынимаем загрузочную флешку. После того, как TrueNAS полностью загрузится, увидим внутренний локальный IP-адрес устройства NAS. С помощью этого адреса можно удаленно подключиться к устройству для управления.

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

Где IP NAS TrueNAS

Все, после этого монитор и клавиатура NAS не требуются. Мы переходим к компьютеру для удаленного управления хранилищем.

Настройки TrueNAS

Далее на компьютере необходимо настроить TrueNAS, а соответственно настроить хранилище NAS. Удаленное управление им осуществляется через веб-интерфейс. И нам для этой задачи нужен только браузер. В адресной строчке браузера вводим IP-адрес NAS.

Появится форма удаленного подключения к TrueNAS. Авторизируемся – вводим логин root и тот пароль, который указали при создании аккаунта администратора NAS.

Удаленный доступ TrueNAS

Локализация

По умолчанию, язык операционной системы TrueNAS будет на английский. И первым шагом решим вопрос с локализацией. Можно оставить английский или выбрать другой понятный язык.

В разделе «System → General» выбираем язык. Также есть возможность выбрать формат даты и часовой пояс.

Локализация TrueNAS

Создание хранилища

Вторым шагом создадим хранилище NAS. В разделе «Хранилище → Пулы» выбираем «Добавить».

Создание пула в TrueNAS

Создадим пул дисков. Пункт создания пула установлен по умолчанию. Нажимаем «Создать пул».

Создание пула дисков в TrueNAS

Даем название пула. Ставим галочку опции «Show disks with non-unique serial numbers». В блоке отображения дисков слева «Доступные диски» отмечаем галочками диски, которые будут использоваться для хранилища. В нашем случае это 2 одинаковых диска, на базе которых создадим программный отказоустойчивый RAID 1. Далее нажимаем стрелочку вправо.

Добавление дисков в пул в TrueNAS

Она переместит диски в блок справа «VDev данных», то есть в пул. Здесь снова ставим галочки на дисках. И ниже из выпадающего списка выбираем для них тип хранилища, то есть дисковый массив.

TrueNAS предлагает следующие варианты:

  • Чередование (Stripe) – это RAID 0, массив без отказоустойчивости, с удвоенной скоростью обработки данных;
  • Зеркало (Mirror) – это RAID 1, базовый отказоустойчивый массив с клонированием данных на втором диске;
  • RAID-Z – присущий файловой системе ZFS отказоустойчивый массив, усовершенствованный аналог RAID 5;
  • RAID-Z2 — присущий файловой системе ZFS отказоустойчивый массив, усовершенствованный аналог RAID 6.

В нашем случае есть только 2 диска, для них доступны массивы либо чередование, либо зеркало. И мы выбираем отказоустойчивое зеркало. Нажимаем «Создать».

Создание RAID в TrueNAS

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

Добавление общей папки NAS

Теперь организуем общие ресурсы NAS – общую папку, которая будет доступна на компьютерных и мобильных устройствах локальной сети. В конце таблицы пула есть меню, нажимаем его. Выбираем «Добавить набор данных».

Добавить общую папку NAS в TrueNAS

Даем папке название. Тип ресурса указываем SMB. Жмем «Отправить».

Общая папка NAS в TrueNAS

Создание пользователя NAS

Учетная запись пользователя NAS позволит подключаться к общей папке (или другим ресурсам в дальнейшем). Заходим в раздел «Учетные записи — Пользователи». Нажимаем «Добавить».

Пользователь NAS в TrueNAS

Вносим имя пользователя, пароль и подтверждаем его.

Добавление пользователя NAS в TrueNAS

Ниже можно установить вспомогательные группы для этого пользователя. К примеру, ftp. Ставим галочку аккаунта Microsoft, это нужно для Windows. Нажимаем «Отправить».

Как добавить пользователя NAS в TrueNAS

Такие учетные записи должны быть созданы для каждого пользователя NAS. Чтобы каждый человек мог пользоваться ресурсами хранилища индивидуально со своего компьютера или другого устройства.

Общий доступ к NAS

И последний шаг в рамках базовой настройки TrueNAS – это открытие общего доступа к общей папке для Windows с помощью службы Samba (SMB). Это программное обеспечение для взаимодействия Windows и Unix-систем, ведь TrueNAS базируется на последней. В разделе «Общий доступ → Ресурсы Windows (SMB)» нажмите «Добавить».

Общий доступ к NAS в TrueNAS

Раскрываем путь к общей папке, выбираем ее. Подтверждаем кнопкой «Отправить».

Как открыть общий доступ к NAS в TrueNAS

Система запросит включение службы SMB. Нажимаем «Включить службу».

Как включить SMB в TrueNAS

И эта папка появится в числе ресурсов Samba. Настраиваем контроля доступа ACL для этой папки. В ее меню выбираем «Edit Filesystem ACL».

Редактирование ACL в TrueNAS

Для пользователя-администратора NAS root даем все права для всех групп (права на чтение и запись данных). Нажимаем «Select an acl preset».

Права пользователей в TrueNAS

Далее указываем параметр ACL «Open». Нажимаем «Продолжить».

Права пользователей в TrueNAS

Подключение NAS в Windows

Чтобы работать с NAS в среде Windows, необходимо подключить хранилище. Вводим в адресную строку проводника IP-адрес NAS через двойной слэш.

Авторизуемся с использованием аккаунта пользователя NAS. Можно установить галочку запоминания авторизации. Нажимаем «Ок».

После этого NAS и его общие ресурсы будут доступны нам в блоке проводника «Сеть».

Можно подключить каждую папку NAS как отдельный диск со своей буквой. На объекте «Этот ПК» жмем контекстное меню. Выбираем «Подключить сетевой диск». Но в Windows 11 сначала нужно выбрать «Показать дополнительные параметры».

Выбираем букву диска для NAS. С помощью кнопки обзора указываем путь к папке. Нажимаем «Готово».

После этого папка будет доступна в проводнике как отдельный диск и как сетевое расположение.

Восстановление данных с TrueNAS

Важный нюанс в работе NAS – возможность восстановления удаленных данных. Потерянные из-за ошибочного удаления или выхода из строя дисков хранилища.

Часто задаваемые вопросы

Почему именно TrueNAS?

Это бесплатная специализированная операционная система NAS. Минималистичная и эффективная. С производительной файловой системой ZFS. С современным интерфейсом. Поддерживается и развивается. Есть сообщество поддержки.

Подходит ли мне TrueNAS?

Да, если не проблема, что для работы этой операционной системы нужен отдельный жесткий диск с минимальным объемом. И если аппаратное NAS базируется на процессоре Intel или AMD, а не, например, ARM.

Что нужно для настройки NAS на TrueNAS?

Необходимо скачать образ установки TrueNAS, записать его на флешку, установить систему с флешкой. Затем удаленно подключиться к TrueNAS с компьютера и пошагово настроить ее, как описано в этой статье.

Что необходимо для подключения NAS на базе TrueNAS в среде Windows?

Необходимо ввести в проводник Windows IP-адрес NAS, дописав впереди двойной слэш (\\). И авторизироваться пользователем NAS.

TrueNas: когда Nas реально ТРУ

Как то раз надо было быстро создать iSCSI диск для тестирования Fault Tolerance в ESXi. Быстрый гуглёж показал, что есть такая штука, как FreeNas, которая уже TrueNas. Установил по мануалу. Так и не смог понять, почему при создании пула съедался заметный процент объёма диска, но было не до этого. Тестирование провёл, виртуалки удалил. А через небольшой промежуток времени на работе стало не хватать скорости двух NAS от QNAP (один старый, другой изначально убогий). Вот тогда, глядя на недавно потушеный за ненадобностью Dell R710 с корзиной на 6 sata/sas 3.5” дисков и вспомнили, что есть же какой-то TrueNas, который почему-то хвалят.

По сути это рассказ о том, как от состояния “первый раз услышаю об этом” до внедрения прошло пару месяцев. Поэтому тут будут как технические детали, так и совсем очевидные моменты, с которыми мы столкнулись.

Задача:

Без больших трат, желательно используя то, что уже есть, получить адекватную скорость для хранилища бекапов (SQL, бекапы ESXi машин), сетевых дисков iSCSI и хорошую сетевую папку для ~50 пользователей с настройкой прав доступа на основе AD. В идеале, чтобы когда пользователь работает с поиском через проводник в сетевой папке, скорость не отличалась от поиска на локальном диске.

Что имеем:

Сервер с быстрыми в своё время процессорами, который сейчас оказался не у дел. Продавать его за гроши на барахолке смысла нет, а вот придумать ему разумное применение, почему бы и да!

  • CPU 2x Intel Xeon X5650. 6 core up to 3,06 GHz
  • RAM 48Gb DDR3 ECC
  • SSD 256Gb SATA3 загрузочный, вместо DVD привода
  • HDD 6x 3Tb Toshiba P300 SATA3
  • RAID controller PERC H700
  • Блоки питания 2 по 550W

Сейчас у кого-то начинает дёргаться глаз от этой солянки из серверного и откровенно домашнего железа. В разделе о файловой системе будет объяснение, почему такая конфигурация имеет право на жизнь. Ну и не забываем про задачу использовать то, что есть в наличии.

Что по деньгам:

Если собирать что-то подобное с нуля, то шасси сервера можно найти Б/У начиная от 14000 руб, процессоры с 6 ядрами около 600 рублей за штуку на Али (при этом в Б/У шасси уже часто стоят вполне нормальные CPU на 4-6 ядер). Память тоже на Али по цене около 1000 рублей за 8Gb. Мы много раз докупали память для серверов на Али и пока что брака не встречали. Но чтобы не терять время, всегда берём чуть больше планок, чем нам надо, чтобы в случае брака сразу иметь замену.

HDD мы покупали прям перед волной популярности Chia, когда цены на них ещё не превысили планку адекватности. Покупали диски SATA для QNAP хранилища (наши QNAP не умели в SAS). Но когда на первичную синхронизацию RAID5 массива из 4-х 3Tb дисков ушло больше суток, поняли, что надо искать альтернативу. Поэтому, что было куплено, то и решили использовать в TrueNas. Искать другие новые диски в мае 2021 года было бессмысленно.

Актуально на 4й квартал 2022:

  • Шасси: 14000 рублей
  • Процессоры: 0-1200 рублей
  • RAM: 48Gb DDR3 ECC 6000 рублей
  • Диски: 3Tb SATA 7200rpm 6*8000 рублей
  • SSD для загрузки: 1500 рублей

Итого 70700 рублей.

В нашем случае докупили RAM и загрузочный SSD примерно на 3000 рублей, что соответствует ТЗ: потратить как можно меньше.

Да, итог в 70 килорублей это поболе, чем воткнуть внешний HDD за 2500р в Keenetic и включить галочку CIFS/SMB в Web интерфейсе. Но давайте посмотрим, что мы получаем.

Сначала минимум теории:

Она же “Zettabyte File System”. Это файловая система, которая работает по принципу Copy-On-Write. Тут повторять статью из Wiki нет смысла, поэтому вот она.

Пул из дисков, отформатированных в ZFS. Цифра после Z означает степень отказоустойчивости. Мы разметили диски в RAIDZ1, поэтому при умирании одного дисков из 6, пул остаётся работоспособным.

Итог применения ZFS №1: почему можно использовать SATA диски

В отличие от SATA, SAS поддерживает проверку контрольных сумм при записи данных, поэтому он является более предпочтительным для использования в корпоративном секторе, где сохранность данных намного важнее, чем дома (общий случай).

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

Итог применения ZFS №2: нужно больше золота больше оперативки

Крайне желательно ECC. Минимумом по системным требованиям является 8Gb, но и на 4Gb стартует, на меньшем объёме не тестировал. Система всегда занимает всю свободную оперативку под кэш ZFS и чем её больше изначально, тем лучше (в пределах разумного).

Итог применения ZFS №3: нужно резервировать место на дисках

Из-за принципа работы, файловой системе всегда нужно свободное место на дисках для манёвра. Поэтому при создании пула резервируются минимум 20% свободного места. И это помимо того, что мы теряем объём одного диска из-за отказоустойчивости RAIDZ1! УЖАС! (на самом деле нет)

Как проводили тесты перед запуском:

Перед внедрением надо было провести тесты, чтобы изучить незнакомую технологию и знать, как она поведёт себя в бою. Особенно если учесть, что раньше мы с этим не работали. И хотя это не единая точка отказа всего бизнеса, и цена данных не такая, чтобы покупать многомилионные СХД, устраивать бета тестирование на пользователях не было желания.

Что мы проверили:
  1. Выдёргивание дисков из сервера на горячую, во время передачи данных (во время тестирования использовали RAIDZ2, поэтому пул выдерживал выдёргивание двух дисков, по итогу остановились на RAIDZ1 для увеличения доступного места). Этим тестируем физическое умирание дисков (в TrueNas используется термин пул, а не массив, как в случае с RAID).
  2. Подключение дисков назад в пул и их синхронизация.
  3. Восстановление конфигурации из бекапа в случае умирания загрузочного SSD.
  4. Отключение сервера из сети питания на разных этапах работы и загрузки, чтобы проверить и знать на будущее, с чем мы можем столкнуться, если ИБП подведёт.
  5. Введение и выведение из домена.
  6. Обновление версии TrueNas. То есть мы специально поставили более старую версию, а потом обновили до актуальной, чтобы не было сюрпризов.
Что получили по итогам тестирования (по пунктам):
  1. При выдёргивании дисков скорость не просела ни на 1 Mb/s, потому что и так упиралась в сетевой интерфейс (1Gbit/s).
  2. Подключение дисков назад в пул в нашем случае невозможно без перезапуска сервера. Это особенность RAID контроллера, который не умеет работать с дисками иначе, кроме RAID конфигураций. Поэтому пришлось размечать диски как 6 RAID0 массивов с 1 диском в массиве. Сам TrueNas подключение на горячую поддерживает. После пересоздания RAID0 массива из выдернутого диска, он появляется в системе и начинается синхронизация пула, которая в нашем случае не повлияла на скорость проводившихся тестов (у сервера получился большой запас по мощности). Не так, как хотелось бы, но терпимо. Если умер диск, мы можем дотянуть до ночи и поменять ночью. Если умрёт сразу 2, забираем дополнительные бекапы критических данных с QNAP, которые делаются по rsync, об этом дальше.
  3. Снесли систему с SSD, установили заново и подали файл конфигурации в нужное меню. Без сюрпризов.
  4. Никаких проблем с разваливанием пула или чем-то подобным. Выдёргивали питание при загрузке/работе/завершении работы. Проблем не возникло.
  5. Делается за пару минут. Проблема в том, что после перезагрузки TrueNas получается как бы в домене, а как бы и нет. Приходится выводить его и заводить заново. Починили в версии 12.0 U8 (последняя из 12 версии. Сейчас актуальная 13, но с пометкой “Community Release Only — Not Enterprise Supported.”)
  6. Ни разу не получали проблем с этим ни при тестировании, ни при обновлении в бою.

Дополнительные функции TrueNas

Виртуальные машины

На TrueNas можно запускать полноценные виртуальные машины. По сути это FreeBSD с оболочкой, так что тут всё не сильно отличается от запуска виртуалок на любом другом linux. Сфера применения в нашем случае сомнительна, так как рядом есть сервера на ESXi. Но если это единственный сервер, или домашний сервер, то можно запустить внутри, например, veeam backup на windows, который будет в привычном интерфейсе забирать бекапы с компов в сети внутрь TrueNas.

Jail контейнеры

Jail в FreeBSD это механизм виртуализации, при котором используется ядро хостовой ОС (аналог OpenVZ). Есть свой репозиторий, в котором куча удобных настроенных Jail’ов (Plex, Transmission, Zabbix Server, OpenVPN Server, и т.д.). Лично мне приглянулся NextCloud. Если совсем упороться, можно поднять свой «Google Photo» с распознованием лиц на фотографии. Но нужна карточка с CUDA.
UPD: как заметил @unC0Rr, CUDA не работает в FreeBSD, так что без дополнительных прослоек распознавать лица не получится именно из jail плагина.

Rsync с TrueNas на QNAP

По расписанию особо важные данные синхронизируются с простеньким QNAP. Из коробки настройка rsync между двумя TrueNas не должна вызвать вопросов, но в нашем случае (rsync TrueNas > QNAP) пришлось пользоваться велосипедом с подсовыванием в аргументах задания txt файла с паролем на учётку для синхронизации. Есть ещё способ с ключами, но нужна адекватная поддержка с принимающей стороны, а QNAP у нас самый простенький (D4 первой ревизии). Если что-то пошло не так, в почту прилетает уведомление.

Приятные бонусы, которые мы получили

Большое сжатие баз SQL

Так как ZFS всегда “пишет вперёд”, это позволяет на лету сжимать данные. Даже при использовании стандартных настроек (lz4 без дедупликации), мы получили замечательные результаты. Бекапы баз 1С (Microsoft SQL) сжимаются более чем в 3,5 раза! То есть те 20%, что резервируются для полноценной работы файловой системы тут же с лихвой отыгрываются при хранении баз данных. Понятно, что это не применимо к уже сжатым данным, например фото, видео, или бекапы Veeam, там выигрыш составляет 0-5%.

Примерный расчёт, сколько места мы получили бы при RAID5 в EXT4 и при RAIDZ1 в ZFS:

RAW space: 6*2,73Tb = 16,38Tb

RAID5: (6-1)*2,73Tb = 13,65Tb

RAIDZ1: (6-1)*2,73Tb — 20% = 10,92Tb

Сейчас у нас занято 6,07Tb с компрессией 2,01, или 12,2Tb без компрессии!
То есть в случае с RAID5 свободно осталось бы 1,45Tb, а в случае RAIDZ1 свободно 4,85Tb (Свободный объём на скриншоте указан без учёта -20%). А при нашем сценарии использования это почти 4,85*2!

Snapshot в ZFS

Создание snapshot происходит мгновенно. Потом мы можем увидеть эти снимки в разделе «предыдущие версии» прямо в проводнике windows, если речь о SMB, или создать новый том из снимка, если это том для iSCSI.

Предыдущие версии на основе снимков в проводнике

Плюсы и минусы

Начну с плюсов
  • Это БЫСТРО! Если говорить о SMB, то скорость передачи всегда упирается в сетевой интерфейс, а переназначение прав на папки с тысячами файлов занимает секунды (а не десятки часов(!), привет QNAP’у D4). Поиск по папкам происходит достаточно быстро, чтобы пользователи не замечали разницы между локальной папкой и сетевой, проверено (но понятно, что на системном SSD на рабочих станциях ищет быстрее).
  • Это достаточно быстро, чтобы держать тестовые базы 1С на 100+ Gb на iSCSI и не страдать. Да, это медленнее, чем SAS диски на 15000rpm, подключенные напрямую в основных серверах, но для тестов хватает.

Слева тест на физическом HDD в моём компьютере, а справа iSCSI диск

  • Удобная настройка расписания создания и удаления периодических snapshot. Теперь мы храним множество снимков: от ежедневных вплоть до полугодовых (с разной длительностью хранения).
  • 2 блока питания в сервере позволяет подключить его к разным ИБП и свести проблемы с выключением по питанию практически к нулю.
  • Это полноценный сервер и мы имеем управление через iDRAC, что даёт ещё больше контроля удалённо.
  • Пока что ни один диск не отвалился, но на будущее неожиданным плюсом стало то, что купить запасные диски домашнего сегмента из-за проблем с доставкой в 2022 году оказалось намного реальнее, чем серверные SAS (по крайней мере в наших краях).
Минусы
  • Сеть 1Gbit/s. Но можно установить другую сетевую карту, или объединить несколько карточек из 4х для суммирования скорости.
  • Для настройки иногда приходится лезть в командную строку, что может быть проблемой для людей не знакомых с linux (да ещё и часть команд отличается от debian-based linux типа Ubuntu).
  • Это сервер и он ШУМНЫЙ! У нас он и так был установлен в серверной, но если отдельного помещения нет, то использовать 2U сервер в тихом офисе не лучшая идея.
  • QNAP D4 потребляет около 30Вт в работе. Тут же мы имеем среднее потребление порядка 180-200Вт судя по панели сервера при типичной для наших задач нагрузке. Мощность процессоров явно избыточна для простого, пусть и быстрого NAS и можно брать процессоры попроще, или с пониженным потреблением, если нет цели гонять кучу плагинов в Jail или виртуалок.
Итог

Не стоит воспринимать этот кейс пример как единственно правильный. Тут много условностей, которые в другом случае стали бы критичными. Но для себя мы нашли такую конфигурацию, пожалуй, лучшей на данный момент. Если у вас есть интересные случаи применения TrueNas, или советы по улучшению описанной конфигурации, будет интересно почитать.

Не могу не рассказать о великолепном канале о TrueNas: LawrenceSystems. Очень много полезной и просто интересной информации о FreeNas/Truenas

TrueNAS. Его установка и настройка

Статья также доступна на украинском (перейти к просмотру).

Оглавление

  • Основные преимущества и применение
  • Системные требования
  • Установка TrueNAS
    • Получение установочного файла
    • Выбор и подготовка загрузчика системы
    • Предварительные настройки локального устройства
    • Запуск процесса инсталляции и его сопровождение
    • Формирование сетевой конфигурации системы в режиме реального времени
    • Вход в систему
    • Настройка хранилища данных

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

    Основные преимущества и применение

    TrueNAS (Network Attached Storage) является инструментом организации хранилища массивов данных, подключаемого к сети, как правило, локальной. Система построена на базе облегченной версии операционной системы FreeBSD и способна обеспечить обмен данными с помощью многих высокоуровневых протоколов – SMB, NFS, AFP и других.

    В отличие от своего ближайшего «конкурента» – системы SAN (Storage Area Network), обеспечивающей работу с данными на уровне дисковых единиц хранения данных, TrueNAS «работает» на файловом уровне, что увеличивает качество работы с данными по многим направлениям. В частности, дисковый массив данных любой величины может быть представлен в виде единого логического блока, оптимизирующего работу с данными и повышающего надежность системы.

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

    Система может быть использована:

    • Как замена традиционных серверов хранения информации;
    • В кластерных системах;
    • Как online backup для восстановления данных после сбоя;
    • Мини-серверы, интегрированные со вспомогательными службами – почтовый сервер, медиа-центр, центр видеонаблюдения и многие другие варианты приложений.

    Системные требования

    Как и любое программное обеспечение, TrueNAS предъявляет определенный набор минимальных требований к значениям параметров и типам разрешенного аппаратного обеспечения серверного оборудования. Приведем эти требования в Таблице 1.

    Таблица 1. Минимальные требования TrueNAS.

    Ресурсы Значения Коментарии
    Процессор (CPU) 64 Bit
    Память (RAM) 8 GB Рекомендовано 16 GB
    Диск (Boot Drive) 16 GB Рекомендовано SSD
    Диск (Attached Disk) 1 шт
    Порты (Network Port) 1 шт
    Масивы данных (RAID) 1 — ∞ шт Аппаратная виртуализация не рекомендуется
    Тип браузера для доступа Edge, Chrome, Firefox Допускается любой из рекомендованных

    Установка TrueNAS

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

    1. Получение установочного файла;
    2. Выбор и подготовка загрузчика системы;
    3. Предварительные настройки локального устройства;
    4. Запуск и сопровождение процесса инсталляции;
    5. Формирование сетевой конфигурации системы в режиме реального времени.

    Получение установочного файла

    Файл программы в формате ISO можно получить на официальном сайте ее разработчиков по этому адресом. После регистрации на сайте становится доступной ссылка для его скачивания, как показано ниже (кнопка Download Now).

    Страничка загрузки образа

    После сохранения файла с именем TrueNAS-12.0-U7.iso на нашем локальном устройстве переходим к выбору загрузчика.

    Выбор и подготовка загрузчика системы

    Загрузить полученный файл на локальном устройстве можно двумя путями – с помощью заранее подготовленного носителя – загрузчика или с помощью инструмента IPMI (Intelligent Platform Management Interface), позволяющего управлять загрузкой файла на локальном устройстве.

    Выбираем первый путь, где в качестве загрузчика системы будет устройство USB. Для его подготовки и записи файла TrueNAS-12.0-U7.iso воспользуемся одной из известных служебных программ Rufus версии 3.17, как показано на изображении. В открывшемся окне программы выбираем тип устройства, метод загрузки, параметры форматирования и нажимаем кнопку Старт.

    Подготовка загрузчика системы

    Через несколько минут устройство готово к использованию в качестве загрузчика. Но перед этим необходимо выставить некоторые параметры загрузки на нашей машине, выполняющей функции NAS-серверу.

    Предварительные настройки локального устройства

    Вставим USB-накопитель в один из разъемов нашего устройства и включим питание. Прежде всего, нам нужно войти в BIOS/UEFI материнской платы компьютера, чтобы сформировать необходимую среду для нашего загрузчика. Для этого могут использоваться клавиши Del, F2, F12 или другие в зависимости от типа материнской платы устройства.

    После загрузки в BIOS/UEFI нужно выяснить, поддерживается ли параметр SecureBoot, и, если поддерживается, то необходимо установить для него значение «Другая ОС» или вообще отключить, иначе вы не сможете загрузиться.

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

    Итак, сохраним внесенные изменения и продолжим процесс загрузки, но уже с нашего USB-накопителя.

    Запуск процесса инсталляции и его сопровождение

    После продолжения установки на экране появится окно установщика TrueNAS со списком возможных вариантов загрузки программы и действий. С помощью клавиши Enter выберем первый вариант – Boot TrueNAS Installer,

    Инсталлятор TrueNas

    Инсталлятор TrueNas

    В результате после нескольких экранов с информацией о настройке параметров появится окно со списком возможных действий. Выберите команду Install/Upgrade и нажмем кнопку ОК.

    Окно списка действий

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

    Окно вибора диска

    После этого появится предупреждение об удалении данных из всех разделов выбранного носителя в случае продолжения процесса инсталляции. Кроме того, сообщается, что мы не сможем использовать выбранный носитель для обмена данными. Соглашаемся нажатием кнопки Yes и идём дальше.

    Окно подтверждения инсталяции

    Далее нам будет предложено ввести пароль для root юзера системы, что мы и делаем.

    Окно создания пароля root

    На следующем этапе нам будет предложено выбрать режим загрузки ОС TrueNAS, которых может быть два – UEFI или BIOS. Для нашей машины подходит режим BIOS, поэтому выбираем его с помощью щелчка соответствующей кнопки в правой части окна.

    Окно вибора режима загрузки

    После этого в автоматическом режиме запускается сам процесс развертывания системы на диске, что продемонстрировано ниже.

    Окно процесса инсталляции

    Окно процесса инсталляции

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

    Окно успешного завершения инсталляции

    Удаляем устройство USB и нажимаем ОК. В появившемся окне выбираем команду Reboot System и нажимаем ОК.

    Окно со списком действий

    После этого процесс перезагрузки системы последовал.

    Формирование сетевой конфигурации системы в режиме реального времени

    При первой загрузке появляется окно приглашения в TrueNAS и несколько экранов с отображением процесса загрузки системы, как показано ниже.

    Окно приглашение в систему TrueNas

    Окно процесса загрузки системы

    В конечном счете мы получаем постоянный экран консоли управления со списком команд для настроек конфигураций различных служб системы, в частности, сетевого интерфейса, роутеров, DNS и других. В конце экрана выводится IP-адрес сервера, который в автоматическом режиме формируется службой DHCP для действующего сетевого интерфейса. При необходимости ее можно легко изменить с помощью первой команды из списка консоли управления.

    Консоль со списком команд

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

    Окно интерфейса посля ввода номера действия

    Окно интерфейса посля ввода номера действия

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

    Удаленное управление ОС TrueNAS

    Система ориентирована на ее использование в качестве надежного хранилища данных в пределах сетей разного уровня – от локальной до глобальной. И, поэтому, актуален вопрос организации удаленного доступа к ней с любой точки сети, к которой подключено устройство с ОС TrueNAS.

    Вход в систему

    Подключиться к панели инструментов TrueNAS мы можем с помощью веб-интерфейса с использованием протокола http или его защищенного варианта. Для подключения к веб-интерфейсу можно вводить имя хоста и домена, установленные в настройках конфигурации или IP-адрес сервера. По умолчанию, TrueNAS настроен на использование имени хоста и домена truenas.local, то есть именно это имя можно вводить в браузере вместо IP-адреса.

    Итак, попытаемся подключиться. Для этого введем в адресной строчке браузера настроенный нами IP-адрес сервера и подтвердим свой выбор. В результате откроется окно входа, как показано ниже.

    Для входа нам нужно будет заполнить два поля – имя пользователя и пароль. Именем по умолчанию является администраторское root. Пароль мы создали при установке системы на локальном устройстве. Вводим эти значения и подтверждаем их нижней кнопкой.

    Окно авторизации

    В результате попадаем в системную Панель инструментов TrueNAS или Dashboard.

    Панель инструментов TrueNas

    Здесь предоставляется информация о версии программы, использовании компонентов программы и объеме сетевого трафика. В правой части окна, информация о системе и ее настройках разбита на блоки. Например, присутствует блок с общей информацией о системе, блоках для процессора и памяти. Отдельно выделенные сегменты посвящены настроенным пулам данных и интерфейсам.

    В левой части главного окна Панели инструментов расположено меню с набором команд для конфигурации системы и ее режимов работы. Так, для того чтобы изменить установленные по умолчанию значения имени хоста и домена, можно воспользоваться командой левого меню: Network >Global Configuration, где и задать нужные значения.

    Меню панели инструментов TrueNas

    Настройка хранилища данных

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

    Для этого случая требуется наличие у NAS-сервера минимум двух дисков одинаковой емкости.

    Создадим пул данных с помощью пул-менеджера программы (Pool Manager). Для этого выберите команду левого меню Storage > Pools (см. изображение выше) и нажмем кнопку ADD. Установим опцию Create a new pool и кликнем по кнопке CREATE POOL.

    В открывшемся окне Pool Manager заполним поля необходимыми значениями (см. изображение).

    Окно Pool Manager

    Для поля Name подойдет любое имя. Мы выбираем имя tank.

    В разделе со списком доступных дисков (Available Disks) необходимо выбрать два одинаковых диска и с помощью мыши переместить их в область данных Data VDevs. Следует отметить, что если любой из подключенных дисков имеет не уникальный серийный номер, то для того чтобы он отображался в разделе, необходимо включить опцию Show disk with non-unique serial numbers. Выбираем диски ada2 и ada3 с емкостью 2,73 тэбибайта и перемещаем их в область Data VDevs (см. изображение ниже).

    Изменение настроек в окне Pool Manager

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

    После ознакомления с расчетной емкостью для данных в поле Estimated total raw data capacity, кликаем мышью по кнопке CREATE, то есть создаем наш пул. В результате добавленные нами диски очищаются и пул с именем tank автоматически добавляется в список Storage > Pools (см. изображение ниже).

    Создание пула

    Все пулы, создаваемые Администратором, имеют корневую файловую систему, которая в дальнейшем позволяет создавать на ее базе новые пулы с новыми файловыми системами. Такие новые пулы, по сути, представляют собой виртуальные блочные устройства с заранее заданным объемом хранилища. Они получили название Zvol.

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

    То есть, такие Zvol-блоки сопоставимы с дополнительными плагинами, реализующими ту или иную функцию обмена данными в системе.

    К примеру, создадим Zvol на базе нашего пула. Для этого перейдем в раздел Pools со списком пулов с помощью команды Storage > Pools. Сделаем клик мышью по трем точкам в правой части окна и в появившемся меню выбираем команду Add Dataset (см. изображение).

    Создание Zvol на базе пула

    Также можно было использовать команду Add Zvol.

    Выводы

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

    Если вам нужен сервер для использования TrueNas, дата-центр FREEhost.UA может предложить вам подходящую конфигурацию сервера для аренды. Размещение сервера в дата-центре имеет множество преимуществ по сравнению с размещением сервера в офисе. Основные из них: гарантированное электропитание с резервированием, качественный Интернет с резервированием каналов связи, постоянная температура и влажность, круглосуточная поддержка, гарантия замены оборудования в случае выхода из строя. Посмотреть конфигурации серверов для бекапа Вы можете по ссылке.

    Подписывайтесь на наш телеграм-канал https://t.me/freehostua, чтобы быть в курсе новых полезных материалов.

    Мы в чем-то ошиблись, или что-то пропустили?

    Напишите об этом в комментариях на сайте и в телеграм-канале. Мы с удовольствием ответим и обсудим Ваши замечания и предложения.

    TrueNAS, TrueNAS или OMV? Выбираем софт для сетевого хранилища

    При всем богатс­тве выбора готовых сетевых хра­нилищ от круп­ных про­изво­дите­лей энту­зиазм жела­ющих соб­рать и нас­тро­ить свой собс­твен­ный NAS не исся­кает. Сегод­ня, пожалуй, луч­шее вре­мя для того, что­бы это сде­лать. От воз­можнос­тей бук­валь­но раз­бега­ются гла­за: TrueNAS Core, TrueNAS Scale, openmediavault, а так­же вари­анты для спе­цифи­чес­ких сце­нари­ев исполь­зования Unraid и SnapRAID. Все вари­анты по‑сво­ему хороши и обла­дают при этом сво­ими спе­цифи­чес­кими осо­бен­ностя­ми. Что из это­го подой­дет тебе? Поп­робу­ем разоб­рать­ся.

    TrueNAS Scale, TrueNAS Core и openmediavault

    Еще недав­но при нас­трой­ке нового сетево­го хра­нили­ща у поль­зовате­лей самос­борных NAS было две основные воз­можнос­ти: FreeNAS и openmediavault. Инте­рес­на исто­рия этих про­ектов. FreeNAS был выпущен в 2005 году раз­работ­чиком Оливье Кошар‑Лаб­бе (Olivier Cochard-Labbé), который со вре­менем потерял инте­рес к про­екту. К 2009 году единс­твен­ным активным раз­работ­чиком FreeNAS остался Фоль­кер Тай­ле (Volker Theile), пред­ложив­ший перевес­ти про­ект на осно­ву Linux вмес­то исполь­зовав­шей­ся на тот момент m0n0wall, осно­ван­ной, в свою оче­редь, на embedded FreeBSD. Оливье перево­дить про­ект на новые рель­сы отка­зал­ся, и Фоль­кер покинул FreeNAS, соз­дав новую сис­тему openmediavault на осно­ве Debian Linux. Оливье же передал пра­ва на FreeNAS аме­рикан­ской ком­пании iXSystems, которая и занима­ется раз­работ­кой и прод­вижени­ем про­екта.

    info

    Мир тесен: openmediavault раз­рабаты­вает­ся и под­держи­вает­ся быв­шим клю­чевым раз­работ­чиком FreeNAS.

    Со вре­менем под управле­нием iXSystems выш­ла ком­мерчес­кая вер­сия — TrueNAS. Еще чуть поз­же вет­ки бес­плат­ного FreeNAS и ком­мерчес­кого TrueNAS были объ­еди­нены, а сов­сем недав­но уже объ­еди­нен­ный TrueNAS вновь раз­делил­ся на два про­екта: осно­ван­ный на FreeBSD TrueNAS Core и TrueNAS Scale, работа­ющий на Debian 11 (Bullseye).

    Та­ким обра­зом, на сегод­няшний день выбор сто­ит меж­ду тре­мя похожи­ми, но очень раз­ными сис­темами: TrueNAS Core, TrueNAS Scale и openmediavault. Для начала при­веду таб­лицу, в которой срав­нива­ются выб­ранные мной клю­чевые парамет­ры трех сис­тем.

    (* Миг­рация зашиф­рован­ных GELI томов опи­сана в докумен­тации)

    А теперь — рас­шифров­ка таб­лицы.

    Разработчик

    Обе сис­темы дос­тупны как в виде готовых дис­три­бути­вов, так и в виде откры­того исходно­го кода. Обе вер­сии TrueNAS раз­рабаты­вают­ся и под­держи­вают­ся ком­пани­ей iXSystems, которая зараба­тыва­ет на лицен­зирова­нии ком­мерчес­кой вер­сии сис­темы (в том чис­ле дос­таточ­но круп­ным ком­пани­ям), про­даже готовых NAS с пре­дус­танов­ленной сис­темой TrueNAS и ока­зании услуг под­дер­жки и соп­ровож­дения.

    Openmediavault раз­рабаты­вает­ся единс­твен­ным раз­работ­чиком Фоль­кером Тай­ле, а под­дер­жка осу­щест­вля­ется через форум. К сло­ву, мне довелось пооб­щать­ся с Фоль­кером; отме­чу дру­желю­бие и про­фес­сиона­лизм раз­работ­чика, который не получа­ет за работу ни цен­та.

    Базовая ОС и внешний вид

    Все три сис­темы явля­ются надс­трой­ками над UNIX-подоб­ными сис­темами. TrueNAS Core работа­ет на FreeBSD со все­ми ее осо­бен­ностя­ми (отме­чу монолит­ные обновле­ния и собс­твен­ный, отличный от Linux стек драй­веров), пре­иму­щес­тва­ми и недос­татка­ми (наибо­лее зна­чимы сре­ди них, пожалуй, отсутс­твие под­дер­жки Docker и несов­мести­мость с некото­рыми популяр­ными и недоро­гими 10-гигабит­ными сетевы­ми кар­тами и кар­тами HBA).

    TrueNAS Scale, нап­ротив, осно­вана на акту­аль­ной вер­сии Debian 11, что поз­волило добить­ся как под­дер­жки несов­мести­мых с TrueNAS Core карт рас­ширения, так и кон­тей­неров Docker.

    По умол­чанию в TrueNAS уста­нов­лена тем­ная тема интерфей­са.

    При желании мож­но перек­лючить­ся на свет­лую или соз­дать собс­твен­ную.

    OMV тес­но интегри­рует­ся с Debian Linux. OMV 4.x работа­ет поверх Debian 9, акту­аль­ная OMV 5.x исполь­зует Debian 10, а OMV 6 (на сегод­ня име­ет ста­тус тес­товой сбор­ки) — Debian 11.

    В OMV 4 и 5 дос­тупна единс­твен­ная свет­лая тема.

    В OMV 6.0 интерфейс был изме­нен.

    Установка, настройка и особенности организации хранилища

    Ус­танов­ка всех опи­сан­ных вари­антов доволь­но прос­та: дос­таточ­но ска­чать дис­три­бутив для нуж­ной плат­формы, соз­дать заг­рузоч­ный накопи­тель и заг­рузить­ся с него. Одна­ко для openmediavault дос­тупен и аль­тер­натив­ный спо­соб уста­нов­ки — поверх уже нас­тро­енной вер­сии Debian (на Debian 9 мож­но уста­новить OMV 4.x, а на Debian 10 — 5.x).

    А вот с соз­дани­ем мно­годис­кового мас­сива у неопыт­ного поль­зовате­ля TrueNAS могут воз­никнуть слож­ности. Если OMV исполь­зует стан­дар­тный для Linux и всем при­выч­ный mdadm для соз­дания и управле­ния RAID, то ZFS в TrueNAS — это не толь­ко фай­ловая сис­тема, но и низ­коуров­невый менед­жер мно­годис­ковых кон­фигура­ций. Стан­дар­тные уров­ни RAID в ZFS отсутс­тву­ют; вмес­то них исполь­зуют­ся фун­кци­ональ­ные ана­логи. Так, ана­логом RAID 5 будет RAID-Z1, а ана­логом RAID 6 — RAID-Z2. Z1 и Z2 ука­зыва­ют на уро­вень избы­точ­ности и озна­чают количес­тво дис­ков в мас­сиве, которые могут вый­ти из строя без потери дан­ных: в мас­сиве RAID-Z1 без потери дан­ных может вый­ти из строя любой один диск, а в RAID-Z2 — любые два.

    Од­нако на этом слож­ности толь­ко начина­ются. Дис­ковый мас­сив фор­миру­ет один vdev (virtual device); один или нес­коль­ко vdev фор­миру­ют пул (zpool), на котором, в свою оче­редь, мож­но соз­дать один или нес­коль­ко логичес­ких раз­делов (dataset в тер­минах ZFS). (О тополо­гии ZFS почитать мож­но, нап­ример, здесь.)

    В срав­нении со стан­дар­тным mdadm такая орга­низа­ция слож­нее для понима­ния, одна­ко она обес­печива­ет отличную гиб­кость. Так, мож­но соз­дать пул из трех дис­ков, сфор­мирован­ных в мас­сив RAID-Z1, а потом рас­ширить его еще тре­мя дис­ками, так­же сфор­мирован­ными в RAID-Z1, при­чем раз­меры изна­чаль­ного и добав­ленно­го поз­днее vdev могут не сов­падать. Это, безус­ловно, удоб­но и соз­дает иллю­зию бес­конеч­ных воз­можнос­тей рас­ширения. Увы, имен­но иллю­зию.

    На сегод­няшний день в TrueNAS не под­держи­вает­ся рас­ширение объ­ема хра­нили­ща на уров­не vdev. Ты можешь рас­ширить пул (zpool), добавив к нему еще один vdev, сфор­мирован­ный из любого количес­тва дис­ков в любой под­держи­ваемой кон­фигура­ции, но рас­ширить дос­тупный объ­ем vdev добав­лени­ем еще одно­го дис­ка в уже сущес­тву­ющий vdev или уста­нов­кой в vdev дис­ки боль­шего объ­ема у тебя не получит­ся. Может быть, через нес­коль­ко лет эта воз­можность и появит­ся в TrueNAS, но в ско­ром вре­мени я бы ее не ожи­дал. Под­робно о слож­ностях рас­ширения vdev — в статье ZFS fans, rejoice — RAIDz expansion will be a thing very soon.

    Куда устанавливается

    Все три сис­темы тре­буют для уста­нов­ки отдель­ный накопи­тель — жес­ткий диск или SSD, сог­лаша­ясь, впро­чем, и на флеш‑накопи­тель или кар­ту памяти (если ты собира­ешь­ся исполь­зовать флеш­ку или кар­ту памяти для уста­нов­ки OMV — не поленись уста­новить пла­гин flashmemory из репози­тория omv-extras; он перене­сет в опе­ратив­ную память час­ти фай­ловой сис­темы, в которые идут час­тые опе­рации записи, и будет син­хро­низи­ровать эти дан­ные при заг­рузке и вык­лючении устрой­ства). У это­го под­хода есть как дос­тоинс­тва (дис­ки с дан­ными смо­гут кор­рек­тно «засыпать», и сис­тема не будет рас­кру­чивать их каж­дый раз, ког­да ей при­дет в голову добавить запись в жур­нал), так и недос­татки (все нас­трой­ки сис­темы про­падут, если выделен­ный накопи­тель вый­дет из строя, а резер­вной копии нас­тро­ек под рукой нет).

    Кста­ти, при­ложив опре­делен­ные уси­лия, OMV мож­но уста­новить и на тот же диск, на котором будут хра­нить­ся дан­ные. Так было сде­лано, нап­ример, в сбор­ках для одно­дис­ковых NAS WD MyCloud Home. Под­водных кам­ней здесь тоже хва­тает; в пер­вую оче­редь — труд­но добить­ся качес­твен­ного «засыпа­ния» такого дис­ка.

    Совместимость и системные требования

    Здесь все прос­то: TrueNAS тре­бует про­цес­сор с архи­тек­турой Intel и как минимум 8 Гбайт опе­ратив­ной памяти. Openmediavault, нап­ротив, пре­дель­но нет­ребова­телен; его мож­но уста­новить даже на Raspberry Pi. По лич­ному опы­ту, он отлично (и очень быс­тро!) работа­ет даже на устрой­ствах ARM с четырь­мя ядра­ми Cortex A53 и 512 Мбайт опе­ратив­ной памяти. OMV мож­но уста­новить даже на такие устрой­ства, как WD MyCloud Home (как одно-, так и двух­диско­вые модели)!

    Для чего TrueNAS столь­ко опе­ратив­ной памяти? Раз­гадка кро­ется в воз­можнос­ти дедуп­ликации записы­ваемых дан­ных в реаль­ном вре­мени. Если эта воз­можность вклю­чена, то таб­лицы дедуп­ликации хра­нят­ся в опе­ратив­ной памяти. ZFS будет счи­тать кон­троль­ные сум­мы записы­ваемых бло­ков дан­ных, и если най­дет­ся сов­падение, то блок не будет записан на диск; вмес­то него добавит­ся ука­затель. Отме­чу, что дедуп­ликация в режиме реаль­ного вре­мени работа­ет доволь­но мед­ленно: ско­рость записи может упасть в 3–5 раз, если мы говорим о дос­таточ­но быс­тром мас­сиве и 10-гигабит­ной сети. Впро­чем, при гигабит­ном соеди­нении падение ско­рос­ти мож­но и не заметить.

    Очень час­то мож­но встре­тить рекомен­дацию исполь­зовать TrueNAS сов­мес­тно с памятью с кор­рекци­ей оши­бок (ECC RAM). Здесь нуж­но понимать, что это имен­но рекомен­дация; TrueNAS будет работать и с обыч­ной памятью, не отли­чаясь в этом от любых дру­гих сис­тем. В то же вре­мя ZFS дей­стви­тель­но жад­ная до памяти фай­ловая сис­тема, и пов­режде­ния дан­ных в RAM впол­не могут при­вес­ти к пов­режде­нию дан­ных на дис­ках, в ряде слу­чаев фаталь­ным. Впро­чем, то же самое спра­вед­ливо и для дру­гих сис­тем. Если есть воз­можность исполь­зовать ECC RAM — исполь­зуй, нет — поль­зуйся тем, что есть под рукой.

    Поддержка файловых систем

    TrueNAS в обо­их вари­антах выделя­ется пол­ноцен­ной под­дер­жкой всех воз­можнос­тей ZFS — как собс­твен­но фай­ловой сис­темы, так и сис­темы управле­ния дис­ками. Сюда вхо­дит соз­дание всех уров­ней хра­нилищ (vdev, zpool, dataset) и управле­ние ими, шиф­рование, снап­шоты и их реп­ликация, а так­же дедуп­ликация дан­ных в режиме реаль­ного вре­мени. Дру­гие фай­ловые сис­темы под­держи­вают­ся TrueNAS пос­толь­ку‑пос­коль­ку, нап­ример для импорта дан­ных с отформа­тиро­ван­ного в такой фай­ловой сис­теме накопи­теля.

    Продолжение доступно только участникам

    Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

    Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

    Вариант 2. Открой один материал

    Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

    Avatar photo

    Олег Афонин

    Эксперт по мобильной криминалистике компании «Элкомсофт»

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *