В этой статье мы рассмотрим процесс развертывания виртуальной машины с 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, добавить необходимые службы и роли и т.д.
Может мне не везет, но ВМ не видит DHCP, даже при соблюдении «хороших манер». Хотя на статике сеть есть.
Интернет изобилует жалобами на эту «фичу».
Эх. Надо было скриншоты делать из
Color Theme: Proxmox Dark
Было бы лучше для\ восприятия.
5. На вкладке Disks добавляем диск типа SCSI вместо IDE (SCSI протокол производительнее и быстрее, чем IDE или SATA).
Это первая причина.
Вторая, это то, что потом можно будет «на лету» менять размер диска. Например увеличивать. Современные Windows «подхватывают» эти изменения без необходимости перезагрузки.
Согласен, хороший аргумент
Я переехал в конторе с esxi на Proxmox. 40 виртуалок перенес. Все летает.
Изучаю и осваиваю.
«Далее — далее — готово» не очень интересно, лучше напишите про оптимизацию ВМ с windows в proxmox.
Какие настройки лучше, какие флаги cpu можно поменять и т.д.