Установка приложений в TrueNAS Scale и плагинов в TrueNAS Core: пошаговая инструкция 2026 | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Установка приложений в TrueNAS Scale и плагинов в TrueNAS Core: пошаговая инструкция 2026

11 апреля 2026 10 мин. чтения

Эта статья — прямое и практическое руководство для системных администраторов и DevOps инженеров, которым нужно быстро и без ошибок развернуть сервисы на базе TrueNAS. Вы получите четкое сравнение архитектур Core и Scale, готовые пошаговые инструкции для обеих систем и рекомендации по распределению ресурсов, чтобы ваши приложения работали стабильно. Информация проверена на практике и актуальна для версий 2026 года.

Перед установкой: ключевое отличие архитектур TrueNAS Core и Scale

Успешное развертывание ПО в TrueNAS начинается с понимания фундаментального различия между двумя ветками системы. TrueNAS Core (основана на FreeBSD) и TrueNAS Scale (основана на Linux) используют принципиально разные подходы к изоляции и управлению сервисами. Выбор между ними определяет доступный инструментарий, гибкость и сложность администрирования.

TrueNAS Core: изоляция через Jails и управление плагинами

В TrueNAS Core основная единица развертывания — Jail. Это легковесная виртуальная среда ("клетка"), которая изолирует приложение, предоставляя ему собственную файловую систему, сетевой стек и пространство процессов, но использует ядро основной операционной системы. Плагины в Core — это предварительно собранные и настроенные Jail, доступные через официальный репозиторий.

Плюсы подхода:

  • Предсказуемость и стабильность: Все зависимости жестко зафиксированы, что минимизирует конфликты.
  • Глубокая интеграция с системой: Прямой доступ к функциям FreeBSD и ZFS.
  • Простота управления: Весь жизненный цикл Jail (создание, запуск, остановка) контролируется через интуитивный веб-интерфейс.

Минусы подхода:

  • Ограниченный выбор ПО: Официальный каталог плагинов сравнительно невелик.
  • Возможное отставание версий: Обновления ПО в плагинах могут появляться с задержкой.
  • Меньшая гибкость: Сложнее адаптировать окружение под специфические нужды по сравнению с контейнерами.

TrueNAS Scale: контейнеры, Kubernetes и App Catalog

TrueNAS Scale построена вокруг контейнерной парадигмы. В ее основе лежит облегченный дистрибутив Kubernetes — k3s, который оркестрирует контейнерные приложения. App Catalog — это графический интерфейс для управления хранилищем Helm-чартов (пакетами, описывающими развертывание приложения в K8s).

Плюсы подхода:

  • Огромный выбор приложений: Доступны сотни приложений из официального и сторонних репозиториев (например, TrueCharts).
  • Независимость версий: Каждое приложение работает в своей изолированной среде со своими зависимостями.
  • Легкое масштабирование и оркестрация: Встроенная поддержка репликации, обновлений без простоя и балансировки нагрузки.
  • Современный стек: Полная совместимость с экосистемой Docker и Kubernetes.

Минусы подхода:

  • Более высокая сложность: Требуется базовое понимание концепций Kubernetes (поды, службы, PVC).
  • Потребление ресурсов: Сам k3s и инфраструктура оркестрации требуют дополнительных вычислительных мощностей (CPU, RAM).
  • Больше точек настройки: Развертывание включает конфигурацию хранилища, сети, переменных среды и ресурсов.

Итоговое сравнение для быстрого выбора:

  • Выбирайте TrueNAS Core (Jails), если вам нужна максимальная стабильность, простота администрирования для классических сетевых сервисов (SMB/NFS-сервер, медиасервер Plex, Nextcloud) и вы предпочитаете проверенный FreeBSD-стек.
  • Выбирайте TrueNAS Scale (Контейнеры/K8s), если вам требуется гибкость, доступ к современным контейнеризированным приложениям, планируется масштабирование или интеграция с существующей Kubernetes-инфраструктурой.

Пошаговая инструкция: установка плагина в TrueNAS Core

