Настройка домашнего роутера + NAS на unRAID (часть 2)

pjesës së parë я довольно кратко рассказал о самой сборке, которая позволяет сделать компьютер, на котором можно запустить unRAID для создания NAS и MikroTik RouterOS в виртуальной машине KVM в качестве замены обычном роутеру.

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

Для начальной установки придется подключить к серверу монитор, клавиатуру и мышь.

Установка unRAID

Идем на sitin и устанавливаем unRAID на USB-флешку (которую я забыл добавить в таблицу). Рекомендации по флешкам стандартные: нормальный бренд и физический размер побольше (для лучшего охлаждения). С этой флешки будет загружаться unRAID, так что ваши SSD полностью уйдут под кэш. Более подробная официальная информация këtu.

Не забудьте включить в BIOS поддержку VT-d и VT-x!

Подключаем флешку к серверу и запускаем его в GUI-режиме.

Стандартное имя и пароль: root без пароля.

Версия на момент написания: 6.7.2

После запуска ОС, убедитесь, что все подключенное железо обнаружено. Система должна увидеть все ваши диски (диски отображаются на вкладке Main), два Ethernet-контроллера и Wi-Fi карту (а это удобно посмотреть в Tools -> System Devices).

Проблема с SATA-контроллерами Marvell

Из-за какого-то бага в драйвере контроллеров Marvell, они не работают после включения VT-d в unRAID версии 6.7.х.

Я выбрал самое простое решение: добавил iommu=pt к строке параметров, передаваемой ядру Linux при загрузке. Это делается на вкладке Main (далее кликаем по устройству «Flash»). Также, можно изначально изменить конфиг на флешке: boot/syslinux/syslinux.cfg

Настройка домашнего роутера + NAS на unRAID (часть 2)

Про Intel vPro

Я не рекомендую искать железо, поддерживающее vPro/AMT.

Во-первых, для нормальной работы удаленного рабочего стола, нужно подключать HDMI-dummy или DP-dummy plug, иначе встроенная видеокарта не будет инициализироваться без подключенного монитора.

Во-вторых, качество клиентского софта от Intel крайне низкое.

В-третьих, ту же функциональность для домашнего использования вы достигните беспроводным или проводным удлинителем HDMI/DP и при этом не будете никак ограничены в выборе железа.

Konfigurimi i rrjetit

Идем Settings -> Network Settings. Как вы уже догадались, один из интерфейсов будет смотреть в локальную сеть, второй — в интернет. Для начала, определитесь с тем, который будет подключен к вашей локальной сети. На моей матплате на разъемах есть наклейки с MAC-адресами, именно так я и понял, кто есть кто.

В двух словах что нужно сделать: назначить каждый интерфейс членом двух отдельных L2-мостов и установить статический IP-адрес на том, который подключен к локальной сети. На смотрящем в интернет интерфейсе IP-адрес не нужен, им будет заниматься RouterOS.

Вот, что должно у вас получиться:

Настройка домашнего роутера + NAS на unRAID (часть 2)

  • 192.168.1.2 — адрес, по которому будет доступен unRAID
  • 192.168.0.1 — адрес RouterOS
  • 192.168.1.3 — адрес DNS-сервера pi.hole

Можно оставить назначение адреса для eth0 по DHCP, но тогда при любых проблемах в RouterOS мы не сможем получить доступ к unRAID и нужно будет подключать монитор и клавиатуру к серверу.

После настройки сети, можно перейти на удаленную настройку, вручную установив IP-адрес у LAN-клиента.

Konfigurimi i ruajtjes

Для запуска виртуальной машины, понадобится хранилище, так что пришло время его настроить. Не буду подробно описывать, так как это довольно просто: вам нужно присвоить роли жестким дискам — одному Disk 1, другому — Parity.

В первой части я написал, что достаточно одного SSD, но на самом деле это не так: лучше взять два одинаковых и создать из них cache-pool, так данные на них будут защищены на случай выхода одного из строя. Также, в unRAID нет механизма резервного копирования данных с кэша. Более подробно все описано këtu.

Получиться должно так (извините, я еще не купил второй SSD):

Настройка домашнего роутера + NAS на unRAID (часть 2)

Также, сразу можно настроить расписание проверки четности и переноса данных из кэша. Делается это на странице Settings -> Scheduler.

Четность достаточно проверять раз в два месяца, а переносить данные из кэша — ежедневно ночью.

Сразу можно настроить ресурсы, доступные по сети во вкладке Shares:

Настройка домашнего роутера + NAS на unRAID (часть 2)

Из-за того, что у меня всего один диск для кэша, domains — unprotected. У вас все должно быть зеленое.

Устанавливаем RouterOS

Для начала нужно скачать установочный iso-образ këtu (выберете x86 Stable CD Image) и положить его в Towerisos.

Теперь пришло время создать виртуальную машину.

Включите поддержку в Settings -> VM Manager. После этого появится новая вкладка — VMs, перейдите в нее.

