Рекомендации (best practices) по установке Windows 10 и 11 на Proxmox

Я решил перевести заметку из proxmox wiki на тему рекомендаций по установке в качестве гостевой системы Windows 10. Там нет каких-то особых и критичных замечаний. Просто последовательно изложен порядок рекомендуемых действий и настроек для максимального быстродействия и стабильной работы системы.

Онлайн-курс по устройству компьютерных сетей

На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Введение

В данной статье будут даны общие рекомендации, так называемые best practices на тему установки Windows 10 или 11 на гипервизор Proxmox. Данное руководство можно использовать как how to для проверки себя во время настройки виртуальных машин.

Подготовка к установке

Для того, чтобы получить хорошее быстродействие операционной системы Windows на хосте Proxmox, мы установим Windows VirtIO Drivers во время установки VM.

  • Создайте новую виртуальную машину, выберите тип "Microsoft Windows 10/2016/2019" и активируйте функцию "Qemu Agent" на вкладке System. Далее укажите свой iso образ в качестве источника установки.
  • В качестве Bus/Device для виртуального диска укажите SCSI, контроллер должен быть VirtIO SCSI. Можете указать опцию кэширования Write back. Это увеличит быстродействие, но есть некоторые риски потери данных. Подробно про варианты кэширования я писал отдельно. Укажите параметр Discard для более эффективного использования места на диске. Этот параметр работает примерно так же, как технология TRIM в SSD дисках. Подчищает реально удаленные данные с диска, уменьшая занимаемое место.
  • Настройки памяти и процессора укажите в зависимости от потребностей виртуальной машины. Модель сетевой карты укажите VirtIO (paravirtualized).
  • Для того, чтобы во время установки системы использовать драйверы virtio, загрузите iso образ с ними. Добавьте новый CD-ROM к VM и подключите этот образ.
  •  Теперь у вас всё готово для установки системы Windows.

Запуск установки Windows в Proxmox

  • После запуска установки системы, подключитесь к консоли виртуальной машины.
  • Дойдите до этапа установки, где нужно выбрать жёсткий диск. Скорее всего список доступных дисков будет пуст.
  • Нажмите "Загрузить драйвер" для того, чтобы установить драйвер жесткого диска и сетевой карты.
  • Для установки драйвер диска перейдите в директорию vioscsi\w10\amd64 и подтвердите выбор. Выберите "Red Hat VirtIO SCSI pass-through controller". Ваш виртуальный жёсткий диск должен появиться в списке для установки на него системы.
  • Повторите то же самое для выбора драйвера сетевой карты. Он находится в директории NetKVM\w10\amd64. Выберите "Redhat VirtIO Ethernet Adapter".
  • Драйвер выделения динамической оперативной памяти находится в Balloon\w10\amd64. Перейдите в эту директорию и выберите драйвер "VirtIO Balloon Driver".
  • Загрузка этих трёх драйверов позволит установщику Windows определить всё оборудование, так что можно продолжить установку системы в обычном режиме.

Подробно описанную процедуру можно лицезреть на видео на примере установки Windows Server 2016 на ProxMox. Установка Windows 10 или 11 будет проходить точно так же.

Установка Qemu Guest Agent на Windows

Для того, чтобы корректно работал Guest Agent на Windows, необходимо его установить отдельно. Он находит в iso образе virtio в корне диска, в папке guest-agent. Для x64 архитектуры установочный файл будет называться qemu-ga-x86_64.msi. Просто запустите установку и дождитесь окончания. Больше ничего делать не надо, агент автоматически установится и запустится.

Если всё прошло успешно, то вы сразу же в веб интерфейсе Proxmox увидите ip адреса на сетевых интерфейсах Windows.

Драйвера и Службы

Чтобы установить все недостающие драйвера для корректной работы Windows на Proxmox, запустите virtio-win-gt-x64.msi в корне диска virtio. Можете убрать установку тех драйверов и служб, что вы точно не будете использовать. Например, Qxl и Spice. После этого не только ip адреса, но и использования оперативной памяти должны корректно отображаться в веб интерфейсе.