Установка плагина в Core — это самый быстрый способ получить готовый к работе сервис. Процесс полностью осуществляется через веб-интерфейс.

  1. В боковом меню веб-интерфейса перейдите в раздел «Plugins».
  2. Откроется вкладка «Available» со списком плагинов из официального репозитория iXsystems.
  3. Найдите нужный плагин (например, Nextcloud). Важно: Проверьте описание на совместимость с вашей версией TrueNAS Core (актуально на 2026 год).
  4. Нажмите кнопку «INSTALL» на выбранном плагине.
  5. В открывшемся диалоге укажите:
    Имя Jail (латиницей, без пробелов).
    Сетевые настройки: выберите интерфейс (обычно «br0» — мостовой), укажите метод получения IP (DHCP или статический адрес, шлюз).
    Примечание: Для сервисов, которые должны быть доступны из внешней сети, рекомендуется использовать статический IP.
  6. Нажмите «SUBMIT». Система автоматически загрузит образ, создаст Jail и установит плагин.
  7. После установки статус плагина в списке «Installed» сменится на «RUNNING». Для доступа к веб-интерфейсу приложения нажмите на «MANAGE» и следуйте инструкциям (обычно это переход по указанному IP-адресу и порту).

Где искать логи при ошибке: Если плагин не запустился, перейдите в «Jails», выберите соответствующий Jail и нажмите «Shell». Проверить логи запуска службы можно командами вида service -e | grep service_name и tail -f /var/log/messages.

Настройка сети и хранилища для нового Jail

Правильная начальная настройка предотвратит проблемы с доступностью и хранением данных.

  • Сеть: Для большинства сценариев подходит режим «VNET» с бриджем («br0»). Это дает Jail собственный виртуальный сетевой интерфейс в сети вашего хоста. Для сервисов, требующих проброса множества портов или сложной маршрутизации, может потребоваться тонкая настройка сетевых правил.
  • Хранилище (Storage): Подключение дискового пространства — критически важный шаг.
    1. В свойствах Jail перейдите на вкладку «Storage» и нажмите «Add».
    2. В поле «Source» выберите существующий набор данных (dataset) ZFS из вашего пула (например, /mnt/tank/app_data).
    3. В поле «Destination» укажите точку монтирования внутри Jail (например, /mnt/data или /var/db/nextcloud в зависимости от требований плагина).
    4. Внимание на права доступа: Убедитесь, что пользователь и группа, от имени которых работает служба внутри Jail (например, www для Nextcloud), имеют права на запись в подключенный каталог. Это можно настроить через свойства исходного набора данных ZFS или внутри Jail командой chown.

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

Пошаговая инструкция: установка приложения в TrueNAS Scale

Развертывание приложений в Scale — более гибкий, но и более многоэтапный процесс, связанный с настройкой Helm-чарта.

  1. В боковом меню перейдите в раздел «Apps».
  2. Нажмите «Discover Apps» или перейдите на вкладку «Available Applications».
  3. Используйте поиск, чтобы найти приложение (например, Plex). Критически важно: Не выбирайте версию latest для продакшен-среды. Выберите стабильную версию с номером (например, 1.32.0).
  4. Нажмите «Install».
  5. Заполните форму установки:
    Application Name: Имя развертывания (латиницей).
    Version: Убедитесь, что выбрана стабильная версия.
    Workload Details: Оставьте ix-plex.
    Namespace: Можно оставить ix-plex или создать свой для логической группировки приложений.
    Конфигурация хранилища (Storage):
    - В разделе «Storage» нажмите «Add».
    - Выберите тип тома (обычно ixVolume для использования локальных пулов ZFS).
    - Укажите имя тома (PVC), выберите пул данных для хранения и тип доступа: ReadWriteOnce (RWO) для данных, уникальных для этого пода, или ReadWriteMany (RWX), если к данным нужно обращаться с нескольких подов (реже).
    - Укажите точку монтирования внутри контейнера (например, /config для конфигурации Plex).
    Конфигурация сети (Networking):
    - В разделе «Networking» выберите тип службы (Service). Для доступа извне (например, к веб-интерфейсу Plex) выберите LoadBalancer — система назначит внутренний IP и откроет указанные порты. Для внутреннего взаимодействия между приложениями используйте ClusterIP.
    - Укажите порт, на котором будет работать приложение.
  6. Нажмите «Save». Приложение начнет развертывание. Статус можно отслеживать на вкладке «Installed Applications».

