Files
virtuality/docs/REQUIREMENTS.md
T

7.0 KiB

Требования

Коротко

Подойдёт почти любой компьютер или мини-ПК не старше 10 лет с проводной сетью и включённой в BIOS/UEFI виртуализацией. Для одной-двух небольших машин достаточно 4 ГБ памяти; для Windows и нескольких машин сразу — 16 ГБ и SSD.

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

Virtuality работает на:

  • Ubuntu Server 26.04 LTS — основа установочного ISO, рекомендуется;
  • Ubuntu Server 24.04 LTS;
  • Debian 13.

Другие системы на базе Debian/Ubuntu с apt скорее всего заработают, но не проверяются. Нужен systemd и netplan (для режима «домашняя сеть»). Установка с ISO делает всё сама; на готовую систему Virtuality ставится скриптом install.sh — ставьте её на чистый сервер, а не на рабочий компьютер.

Процессор и память

Минимум Рекомендуется
Процессор 2 ядра x86_64 с Intel VT-x / AMD-V 4+ ядер
Память 4 ГБ 16 ГБ и больше
Системный диск 8 ГБ свободно на / SSD
Диск под машины 20 ГБ свободно в /var/lib 100+ ГБ SSD/NVMe, лучше отдельный диск
Сеть один проводной интерфейс 1 Гбит/с

Как считать память: сервер и панель занимают около 1 ГБ, остальное делят машины. Ubuntu Server внутри машины — от 1 ГБ, Windows 11 — от 4 ГБ (лучше 8). Диск машины занимает место постепенно, по мере заполнения, но резервные копии и снимки требуют запаса: планируйте хотя бы вдвое больше, чем суммарный размер дисков машин.

Виртуализация должна быть включена в BIOS/UEFI (Intel VT-x / Virtualization Technology, AMD-V / SVM Mode). Без неё машины будут работать через медленную программную эмуляцию; панель предупредит об этом в разделе «Сервер», а sudo vhealth покажет ошибку /dev/kvm missing.

Внутри другой виртуальной машины или на VPS Virtuality работает, только если включена вложенная виртуализация (nested virtualization).

ARM64

Платы и серверы на ARM64 (Raspberry Pi 4/5, Orange Pi 5, серверы с UEFI) поддерживаются: панель определяет профиль, ставит qemu-system-arm и прошивку UEFI для ARM. Гости на таких серверах — только ARM64 (в каталоге готовых систем есть образы aarch64 для Ubuntu, Debian и Alpine); образы x86_64 на них не запускаются. Установка Windows на ARM64 не проверялась.

Для Raspberry Pi и Orange Pi желательно 8 ГБ памяти и загрузка с SSD/NVMe. Установочный ISO для них не подходит (они грузятся иначе) — используйте штатный Ubuntu Server для платы и install.sh. ARM64-ISO предназначен для серверов с UEFI.

Сеть

  • Проводное подключение к роутеру. По Wi-Fi сервер работать может, но режим «домашняя сеть» (мост) недоступен — только NAT.
  • Доступ в интернет при установке: первая загрузка после ISO и install.sh скачивают пакеты из репозиториев Ubuntu/Debian (сотни мегабайт). Панель после установки в интернет не ходит, кроме проверки обновлений и скачивания образов по вашей команде.
  • Порты на сервере: 8088 (панель по HTTP), 8443 (панель по HTTPS), 22 (SSH). Открывать их на роутере наружу не обязательно и без HTTPS не рекомендуется.
  • Для сети NAT машинам выделяется подсеть 192.168.100.0/24 — она не должна совпадать с вашей домашней сетью. Если роутер раздаёт именно 192.168.100.x, выбирайте режим «домашняя сеть» или смените подсеть роутера.
  • Если хотите, чтобы сервисы машин были доступны из интернета, потребуется проброс портов на роутере на адрес сервера (и «белый» адрес от провайдера).

Что проверяет установщик

install.sh и install_virtuality_node.sh перед установкой проверяют права root, наличие apt, свободное место на / и в /var/lib, память, количество ядер и флаг виртуализации vmx/svm. Пороги можно изменить переменными окружения:

VIRTUALITY_MIN_ROOT_FREE_MB=8192
VIRTUALITY_MIN_VAR_FREE_MB=20480
VIRTUALITY_MIN_RAM_MB=4096
VIRTUALITY_MIN_CPU_CORES=2
VIRTUALITY_SKIP_REQUIREMENTS=1    # отключить проверки совсем — только для тестов

Например, для тестового стенда с маленьким диском:

curl -fsSL https://git.stackworks.ru/viktor/virtuality/raw/branch/main/install.sh | VIRTUALITY_MIN_VAR_FREE_MB=8192 bash

Установка с ISO эти пороги не применяет: диск и память проверяются мастером настройки, который покажет предупреждение, но не остановит установку.

Освободить место перед установкой на существующей системе:

df -h
sudo apt clean && sudo apt autoremove -y
sudo journalctl --vacuum-time=3d

Браузер

Панель работает в актуальных Chrome, Firefox, Safari и Edge, в том числе на телефоне. Экран машины (noVNC) требует поддержки WebSocket — она есть во всех перечисленных. При включённом HTTPS сертификат выпускается самим сервером, поэтому браузер один раз спросит, доверять ли ему.