Рекомендуется посмотреть менеджер устройств, чтобы убедиться в том, что там нет неопределённого оборудования. Если все драйверы установились корректно, то всё оборудование будет с драйверами и определено. Если это не так, то попробуйте установить драйвер устройства вручную. Для этого укажите в качестве источника драйвера виртуальный диск с virtio.iso и обязательно укажите использовать для поиска драйвера подпапки. Если драйвер будет найдет, то выберите его и установите, подтвердив, что доверяете установке драйверов от указанного поставщика.

Формат диска raw vs qcow2

Историю с выбором типа диска в proxmox я разбирал подробно в отдельной заметке. В общем случае формат raw обеспечивает лучшее быстродействие, но у qcow2 есть дополнительный полезный функционал. Речь идёт о технологии copy on write и возможности делать Live Snapshots. В настоящий момент формат qcow2 выбирается по умолчанию.

VirtIO drivers

Make it really easy: Build your ISO with drivers already included:

Можно достаточно просто подготовить свой образ операционной системы Windows с интегрированными VirtIO драйверами. Для этого можно можно воспользоваться отдельной статьёй - Windows guests - build ISOs including VirtIO drivers.

Загрузить свежую версию VirtIO drivers можно по ссылке - https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/.

Углубленный онлайн-курс по MikroTik.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном онлайн-курcе по администрированию MikroTik. Автор курcа – сертифицированный тренер MikroTik Дмитрий Скоромнов. Более 40 лабораторных работ по которым дается обратная связь. В три раза больше информации, чем в MTCNA.

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

