This is an old revision of the document!
Setup_of_Windows_Server_2008_Guest_on_KVM
If you followed the setup of the KVM host at KVM_Setup_on_Debian_Squeeze you will notice that we are using libvirt to manage and control KVM. You should also have a Linux Virtual Machine setup using virt-install. This is required, as we are going to copy its libvirt xml config, edit it and then save it and create our own config for this Windows VM.
I place all ISOs on the KVM host at: /srv/os-images/ In the config below I add in the config to provide a boot menu allowing me to boot from the HD or CDROM at a later date (see: Provide_Boot_Menu_options_for_VMs_accessible_using_VNC )
lvcreate -n win01-vm –size 50g vg0 cd /etc/libvirt/qemu cp lin01-vm.xml win01-vm.xml vi win01-vm
When editing the copy of the xml config, we need to remove any UUID, MAC address and/or unique identifiers. The config below uses br1 bridge which is on a 192.168.1.1/255 range. I am not using virtio for the Windows VM (at this stage).
<domain type='kvm'>
<name>win01-vm</name>
<memory>524288</memory>
<currentMemory>524288</currentMemory>
<vcpu>1</vcpu>
<os>
<type arch='x86_64' machine='pc-0.12'>hvm</type>
<boot dev='hd'/>
<boot dev='cdrom'/>
<bootmenu enable='yes'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='block' device='disk'>
<target dev='hda' bus='ide'/>
<source dev='/dev/vg0/win01-vm'/>
</disk>
<disk type='file' device='cdrom'>
<target dev='hdc' bus='ide'/>
<source file='/srv/os-images/en_windows_server_2008_r2_standard.iso'/>
</disk>
<interface type='bridge'>
<source bridge='br1'/>
</interface>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='-1' autoport='yes' keymap='de'/>
<video>
<model type='cirrus' vram='9216' heads='1'/>
</video>
</devices>
</domain>
Once the config is edited, we need to define it, look at the resulting completed config and then start the VM. virsh define win01-vm.xml vi win01-vm.xml #You will notice extra uuid's and mac address added in. virsh list –all virsh start win01-vm The vm will now start. Connect using VNC. You can right-click on the VNC window titlebar, send a CTRL+ALT+DELETE to reboot and then press F12 to see the boot bios.
Server 2008 Core Install
Note: a server core install of windows server 2008 is a minimal install of ~2-3gb with only a command line interface. You can download the installation guide at: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=518d870c-fa3e-4f6a-97f5-acaf31de6dce&DisplayLang=en and read more info at: http://technet.microsoft.com/en-us/library/cc753802(WS.10).aspx