Расширенная настройка: переменные среды, ресурсы и обновления

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

  • Переменные среды (Environment Variables): В форме редактирования приложения найдите соответствующий раздел. Здесь задаются ключевые параметры. Например, для корректного времени укажите переменную TZ со значением Europe/Moscow. Конкретные переменные зависят от приложения и указаны в его документации.
  • Ресурсы (Resources): В разделе «Resources» задайте лимиты и запросы CPU/RAM.
    - Requests: Гарантированное количество ресурсов, резервируемое системой для пода.
    - Limits: Максимально допустимое потребление.
    Пример для медиасервера средней нагрузки: Установите Limit CPU на 2 ядра, Limit Memory на 4 GiB. Это предотвратит "голодание" других сервисов при пиковой нагрузке.
  • Политика обновлений (Update Policy): Настройте автоматические обновления. Рекомендуется выбрать политику «Only update the application if the new version is a higher SemVer match», чтобы избежать неожиданных мажорных обновлений, которые могут сломать обратную совместимость.
  • Мониторинг развертывания: Если приложение "висит" в статусе Deploying, нажмите на его имя, перейдите на вкладку «Events» и «Logs». В событиях часто указывается причина сбоя (например, ошибка монтирования тома PVC).

Как добавить и использовать сторонние репозитории приложений

Официальный каталог Scale содержит ограниченный набор приложений. Чтобы получить доступ к сотням дополнительных чартов (Pihole, Vaultwarden, мониторинг и т.д.), добавьте сторонний репозиторий.

  1. Перейдите в «Apps» -> «Manage Catalogs».
  2. Нажмите «Add Catalog».
  3. Заполните форму:
    Catalog Name: Например, truecharts.
    Repository: Укажите URL репозитория Helm-чартов. Для популярного сообщества TrueCharts это https://github.com/truecharts/catalog (актуальность URL на 2026 год уточняйте в официальной документации TrueCharts).
    Branch: Обычно main.
    Preferred Trains: Для стабильности выберите stable или enterprise.
  4. Нажмите «Save». Система загрузит индекс репозитория. Это может занять несколько минут.
  5. После успешного добавления новые приложения появятся в «Available Applications». Вы можете фильтровать их по каталогу (TRUECHARTS).

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

Распределение системных ресурсов и мониторинг

Грамотное планирование ресурсов — залог стабильной работы как самой TrueNAS, так и развернутых на ней сервисов. Недостаток ресурсов приводит к "тормозам" и сбоям, избыток — к неэффективному использованию железа.

  • Оперативная память (RAM):
    - TrueNAS Core: ZFS активно использует ARC (Adaptive Replacement Cache) для кэширования данных. Рекомендуется оставить не менее 8 ГБ ОЗУ для работы самой системы и ARC. Остаток можно выделять Jail.
    - TrueNAS Scale: Помимо ZFS ARC, память потребляет k3s и системные сервисы. Минимум 16 ГБ ОЗУ для базовой работы системы. Для каждого приложения задавайте реалистичные Limits в разделе Resources.
  • Центральный процессор (CPU):
    - Выделяйте ядра целыми единицами, особенно для ресурсоемких задач (транскодирование видео, компиляция). Для фоновых сервисов можно использовать доли ядра (например, 0.5).
    - Мониторинг: Используйте встроенные графики в разделах «Reporting» (Core) или «System Settings -> Insights» (Scale), чтобы выявить узкие места.
  • Дисковый ввод-вывод (I/O):
    - Не размещайте все высоконагруженные приложения на одном пуле ZFS. Разделите нагрузку: один пул для системных томов и кэша приложений, другой — для медиафайлов или баз данных.
    - Используйте разные типы vdev (зеркало, RAIDZ) в зависимости от требований к производительности и отказоустойчивости. Подробнее об оптимизации ZFS.
  • Настройка алертов: В «System Settings -> Alert Services» настройте уведомления (Email, Telegram) о критических событиях: заполнении пула, высокой загрузке CPU, сбое службы.