28 комментариев

  1. Владимир

    Благодарю за статью!

  2. Василий

    Как отключить безопасное извлечение устройств диски сеть и т.д.

  3. Александр

    Доброго дня!

    Установил проксмокс поверх дебиан10 (2SSD в RAID1, 2HDD в RAID1).
    В контейнер устанавливаю Вин10 в соответствии с описанным выше, драйвера с virtIO.

    Работать невозможно, загрузка диска 100%.
    Подскажите, какие тонкие настройки можно покрутить?

    • А в самой системе видно, кто пишет на диск? Там после установки могут начать устанавливаться обновления, и они любой диск на лопатки положить могут на час.

    • Ставь при создании диска Async IO (асинхронный ввод-вывод) native

  4. Алексей

    Кто-то подскажет где у проекта Windows VirtIO Drivers
    BugTracker.Не могу найти куда обратится с некоректной работой драйверов!

  5. Сергей

    Пытался Win7 поставить, а она ругалась, что не может найти подписанные драйвера..

    • Может в новых virtio драйверах убрали поддержку Win7. Все же она давно уже не поддерживается. Попробуйте более старые версии использовать. С Win7 никаких проблем раньше не было.

  6. "Можете убрать установку тех драйверов и служб, что вы точно не будете использовать. Например, Qxl и Spice."
    А вы не пользовались управлением виртуальной машиной через SPICE? Понятно что в случае винды RDP наше всё. Но есть моменты когда надо напрямую зайти на машину. И в этом случае "консоль" SPICE удобнее, чем вэбовская! Там всё быстрее работает и в вэбовской некоторые сочетания клавиш перехватывает браузер.

    • Ни разу не использовал. Обычно напрямую в консоль заходишь крайне редко и только чтобы починить удалённый доступ.

  7. Вячеслав

    Добрый день!
    Хорошая статья, всё описано по шагам.
    Только вот есть один момент: если ставить win10 x64, то она наотрез отказывается воспринимать драйвера, ругаясь на подпись.
    Каким образом вы этот момент обходили?

    • В какой момент ругается? С этим нет никаких проблем. Выходит предупреждение о том, доверяете ли вы драйверам от RedHat. Надо согласиться и всё. Спокойно проходит установка. Инфа 100%, так как я постоянно использую Proxmox и и ставлю туда VM на базе Windows.

      • Вячеслав

        Да, так именно и работает, если система х32.
        Если х64, то после установки драйвера устройство просто не запускается, и в свойствах написано, что система не может загрузить драйвера для устройства.
        У меня решение было только использование левых сборок 10ки с отключенной проверкой драйверов, онигинальные от MS никак не хотели работать.
        К сожалению, сейчас под рукой нету машинки, чтобы показать.
        Могу по быстрому её слабать и показать.
        Просто случайно наткнулся на статью, думал, что в ней будет описана эта тонкость))

        • Показывать ничего не надо. Это похоже какая-то ваша локальная проблема. Proxmox очень популярный продукт. Его используют по всему миру, в том числе и с Windows. Там нет никаких проблем с драйверами. Всё ставится, оборудование определяется. Возможно вы что-то путаете с версией или разрядностью драйверов.

          • Вячеслав

            Эта локальная проблема наблюдалась на различных платформах у разных заказчиков.
            Повторюсь, что проблема ТОЛЬКО на WIN10x64.

    • Валентин

      На Win7 x64. Тоже самое. Дрова не ставятся.

      • Аноним

        Оригинальный, лицензионный DVD с Win7 x64. Добавлен привод с ISO virtio-win-0.1.196. При выборе папки с драйверами, ошибка: "Не найдены подписанные драйверы устройства". Т.Е. я драйвера даже не вижу. Любые х64, х86... вообще ничего не выбирается. Куда копать?

        • Копать надо вглубь!
          Конкретнее: вы взяли слишком новые драйвера. Там поддержка Windows 7 вообще не предусмотрена!
          Попробуйте драйвера версии 0.1.173-5.

  8. Copy on write и Live Snapshots - это особенности файловой системы, а не вирт. дисков.
    ZFS умеет и то и другое. Пользуйте ZFS (+ software zfs raid) и диски в "сыром" виде.

    • Сударь, тут Вы чутка не правы: Qcow2 — это формат дискового образа программы QEMU. Название является аббревиатурой названия формата Copy-On-Write (копирование при записи)...

      • Сударь, я прав.
        Авто статьи пишет о CoW как о технологии, а не как о типе диска ВМ.

  9. Спасибо.
    Немного дополню.
    Лучше контроллер дисков выбирать VirtIO SCSI Single. Это позволяет использовать ОТДЕЛЬНЫЙ контроллер для каждого диска.
    Cache: Write back - не надо. Риск потери данных не стоит тех процентов скорости, что дает кеш. Тем более, что в PVE 7 появился io_uring
    Также крайне рекомендую использовать тип ВМ Q35 + UEFI для всех ОС Win Vista+ и всех _nix.

    Общее.
    Вместо танцев с драйверами в момент установки ОС можно установить ОС на ide или sata. После установить virtio-драйверы и временно добавить новый диск virtio - ОС сама подтянет необходимые драйверы. Затем выкл. ВМ, удалить этот диск и сменить тип контроллера на VirtIO SCSI Single. Делал так много раз при миграции на PVE.

    Зы. Всем интересующимся proxmox, pfsense etc - forum.netgate.com/topic/163435/proxmox-ceph-zfs-pfsense-%D0%B8-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D0%B2%D1%81%D0%B5-%D1%87%D0%B0%D1%81%D1%82%D1%8C-2

    • Статья про виндовс 10, где скорее всего будет один диск. VirtIO SCSI Single имеет смысл если более одного диска в системе, и то при повышенных нагрузках на диски. Про кэши автор писал ранее, так что это вкусовщина.

      • VirtIO SCSI Single и хуже точно не будет, я обещаю.
        Про кэши упомянул, чтобы народ не нравался на (большие) неприятности.
        И ждем дельных замечаний от вас, сударь.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.
Используешь Telegram? Подпишись на канал автора →
This is default text for notification bar