В этой статье мы рассмотрим процесс развертывания виртуальной машины с Windows на гипервизоре Proxmox VE. Подробно рассмотрим базовые рекомендации и best practices по оптимальным параметрам ВМ, установке, и запуску гостевой Windows Server в виртуальной машине Proxmox.
Подготовительные шаги:
- СкачайтеISO образ с драйверами VirtIO для гостевой Windows (virtio-win.iso)
- Получите установочный ISO образ с Windows (в нашем примере это Windows Server 2025)
Подключитесь к веб интерфейсу Proxmox (
https://proxmox-ip:8006
), и загрузите ISO образы в локальное хранилище. Перейдите в раздел ISO images —> нажмите Upload и укажите путь к ISO файлу на диске.
Создаем виртуальную машину для Windows Server на Proxmox
Создадим на хосте Proxmox виртуальную машину для установки Windows Server.
- Щелкните по хосту Proxmox и выберите Create VM
- На вкладке General укажите осмысленное имя и ID виртуальной машины (предлагаемый ID можно оставить по умолчанию, либо вручную задать в нем другой номер, например последний октет IP адреса ВМ).
- На вкладке OS выберите тип гостевой ОС (Microsoft Windows 11/2022/2025) и установочный ISO образ с Windows, который вы загрузили в хранилище
- На вкладке System выберите следующие настройки:
Firmware: OVMF (UEFI) – рекомендуемый тип платформы для современных версий Windows. Для старых систем можно использовать SeaBIOS
Add EFI Disk: включить
Выберите хранилище, где будет хранится EFI диск. Тип диска оставить по-умолчанию (qcow2)
Pre-Enroll keys: включить (прописывает стандартные ключи Microsoft Secure Boot)
Тип контроллера: VirtIO SCSI single
Qemu Agent: включить
TPM: включите, если нужна поддержка виртуального TPM в виртуальной машине (для Windows 11 TPM 2.0 является обязательным требованием) - На вкладке Disks добавляем диск типа SCSI вместо IDE (SCSI протокол производительнее и быстрее, чем IDE или SATA). Выберите размер диска (для Windows не менее 40 Гб)
- В качестве типа диска доступны RAW (минимум возможностей, но лучшая производительность), VMDK (совместимость с VMware) или QCOW2 (расширенный формат с поддержкой снапшотов). Формат qcow2 используется по умолчанию (оставляем его).
- Включаем параметр Discard для более эффективного использования места на диске (работает по аналогии с TRIM в SSD, очищая реально удаленные данные, освобождая место). В качестве типа кэширования выберете Write Back (повышает производительность). Если кэш отключен (Default (no cache)), этот режим безопаснее с точки зрения потери несохраненных данных на диске при отключении ВМ, но медленнее. Режим Write through оптимален в случае высокой нагрузки на чтение
- На вкладке CPU укажите сколько ядер (cores) выделить для ВМ (не менее 2 ядер типа host для Windows). Для производительных ВМ с Windows можно дополнительно добавлять CPU сокеты и включить поддержку NUMA.Тип CPU host позволяет ВМ получать доступ ко всем возможностях физического CPU, исключая эмуляцию. В том числе в таком режиме в гостевой Windows может работать вложенная виртуализация. Это позволит запускать Hyper-V и подсистемы Linux (WSL) внутри виртуальной машины.
- На вкладке Memory укажите, сколько оперативной памяти выделить для ВМ. Рекомендуется не менее 4096 Мб для Windows. С помощью опции Minimum memory можно зарезервировать оперативную память под ВМ. Режим ballooning позволяет гипервизору изымать неиспользуемую память у ВМ при высокой нагрузке (более 80%) на RAM хоста.
- На вкладке Network выбираем модель виртуальной сетевой карты VirtIO (paravirtualized) вместо Intel E1000. Выберите сетевой мост, через который ваша ВМ будет выходить наружу (в этом примере vmbr0 подключен к физическому сетевому интерфейсу сервера Proxmox).
- Отключите опцию Firewall, если вы не хотите, чтобы правила файервола Proxmox применялись к ВМ. В этом случае подразумевается, что будет использоваться встроенный Windows Defender Firewall в гостевой ОС виртуальной машины.
- На следующей вкладке проверяем результирующие настройки и создаем ВМ, нажав Finish.
После того, как ВМ создана, нужно добавить в ее настройках дополнительный виртуальны CD/DVD привод. Выберите ВМ -> вкладка Hardware -> Add -> CD/DVD drive.
Смонтируйте в виртуальный привод ISO образ с драйверами VirtIO. Все готово к установке гостевой Windows в виртуальную машину Proxmox.
Установка гостевой Windows Server в ВМ Proxmox
В параметрах ВМ перейдите на вкладку Console и запустите ВМ (Start Now).
Нажимаем любую кнопку, чтобы начать установку Windows. Далее запускается стандартный мастер установки Windows, где нужно будет выбрать языковые настройки, редакцию Windows Server и и т.д.
В окне, где нужно выбрать диск для установки ОС, вы обнаружите, что установщик Windows не увидел ваш виртуальный жесткий диск. Дело в том, что в образе Windows отсутствуют драйвера для VirtIO SCSI контроллера.
Чтобы загрузить драйвер в режиме WinPE, нажмите кнопку Load Driver.
Укажите папку с драйвером Red Hat VirtIO SCSI pass-throught controller на смонтированном ISO образе с драйверами VirtIO: d:\vioscsi\2k25\amd64. Установите драйвер.
Установщик Windows должен увидеть неразмеченный локальный диск. Выберите его и продолжите установку.
После завершения установки Windows, логинимся в гостевую ОС через консоль Proxmox. Чтобы отправить в консоль сочетание
Ctrl+Alt+Del
для ввода учетной записи Windows, выберите в левой панели Show Extra Keys и отправьте нужную комбинацию клавиш.
Запустите диспетчер устройств Windows. Как вы видите отсутствует ряд драйверов, которые нужно установить с диска с драйверами VirtIO. Запустите установщик virtio-win-gt-x64.msi с диска и установите с настройками по-умолчанию.
Затем установите гостевой агент Qemu, запустив virtio-win-guest-tools.exe.
Проверим, что служба агента запущена в Windows:
Get-Service QEMU-GA
После установки гостевых средств интеграции QEMU в консоли Proxmox на вкладке Summary виртуальной машины будет отображаться информация об IP адресе, полученном из гостевой ОС.
Проверить наличие агента Qemu в ВМ можно из консоли хоста Proxmox:
qm agent <vmid> ping
После завершения установки, удалите из виртуального оборудования ВМ диск с драйверами VirtIO.
Осталось завершить настройку Windows в гостевой машине: задать имя компьютера, статический IP (если применимо), время и часовой пояс, включить RDP, установить обновления Windows, добавить необходимые службы и роли и т.д.