Нажмите Add VM, далее — Linux.

  • Выделите всего одно ядро
  • Памяти достаточно выделить 128 или 256 мегабайт
  • Machine — i440fx-3.1
  • BIOS — SeaBIOS
  • В пункте OS Install ISO выберете скачанный образ (/mnt/user/isos/mikrotik-6.46.iso)
  • Primary vDisk Size — 256M
  • Primary vDisk Bus — SATA
  • Network Bridge — br0
  • Добавьте второй сетевой интерфейс и выберете br1
  • Если в Other PCI Devices не отображается ваша Wi-Fi карта, ничего страшного — пропишем ручками в конфиге, если отображается — поставьте галочку
  • Пока уберите галочку Start VM after creation и нажмите Create

Запомните, какие MAC-адреса какие интерфейсы получат, для того, чтобы в дальнейшем сопоставлять их в RouterOS.

По какой-то причине у меня не всегда работало нормально автоматическое назначение портов для разных VM, поэтому откройте получившийся XML-конфиг и поправьте строчку с настройкой VNC на что-то подобное:

<graphics type='vnc' port='5900' autoport='no' websocket='5700' listen='0.0.0.0' keymap='en-us'>
 <listen type='address' address='0.0.0.0'/>
</graphics>

Если у вас, как у меня, не появлялся Wi-Fi адаптер в Other PCI Devices, впишите его вручную. Для этого нужно узнать его адрес на шине PCI. Проще всего это сделать в Tools -> System Devices, там будет строчка:

IOMMU group 23: [168c:003c] 0b:00.0 Network controller: Qualcomm Atheros QCA986x/988x 802.11ac Wireless Network Adapter

Что в моем случае превращается в:

Настройка домашнего роутера + NAS на unRAID (часть 2)
(извините, парсер MD у хабра почему-то глючит на этом отрывке, пришлось вставить картинкой)

Можно запускать VM и подключаться к ней по VNC. Установка RouterOS очень проста! После приглашения к выбору пакетов, проще всего выбрать все клавишей a и закончить установку клавишей i, отказавшись от сохранения старой конфигурации и согласившись с форматированием диска.

Настройка домашнего роутера + NAS на unRAID (часть 2)

После перезагрузки вводим в качестве логина admin, пароль — пустой.

Наберите /interface print и убедитесь, что система видит все три ваших сетевых интерфейса (я делал скриншот с уже настроенной системы, где имена отличаются от дефолтных):

Настройка домашнего роутера + NAS на unRAID (часть 2)

На этом этапе можно скачать winbox, подключиться к RouterOS по MAC адресу и дальнейшую настройку выполнять через GUI.

Считаю, что детальная настройка RouterOS выходит за рамки этой статьи, тем более что в интернете мануалов очень много, так что предлагаю вам для начала сделать стандартный Quick Setup:

Настройка домашнего роутера + NAS на unRAID (часть 2)

Можно подключить кабель с интернетом к свободному порту и переключить LAN-клиента на автоматическое получение IP-адреса, а также проверить работоспособность Wi-Fi. Убедившись, что все работает, можно покупать и вводить лицензионный ключ RouterOS.

Добавление VM с Linux

Для работы в более привычном окружении, создадим еще одну виртуальную машину, на которой запустим ваш любимый %distro_name%

Все так же скачайте ISO-образ и положите его в isos

Заходите в уже привычную вкладку VMs, далее Add VM, абсолютное большинство настроек теперь можно оставить дефолтными.

  • BIOS — SeaBIOS
  • В пункте OS Install ISO выберете скачанный образ
  • Primary vDisk Size — что-то в районе 10-20 ГБ
  • Unraid Share — путь к каталогу, который хотите сделать доступным для VM, в моем случае /mnt/user/shared/
  • Unraid Mount tag shared
  • Network Bridge — br0
  • Пока уберите галочку Start VM after creation и нажмите Create

Все так же в конфиге правим настройку VNC сервера:

<graphics type='vnc' port='5901' autoport='no' websocket='5701' listen='0.0.0.0' keymap='en-us'>
 <listen type='address' address='0.0.0.0'/>
</graphics>

Установите систему, она должна получить IP по DHCP и иметь доступ к интернету.

Чтобы сделать доступным каталог ФС на хосте, добавьте в /etc/fstab следующую строку:

shared  /mnt/shared     9p      trans=virtio,version=9p2000.L 0 0

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

Если все нормально работает и корректно включается-выключается, то можно покупать и вводить ключ для unRAID. Не забывайте, что он привязывается к GUID флеш-накопителя (хотя, его можно переносить). Также, без лицензии не будет работать автоматический запуск VM.

Finali

Faleminderit që e lexuat deri në fund!

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

Хорошие идеи, что можно установить на VM есть këtu. Думаю, что у каждого свои потребности и вывести какой-то универсальный список нельзя. Хотя, pi.hole, конечно, можно советовать абсолютно всем 🙂

Надеюсь, меня хватит на продолжение!

Burimi: habr.com

Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë 🔥 Bli një hosting të besueshëm për faqet me mbrojtje DDoS, VPS VDS serverë | ProHoster