-
-
#1
Hi all,
In order to have some consistent VMs backups using VSS Snapshots, we’d like to install the guest agent in our Windows VMs.
We obtain an error message when executing qemu-ga-x64.msi :
Code:
There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor.
From the windows logs we can see :
Code:
Product: QEMU guest agent -- Error 1722. There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. Action RegisterCom, location: C:\Program Files\qemu-ga\qemu-ga.exe, command: -s vss-install
While you don’t click on the Ok button, it is possible to copy the files installed in «C:\Programs\qemu-ga\».
I’ve made a copy / paste of this directory and run a qemu-ga -s install
Code:
C:\Program Files\AgentQemu>qemu-ga.exe -s install
Registering QEMU Guest Agent VSS Provider:
C:\Program Files\AgentQemu\qga-vss.dll
C:\Program Files\AgentQemu\qga-vss.tlb
Failed to pUsersInRole->SaveChanges. (Error: 8000ffff) Défaillance irrémédiable
Removing COM+ Application: QEMU Guest Agent VSS Provider
Unfortunately it doesn’t install correctly.
Tested on Windows 2008 R2, Windows 2012 R2 and Windows 7 x64 with latest 0.1.102 virtio drivers installed, qemu agent enabled in Proxmox VM config
Any suggestions ?
Regards,
-
-
#3
Dear Wolfgang,
Thank you for your answer.
Yes the virtioserial dev was installed on all the virtual machines on which i try to install….
I forgot to mention that all the operations have been made with an admin account and UAC disabled.
Regards,
Thomas
-
-
#4
May be try an other version of the virtio iso.
It works here with the 0.1.102 iso.
-
-
#5
Just tested with latest virtio 0.1.112 , still the same problem …
Very strange.
-
-
#6
my procedure for Guest Agent, works on 18 Windows Boxes from XP, 7, 2008, 2008R2 to 2012R2:
check if QEMU Agent on VM is disabled, if not , shutdown VM and disable
installing Guest Agent as local Admin or Domain Admin
completely shutdown VM again
enable KVM Setting for Guest Agent
starting Windows, go to Device Manager and install serial Device Driver
reboot
-
-
#7
Hi, I have the same error. So I tried to uninstalled the thing but seems impossible too:
[3360:3164][2016-01-25T14:12:53]i326: Removed dependency: {15b28e32-5594-45e4-8386-60e363c78769} on package provider: {10043E6A-A6D2-40A5-8D38-59019AC776D2}, package qemu_ga_x64.msi
[3360:3164][2016-01-25T14:12:53]i329: Removed package dependency provider: {10043E6A-A6D2-40A5-8D38-59019AC776D2}, package: qemu_ga_x64.msi
[3360:3164][2016-01-25T14:12:53]i301: Applying execute package: qemu_ga_x64.msi, action: Uninstall, path: C:\ProgramData\Package Cache\{10043E6A-A6D2-40A5-8D38-59019AC776D2}v2.1.0.0\qemu-ga-x64.msi, arguments: ‘ ARPSYSTEMCOMPONENT=»1″ MSIFASTINSTALL=»7″‘
[3360:3164][2016-01-25T14:12:55]e000: Error 0x80070643: Failed to uninstall MSI package.
[3360:3164][2016-01-25T14:12:56]e000: Error 0x80070643: Failed to execute MSI package.
[42FC:430C][2016-01-25T14:12:56]e000: Error 0x80070643: Failed to configure per-machine MSI package.
[42FC:430C][2016-01-25T14:12:56]i319: Applied execute package: qemu_ga_x64.msi, result: 0x80070643, restart: None
[42FC:430C][2016-01-25T14:12:56]e000: Error 0x80070643: Failed to execute MSI package.
[3360:3164][2016-01-25T14:12:56]i318: Skipped rollback of package: qemu_ga_x64.msi, action: Install, already: Present
[42FC:430C][2016-01-25T14:12:56]i319: Applied rollback package: qemu_ga_x64.msi, result: 0x0, restart: None
[3360:3164][2016-01-25T14:12:56]i323: Registering package dependency provider: {10043E6A-A6D2-40A5-8D38-59019AC776D2}, version: 2.1.0.0, package: qemu_ga_x64.msi
[3360:3164][2016-01-25T14:12:56]i325: Registering dependency: {15b28e32-5594-45e4-8386-60e363c78769} on package provider: {10043E6A-A6D2-40A5-8D38-59019AC776D2}, package: qemu_ga_x64.msi
[42FC:430C][2016-01-25T14:12:56]i399: Apply complete, result: 0x80070643, restart: None, ba requested restart: No
is there a cleaner somewhere available?
-
-
#9
its the same a virtual agent client over vmware VM?
-
-
#10
its the same a virtual agent client over vmware VM?
View attachment 3372
Yes, it’s used to communicate with the VM in order to launch a VSS snaphot before the vzdump backup to have consistent vzdump backups…
But i’m still unable to install it ….
-
-
#11
Yes, it’s used to communicate with the VM in order to launch a VSS snaphot before the vzdump backup to have consistent vzdump backups…
But i’m still unable to install it ….
I had the exact same error and it was very cryptic to me as this problem turned out to be unrelated to qemu-ga at all.
I noticed that my server manager could not refresh some configuration data: «Server Manager 2012 : Configuration refresh failed with the following error: Invalid class».
The error was the same as the one I found poking around `qemu-ga.exe -s install` output. So I found a useful answer here:
https://social.technet.microsoft.co…rmanager#2a19f576-15df-4ecb-8f68-1454036cd7a6
It may be helpful if you have the same issue with your server manager (or whatever state that is broken and required for it to work). I am by no means a Windows guy and I will just quote the original author here (make sure you run it from cmd.exe — not powershell):
«1. from current directory (C:\Windows\System32) I did: dir /a /S *.mof then all *.mof’s in all subdirs were listet.
All are some type like «FFA7CB08C2CC2CB2D3973F6214D0CCAF.mof»
2. cd C:\Windows\System32\wbem\AutoRecover
3. for /f %s in (‘dir /b *.mof *.mfl’) do mofcomp %s
4. goto Servermanager, do Refresh — Ok.»
After that the qemu-ga msi worked without errors.
Happy VSS-ing.
-
-
#12
I had the exact same error.
Is there a solution ? All mentioned procedures have not worked
Thanks
-
-
#13
Have you also installed the virtio-serial com port in the VM?
-
-
#14
Hello, i’ve the same problem «There is a problem with this Windows Installer package…» On Windows 7 64bits VM.
Finaly, i’ve install 64bits driver for the serial communication and the 32bits version for the qemu-ga and it’s ok for me.
Ed
-
-
#15
Hi, I have found why the agent don’t install correctly in some case.
If you use an english version of Windows, no problem but in french the agent fail to install when registering vss provider (error =
Défaillance irrémédiable). I have not tested with other language.
Mo
-
-
#16
Indeed, my windows is in French version. I rather installed the 32bits version.
-
-
#17
Yes but if you install the 32 bits version of the guest agent on a 64 bits system, the vss for backup is not installed
-
-
#18
What is the solution then?
Thanks.
-
-
#19
I have not found a solution for the moment.
-
-
#20
I found a solution!
1. Install the Windows English Language Pack (https://www.microsoft.com/en-US/download/details.aspx?id=2634)
2. Install QEMU GA x64
3. Shutdown the VM, enable the Qemu Agent on WEBUI opitions.
4. Start the VM again and install the VirtioSerial driver to the «PCI simple comunication~».
5. Change language to your favorite in control panel.
Worked for me in 3 different servers.
Thanks @correctonet for figuring out the language bug!
A Red Hat Enterprise Linux host machine can issue commands to Windows guests by running the QEMU guest agent in the guest. This is supported in hosts running Red Hat Enterprise Linux 6.5 and newer, and in the following Windows guest operating systems:
-
Windows XP Service Pack 3 (VSS is not supported)
-
Windows Server 2003 R2 — x86 and AMD64 (VSS is not supported)
-
Windows Server 2008
-
Windows Server 2008 R2
-
Windows 7 — x86 and AMD64
-
Windows Server 2012
-
Windows Server 2012 R2
-
Windows 8 — x86 and AMD64
-
Windows 8.1 — x86 and AMD64
Windows guest virtual machines require the QEMU guest agent package for Windows, qemu-guest-agent-win. This agent is required for VSS (Volume Shadow Copy Service) support for Windows guest virtual machines running on Red Hat Enterprise Linux. More information can be found here.
Procedure 10.2. Configuring the QEMU guest agent on a Windows guest
Follow these steps for Windows guests running on a Red Hat Enterprise Linux host machine.
-
Prepare the Red Hat Enterprise Linux host machine
Make sure the following package is installed on the Red Hat Enterprise Linux host physical machine:
-
virtio-win, located in
/usr/share/virtio-win/
To copy the drivers in the Windows guest, make an
*.iso
file for the qxl driver using the following command:#
mkisofs -o /var/lib/libvirt/images/virtiowin.iso /usr/share/virtio-win/drivers
-
-
Prepare the Windows guest
Install the virtio-serial driver in guest by mounting the
*.iso
to the Windows guest in order to update the driver. Start the guest, then attach the driver .iso file to the guest as shown (using a disk named hdb):#
virsh attach-disk guest /var/lib/libvirt/images/virtiowin.iso hdb
To install the drivers using the Windows , navigate to the following menus:
-
To install the virtio-win driver — Select > > .
-
-
Update the Windows guest XML configuration file
The guest XML file for the Windows guest is located on the Red Hat Enterprise Linux host machine. To gain access to this file, you need the Windows guest name. Use the
# virsh list
command on the host machine to list the guests that it can recognize. In this example, the guest’s name is win7x86.Add the following elements to the XML file using the
# virsh edit win7x86
command and save the changes. Note that the source socket name must be unique in the host, named win7x86.agent in this example:... <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/win7x86.agent'/> <target type='virtio' name='org.qemu.guest_agent.0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <channel type='spicevmc'> <target type='virtio' name='com.redhat.spice.0'/> <address type='virtio-serial' controller='0' bus='0' port='2'/> </channel> ...
Figure 10.2. Editing the Windows guest XML to configure the QEMU guest agent
-
Reboot the Windows guest
Reboot the Windows guest to apply the changes:
#
virsh reboot win7x86
-
Prepare the QEMU guest agent in the Windows guest
To prepare the guest agent in a Windows guest:
-
Install the latest virtio-win package
Run the following command on the Red Hat Enterprise Linux host physical machine terminal window to locate the file to install. Note that the file shown below may not be exactly the same as the one your system finds, but it should be latest official version.
#
rpm -qa|grep virtio-win
virtio-win-1.6.8-5.el6.noarch #rpm -iv virtio-win-1.6.8-5.el6.noarch
-
Confirm the installation completed
After the virtio-win package finishes installing, check the
/usr/share/virtio-win/guest-agent/
folder and you will find an file named qemu-ga-x64.msi or the qemu-ga-x86.msi as shown:# ls -l /usr/share/virtio-win/guest-agent/ total 1544 -rw-r--r--. 1 root root 856064 Oct 23 04:58 qemu-ga-x64.msi -rw-r--r--. 1 root root 724992 Oct 23 04:58 qemu-ga-x86.msi
-
Install the .msi file
From the Windows guest (win7x86, for example) install the qemu-ga-x64.msi or the qemu-ga-x86.msi by double clicking on the file. Once installed, it will be shown as a qemu-ga service in the Windows guest within the System Manager. This same manager can be used to monitor the status of the service.
-
10.3.1. Using libvirt Commands with the QEMU Guest Agent on Windows Guests
The QEMU guest agent can use the following virsh
commands with Windows guests:
-
virsh shutdown --mode=agent
— This shutdown method is more reliable thanvirsh shutdown --mode=acpi
, asvirsh shutdown
used with the QEMU guest agent is guaranteed to shut down a cooperative guest in a clean state. If the agent is not present, libvirt has to instead rely on injecting an ACPI shutdown event, but some guests ignore that event and thus will not shut down.Can be used with the same syntax for
virsh reboot
. -
virsh snapshot-create --quiesce
— Allows the guest to flush its I/O into a stable state before the snapshot is created, which allows use of the snapshot without having to perform a fsck or losing partial database transactions. The guest agent allows a high level of disk contents stability by providing guest co-operation. -
virsh dompmsuspend
— Suspends a running guest gracefully using the guest operating system’s power management functions.
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: «».split(» «),
id: «106»
;
initTagRenderer(«».split(» «), «».split(» «), channelOptions);
StackExchange.using(«externalEditor», function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using(«snippets», function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: ‘answer’,
convertImagesToLinks: false,
noModals: false,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: «»,
onDemand: true,
discardSelector: «.discard-answer»
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave(‘#login-link’);
);
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin(‘.new-post-login’, ‘https%3a%2f%2funix.stackexchange.com%2fquestions%2f416709%2frunning-qemu-guest-agent-on-windows-server-2008%23new-answer’, ‘question_page’);
);
Post as a guest
QEMU Guest Agent — это программа-демон, которая устанавливается на ВМ. QEMU Guest Agent обеспечивает выполнение команд на ВМ и обмен информацией между ВМ и узлом кластера.
VMmanager использует QEMU Guest Agent чтобы изменять сетевые настройки ВМ без перезагрузки. Если QEMU Guest Agent недоступен для платформы в течение пяти минут, VMmanager перезагрузит ВМ для применения настроек.
Чтобы управлять ВМ с ОС CentOS, в QEMU Guest Agent должна быть включена функция guest-exec.
Чтобы избежать незапланированного перезапуска ВМ, вы можете проверить статус QEMU Guest Agent перед изменением настроек. Это можно сделать на ВМ или узле кластера.
Диагностика на ВМ
- Подключитесь к ВМ по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
-
Определите статус QEMU Guest Agent:
systemctl status qemu-guest-agent
Примеры ответов:
QEMU Guest Agent запущен
● qemu-guest-agent.service - QEMU Guest Agent Loaded: loaded (/usr/lib/systemd/system/qemu-guest-agent.service; enabled; vendor preset: enabled) Active: active (running) since Вт 2021-08-10 05:25:54 UTC; 1 weeks 3 days ago
QEMU Guest Agent остановлен
● qemu-guest-agent.service - QEMU Guest Agent Loaded: loaded (/usr/lib/systemd/system/qemu-guest-agent.service; enabled; vendor preset: enabled) Active: inactive (dead) since Пт 2021-08-20 06:27:16 UTC; 2s ag
QEMU Guest Agent не установлен
Unit qemu-guest-agent.service could not be found.
Диагностика на узле кластера
- Подключитесь к узлу кластера по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
-
Определите статус QEMU Guest Agent:
virsh qemu-agent-command <vm_id>_<vm_name> '{"execute": "guest-info", "arguments": {}}'
Если QEMU Guest Agent запущен, вы получите ответ вида:
Фрагмент ответа в JSON
{"return":{"version":"2.12.0","supported_commands":[{"enabled":true,"name":"guest-get-osinfo","success-response":true}
Если QEMU Guest Agent не запущен или остановлен, вы получите ответ вида:
ошибка: Guest agent is not responding: QEMU guest agent is not connected
-
Для ВМ с ОС CentOS определите статус функции guest-exec:
virsh qemu-agent-command <vm_id>_<vm_name> '{"execute":"guest-info"}' --pretty | grep -B1 "guest-exec"
Фрагмент ответа, если функция включена
"enabled": true, "name": "guest-exec",
Фрагмент ответа, если функция выключена
"enabled": false, "name": "guest-exec",
Восстановление работы
Если QEMU Guest Agent не установлен
- Подключитесь к ВМ по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
- Если на узле кластера установлена ОС Astra Linux Special Edition 1.8.1, добавьте репозитории frozen в файл /etc/apt/source.list:
Если на ВМ установлена ОС Astra Linux Special Edition 1.8.1
Если на ВМ установлена ОС Astra Linux Special Edition 1.7.5
Если на ВМ установлена ОС Astra Linux Special Edition 1.7.4
-
Установите QEMU Guest Agent:
ОС AlmaLinux, CentOS
yum install qemu-guest-agent
ОС Debian, Ubuntu, Astra Linux
apt install qemu-guest-agent
-
Добавьте QEMU Guest Agent в автозагрузку:
systemctl enable --now qemu-guest-agent
-
Проверьте статус QEMU Guest Agent:
systemctl status qemu-guest-agent
-
Проверьте статус службы SELinux:
Если статус отличается от disable:
-
Отключите SELinux. Для этого замените в файле /etc/selinux/config строку
на
- Перезагрузите ВМ.
-
-
Если в файле /etc/sysconfig/qemu-ga есть строка вида
BLACKLIST_RPC=guest-file-open,guest-file-close,guest-file-read,guest-file-write,guest-file-seek,guest-file-flush,guest-exec,guest-exec-status
- Закомментируйте или удалите эту строку.
-
Перезапустите QEMU Guest Agent:
systemctl restart qemu-guest-agent
Если QEMU Guest Agent остановлен
- Подключитесь к ВМ по SSH.
-
Запустите QEMU Guest Agent:
systemctl start qemu-guest-agent
Если функция guest-exec отключена
- Подключитесь к ВМ по SSH.
-
Выполните команду:
sed -i '/BLACKLIST_RPC=/cBLACKLIST_RPC=' /etc/sysconfig/qemu-ga
-
Перезапустите QEMU Guest Agent:
systemctl restart qemu-guest-agent
Работа QEMU Guest Agent в ОС Windows
Установка
- Чтобы подготовить ВМ к установке драйверов virtio, создайте диск размером 1 ГБ с типом подключения virtio и подключите его к ВМ: раздел Виртуальные машины → выберите ВМ → кнопка Параметры → раздел Виртуальные диски → Подключить еще диск → Создать диск и подключить → выберите Размер 1 ГБ и Тип подключения virtio → кнопка Подключить диск.
- Скачайте и установите на ВМ драйверы Virtio.
- Для Windows Server 2012 R2 используйте virtio-win-guest-tools версии 0.1.189.
- Для Windows Server 2008 используйте virtio-win-guest-tools версии 0.1.137.
- Скачайте и установите на ВМ ПО QEMU Guest Agent.
Диагностика
Запустите диспетчер управления службами services.msc и проверьте, что в списке запущенных служб есть QEMU Guest Agent. Если служба остановлена, запустите её. Если такой службы нет в списке, установите ПО QEMU Guest Agent.
Пример отображения статуса QEMU Guest Agent в диспетчере
Дата последнего обновления статьи: 15.10.2024. Статья подготовлена техническими писателями ISPsystem.
VirtIO drivers are paravirtualized device drivers required for Microsoft Windows virtual machines (VMs) to run in OKD Virtualization. The drivers are shipped with the rest of the images and do not require a separate download.
The container-native-virtualization/virtio-win
container disk must be attached to the VM as a SATA CD drive to enable driver installation. You can install VirtIO drivers during Windows installation or added to an existing Windows installation.
After the drivers are installed, the container-native-virtualization/virtio-win
container disk can be removed from the VM.
Table 1. Supported drivers
Driver name | Hardware ID | Description |
---|---|---|
viostor |
VEN_1AF4&DEV_1001 |
The block driver. Sometimes labeled as an SCSI Controller in the Other devices group. |
viorng |
VEN_1AF4&DEV_1005 |
The entropy source driver. Sometimes labeled as a PCI Device in the Other devices group. |
NetKVM |
VEN_1AF4&DEV_1000 |
The network driver. Sometimes labeled as an Ethernet Controller in the Other devices group. Available only if a VirtIO NIC is configured. |
Attaching VirtIO container disk to Windows VMs during installation
You must attach the VirtIO container disk to the Windows VM to install the necessary Windows drivers. This can be done during creation of the VM.
Procedure
-
When creating a Windows VM from a template, click Customize VirtualMachine.
-
Select Mount Windows drivers disk.
-
Click the Customize VirtualMachine parameters.
-
Click Create VirtualMachine.
After the VM is created, the virtio-win
SATA CD disk will be attached to the VM.
Attaching VirtIO container disk to an existing Windows VM
You must attach the VirtIO container disk to the Windows VM to install the necessary Windows drivers. This can be done to an existing VM.
Procedure
-
Navigate to the existing Windows VM, and click Actions → Stop.
-
Go to VM Details → Configuration → Disks and click Add disk.
-
Add
windows-driver-disk
from container source, set the Type to CD-ROM, and then set the Interface to SATA. -
Click Save.
-
Start the VM, and connect to a graphical console.
Installing VirtIO drivers during Windows installation
You can install the VirtIO drivers while installing Windows on a virtual machine (VM).
This procedure uses a generic approach to the Windows installation and the installation method might differ between versions of Windows. See the documentation for the version of Windows that you are installing. |
Prerequisites
-
A storage device containing the
virtio
drivers must be attached to the VM.
Procedure
-
In the Windows operating system, use the
File Explorer
to navigate to thevirtio-win
CD drive. -
Double-click the drive to run the appropriate installer for your VM.
For a 64-bit vCPU, select the
virtio-win-gt-x64
installer. 32-bit vCPUs are no longer supported. -
Optional: During the Custom Setup step of the installer, select the device drivers you want to install. The recommended driver set is selected by default.
-
After the installation is complete, select Finish.
-
Reboot the VM.
Verification
-
Open the system disk on the PC. This is typically
C:
. -
Navigate to Program Files → Virtio-Win.
If the Virtio-Win directory is present and contains a sub-directory for each driver, the installation was successful.
Installing VirtIO drivers from a SATA CD drive on an existing Windows VM
You can install the VirtIO drivers from a SATA CD drive on an existing Windows virtual machine (VM).
This procedure uses a generic approach to adding drivers to Windows. See the installation documentation for your version of Windows for specific installation steps. |
Prerequisites
-
A storage device containing the virtio drivers must be attached to the VM as a SATA CD drive.
Procedure
-
Start the VM and connect to a graphical console.
-
Log in to a Windows user session.
-
Open Device Manager and expand Other devices to list any Unknown device.
-
Open the Device Properties to identify the unknown device.
-
Right-click the device and select Properties.
-
Click the Details tab and select Hardware Ids in the Property list.
-
Compare the Value for the Hardware Ids with the supported VirtIO drivers.
-
-
Right-click the device and select Update Driver Software.
-
Click Browse my computer for driver software and browse to the attached
SATA CD drive, where the VirtIO drivers are located. The drivers are arranged
hierarchically according to their driver type, operating system,
and CPU architecture. -
Click Next to install the driver.
-
Repeat this process for all the necessary VirtIO drivers.
-
After the driver installs, click Close to close the window.
-
Reboot the VM to complete the driver installation.
Installing VirtIO drivers from a container disk added as a SATA CD drive
You can install VirtIO drivers from a container disk that you add to a Windows virtual machine (VM) as a SATA CD drive.
Downloading the |
Prerequisites
-
You must have access to the Red Hat registry or to the downloaded
container-native-virtualization/virtio-win
container disk in a restricted environment.
Procedure
-
Add the
container-native-virtualization/virtio-win
container disk as a CD drive by editing theVirtualMachine
manifest:# ... spec: domain: devices: disks: - name: virtiocontainerdisk bootOrder: 2 (1) cdrom: bus: sata volumes: - containerDisk: image: container-native-virtualization/virtio-win name: virtiocontainerdisk
1 OKD Virtualization boots the VM disks in the order defined in the VirtualMachine
manifest. You can either define other VM disks that boot before thecontainer-native-virtualization/virtio-win
container disk or use the optionalbootOrder
parameter to ensure the VM boots from the correct disk. If you configure the boot order for a disk, you must configure the boot order for the other disks. -
Apply the changes:
-
If the VM is not running, run the following command:
$ virtctl start <vm> -n <namespace>
-
If the VM is running, reboot the VM or run the following command:
-
-
After the VM has started, install the VirtIO drivers from the SATA CD drive.