Налаштування домашнього роутера + NAS на unRAID (частина 2)

В першій частині я досить коротко розповів про саму збірку, яка дозволяє зробити комп'ютер, на якому можна запустити unRAID для створення NAS та MikroTik RouterOS у віртуальній машині KVM як заміну звичайному роутеру.

У коментарях вийшли досить корисні дискусії, за результатами яких потрібно виправляти помилки у початковому збиранні та писати вже третю частину! Дещо із запропонованого я випробуваю на собі і, сподіваюся, напишу третину.

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

Установка unRAID

Йдемо на сайт і встановлюємо unRAID на USB-флешку (яку я забув додати до таблиці). Рекомендації по флешкам стандартні: нормальний бренд і більший фізичний розмір (для кращого охолодження). З цієї флешки буде завантажуватись unRAID, так що ваші SSD повністю підуть під кеш. Докладніша офіційна інформація тут.

Не забудьте включити у 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 і при цьому не будете обмежені у виборі заліза.

Налаштування мережі

Ідемо 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-клієнта.

Налаштування сховища

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

У першій частині я написав, що достатньо одного SSD, але насправді це не так: краще взяти два однакові і створити з них cache-pool, так дані на них будуть захищені на випадок виходу одного з ладу. Також, unRAID немає механізму резервного копіювання даних з кешу. Докладніше все описано тут.

Вийти має так (вибачте, я ще не купив другий SSD):

Налаштування домашнього роутера + NAS на unRAID (частина 2)

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

Четність достатньо перевіряти раз на два місяці, а переносити дані з кешу щодня вночі.

Відразу можна налаштувати ресурси, доступні через мережу у вкладці Shares:

Налаштування домашнього роутера + NAS на unRAID (частина 2)

Через те, що маю лише один диск для кешу, domains — unprotected. У вас все має бути зелене.

Встановлюємо RouterOS

Для початку потрібно скачати інсталяційний iso-образ звідси (Виберіть 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.

Фінал

Дякую, що дочитали до кінця!

Намагався не писати багато, але все одно статися на мій погляд вийшла досить довгою. Інші фічі unRAID досить прості в налаштуванні на мій погляд, тим більше, що все налаштовується мишкою.

Хороші ідеї, які можна встановити на VM є тут. Думаю, що у кожного свої потреби і вивести якийсь універсальний список не можна. Хоча, pi.hole, звичайно, можна радити абсолютно всім 🙂

Сподіваюся, мене вистачить на продовження!

Джерело: habr.com

Додати коментар або відгук