Частые проблемы и их решения при развертывании

СимптомВероятная причинаРешение
Приложение в Scale зависло в статусе «Deploying».1. Ошибка создания Persistent Volume Claim (PVC) — нет места или прав на пуле.
2. Не удалось загрузить образ контейнера из репозитория.
1. Проверьте вкладку «Events» приложения на наличие ошибок монтирования. Убедитесь, что в целевом пуле достаточно свободного места.
2. Проверьте доступность сети, попробуйте выбрать другую версию приложения.
Плагин в Core установился, но сервис не запускается.1. Конфликт портов (порт уже занят другим Jail или службой).
2. Ошибка в конфигурации плагина или недостаток прав для доступа к хранилищу.
1. В свойствах Jail измените номер порта в настройках сети или остановите конфликтующий сервис.
2. Откройте Shell Jail и проверьте логи службы (journalctl -xe или логи в /var/log). Убедитесь, что пользователь службы имеет права на запись в подключенные каталоги.
Нет доступа к веб-интерфейсу развернутого приложения.1. Неправильно настроен тип службы (Service Type) в Scale.
2. Брандмауэр на хосте или сетевом оборудовании блокирует порт.
3. Приложение запустилось не на том IP-адресе.
1. Для внешнего доступа у службы должен быть тип LoadBalancer. Проверьте в настройках приложения.
2. Убедитесь, что указанный в службе порт открыт в настройках брандмауэра TrueNAS и маршрутизатора.
3. В Scale проверьте назначенный службе IP в разделе «Services». В Core проверьте IP Jail в списке Jails.
Нехватка места для обновления приложения или системы.1. Переполнен пул загрузок (boot-pool) или пул данных.
2. Накопилось много старых образов контейнеров или снапшотов.
1. Освободите место, удалив ненужные данные или расширив пул.
2. В Scale: «System Settings -> Advanced -> Kubernetes -> Cleanup unused images». Регулярно управляйте снапшотами наборов данных.

Вопросы миграции и итоговое сравнение

Возможна ли миграция сервиса из Jail (Core) в контейнер (Scale) и обратно?
Прямой, автоматической миграции не существует из-за кардинального различия архитектур (FreeBSD Jail vs Linux-контейнер). Процесс миграции всегда сводится к двум этапам:

  1. Миграция данных: Обеспечьте доступ к данным приложения (файлы конфигурации, базы данных, медиатека) из новой системы. Это можно сделать через общую сетевую папку (SMB/NFS), копирование или подключение дисков.
  2. Новая установка приложения: Разверните приложение в целевой системе (Core или Scale) по инструкциям выше и настройте его на работу с перенесенными данными.

Итоговая шпаргалка для выбора (2026):

КритерийTrueNAS Core (Jails)TrueNAS Scale (Контейнеры/K8s)
Идеально дляКлассических файловых серверов (SMB/NFS/iSCSI), медиасерверов (Plex, Emby), стабильных сервисов типа Nextcloud. Простоты администрирования.Современного стека приложений (из каталогов TrueCharts и др.), оркестрации нескольких сервисов, интеграции с Docker/K8s-экосистемой, масштабирования.
АрхитектураFreeBSD Jails. Изоляция на уровне ОС.Linux-контейнеры (Docker), оркестрация через k3s (Kubernetes).
Выбор ПООграничен официальными плагинами. Для кастомного ПО нужен ручной Jail.Огромный, за счет сторонних Helm-репозиториев.
СложностьНизкая/Средняя. Понятный интерфейс, меньше точек настройки.Средняя/Высокая. Требует понимания базовых концепций K8s.
Потребление ресурсовМинимальное накладные расходы.Выше (затраты на k3s и оркестрацию).
АвтоматизацияОграничена скриптами внутри Jail.Широкая, через REST API для полного управления.

Это руководство охватывает ключевые аспекты установки ПО в TrueNAS Core и Scale, актуальные для 2026 года. Следуя пошаговым инструкциям и рекомендациям по ресурсам, вы сможете развертывать сервисы быстро, безопасно и с пониманием происходящего.

Поделиться:
Сохранить гайд? В закладки браузера