Я пытаюсь установить Windows Server 2012 R2 поверх Linux KVM-виртуализации.
Процесс установки останавливается и требует продолжения работы драйверов.
Я пытаюсь установить драйверы virtio из Fedora, но не работает. В процессе установки не отображается устройство хранения для установки.
Пробую разные варианты хранения: SATA, IDE, Virtio, Virtio SCSI.
Diskpart (список дисков) показывает мне диски, но установщик не может их использовать.
Я использовал разные версии драйверов virtio: virtio-win-0.1.105.iso, virtio-win-0.1.96.iso и virtio-win-0.1.101.iso с одинаковыми результатами.
Мой установочный диск: SW_DVD9_Windows_Svr_Std_and_DataCtr_2012_R2_64Bit_Spanish_-4_MLF_X19-82897.ISO
Вот как я сейчас устанавливаю Windows с драйверами virtio при установке:
Создайте новую виртуальную машину с подлинным установочным ISO-образом Windows. Я не могу гарантировать, что что-то будет работать, если вы используете пиратскую копию Windows или если ваш ISO-образ загружен не полностью или поврежден.
Выберите настройку конфигурации машины перед установкой.
Выберите жесткий диск IDE и измените его тип на VirtIO. Щелкните Применить.
Выберите IDE CDROM и измените его тип на SATA. Щелкните Применить.
Щелкните Добавить оборудование, затем добавьте второй привод SATA CDROM с образом virtio-win.iso.
(Необязательно) Также измените виртуальный сетевой адаптер на VirtIO. Вы сможете установить его драйверы после установки Windows, и это избавит вас от раздражающего «Ethernet 2» в дальнейшем.
Нажмите «Начать установку» и начните установку Windows.
Когда программа установки спросит вас, куда установить Windows, нажмите Загрузить драйвер.
На следующей странице. нажмите "Обзор" и перейдите к \viostor\2k12R2\amd64
папка на втором CD-приводе, virtio-win-0.1.xx
.
Появится контроллер Red Hat VirtIO SCSI. Нажмите кнопку "Далее.
Теперь ваш виртуальный диск успешно обнаружен. Наслаждайтесь!
После завершения установки вы можете использовать компакт-диск virtio-win для установки драйверов для оставшегося оборудования, такого как сетевая карта, драйвер балуна и т. Д. Откройте Диспетчер устройств, чтобы узнать, на какие устройства необходимо загрузить драйверы. А когда вы закончите установку драйверов, вы можете удалить второй виртуальный привод CDROM из виртуальной машины.
Наконец, если вы собираетесь выполнить sysprep этого изображения, например для создания золотого мастера нажмите CtrlсдвигF3 здесь, чтобы перейти непосредственно в режим аудита.
(А чтобы обновить видеодрайвер, см. другой ответ, который я написал).
Основная проблема была в получении драйверов. Я скачал свой отсюда https://fedoraproject.org/wiki/Windows_Virtio_Drivers и успешно получил win 2012 r2, работая над KVM
Я разместил видео, показывающее весь процесс, который я использовал https://youtu.be/9SPCa4TKues
Я обнаружил проблему с помощью bus = 'virtio' и установил драйверы virtio из образа драйвера Fedora. Наша спецификация хоста (короткая версия):
Обратите внимание, что из-за возникшей проблемы мы обновили версию ядра и qemu-kvm. Это не было решением проблемы!
Наши гостевые спецификации:
А теперь самое интересное (я использую virsh для управления гостями): Вот пример моего старого определения диска.
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/kvm/pathToWhatever/MYGUEST.qcow2'/>
<target dev='vda' bus='virtio'/>
</disk>
Довольно просто, ничего особенного здесь нет, обратите внимание на bus = 'virtio', которое в основном предлагалось в каждом учебнике или форуме, которые я нашел.
После этого установите Windows Server ... пока никаких проблем. Затем я установил драйвер virtio из образа Fedoraproject. Теперь у нас много операций ввода-вывода, так как мы запускаем большой импорт / обновление БД и так далее. Мы выполнили запрос к огромной таблице базы данных, и, хотя он начинался, вскоре через несколько минут Гость просто завис. Мы отлаживали это часами / днями и ничего не нашли в журналах.
Мы даже пытались воспроизвести это с помощью виртуального бокса, но там он работал отлично.
Только сегодня я узнал, что при переключении на bus = 'ide' и последующем запуске SQL-запроса (импорт) он работает абсолютно нормально - высокий ввод-вывод вообще не проблема.
Теперь я подозреваю, что драйвер virtio просто сломан или несовместим. Я не являюсь экспертом в этом вопросе, но временным решением для нас было переключиться на IDE. В настоящее время я тестирую его, используя bus = 'scsi', а затем в определении типа контроллера, как показано ниже, определяю virtio-scsi как модель.
<controller type='scsi' model='virtio-scsi' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</controller>
Я опубликую свои результаты, как только я их правильно протестирую.