Windows 7 guest best practices: Difference between revisions

From Proxmox VE
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
==Introduction==
==Introduction==


This is a set of best practices to follow when installing a Windows 7 guest on a Proxmox VE server 2.x (2.3 at time of writing).  Right now it's a work in progress but hopefully soon it will be a comprehensive and reliable document. Please feel free to add to it, even if just to pose a potential best practice.
This is a set of best practices to follow when installing a Windows 7 guest on a Proxmox VE server 4.x (4.0 beta at time of writing).  Right now it's a work in progress.


==Install==
==Install==


===Prepare===
===Prepare===
* ​After clicking "Create VM" enter a Name: for your vm, select your Resource Pool (if you have one) and click Next
* Create a new VM, select "Microsoft Windows 7/2008" continue and mount your Windows 7 ISO in the CDROM drive
* Select Microsoft Windows 7/2008 in the OS tab and click Next.
* For your virtual hard disk select "VirtIO" as bus and "Write back" as cache option for best performance.
* Select an ISO Image: for Windows 7 in the CD/DVD tab and click Next.
* Configure your memory settings as needed, continue and set "VirtIO (paravirtualized)" as network device, finish your VM creation.
* Select Bus/Device: VIRTIO, Storage: "your preferred storage" and Cache: Write back in the Hard Disk tab and click Next.
* For the VirtIO drivers upload the driver ISO (successfully tested with "virtio-win-0.1.105.iso", [https://fedoraproject.org/wiki/Windows_Virtio_Drivers#Direct_download get it from here]) to your storage, so you can mount it in a second, newly created, CDROM drive (use "Add -> CD/DVD drive" in the hardware tab).
* Select number of Sockets and cores (the default of 1 is mostly sufficient) in the CPU tab and click Next.
* Now your ready to start the VM, just follow the Windows installer.
* Select Automatically allocate memory and set the Maximum memory to a number you may require in the memory tab and click Next.
* Select Model: VirtIO (paravirtualized) in the Network tab and click Next
* Click finish and go to the Hardware tab of your newly created VM and click Add -> CD/DVD drive
* Select Storage:local and ISO image: virtio-win-x.x.iso and click create.


===Launch Windows install===
===Launch Windows install===
* Start your newly created virtual machine using the "Start" link in the upper right.  
* After starting your VM launch the console
* wait until the vm icon has turned white before you login using the "Console" link in the upper right. (NOTE: Sometimes the java console does not start at the first attempt. Please click refresh/reload in this case)​​
* Follow the installer steps until you reach the installation type selection where you need to select "Custom (advanced)"
* Now click "Load driver" to install the VirtIO drivers for hard disk and the network. (successfully tested with "virtio-win-0.1.105.iso")
** hard disk: Browse to the CD drive where you mounted the VirtIO driver and select folder "viostor\w7\amd64" and confirm. Select the "Red Hat VirtIO SCSI controller" and click next to install it. Now you should see your drive.
** Network: Repeat the steps from above (click again "Load driver", etc.) and select the folder "NetKVM\w7\amd64", confirm it and select "Redhat VirtIO Ethernet Adapter" and click next.
** Memory Ballooning: Again, repeat the steps but this time select the "Balloon\w7\amd64" folder, then the "VirtIO Balloon Driver" and install it by clicking next. With these three drivers you should be good covered to run a fast virtualized Windows 10 system.
* Choose the drive and continue the Windows installer steps.


* Start the server install with "Install Now" and click next and select "Custom (advanced)"
* If you do not see "Drive 0 / Unallocated Space" click Load driver, browse to CD named CDROM and select folder WIN7\AMD64 and confirm. Select all three offered drivers (by pressing the CTRL button) "Red Hat VirtIO SCSI controller, Redhat VirtIO NIC and Red Hat Balloon driver" and click next.
* Install Windows to "Drive 0 / Unallocated Space"
* Wait until Windows is installed and select a Password for the local Administrator account and login to Windows.


===Install additional VirtIO drivers===
==Install additional VirtIO drivers on running System==
If you don´t got all virtio drivers selected on install, you can install them also later.
:''See also: [[Paravirtualized Block Drivers for Windows]]''
* Start Explorer, Go to CDROM, copy folder WIN7\AMD64 to C:\Program Files\ and rename AMD64 to C:\Program Files\VirtIO
 
* open Device Manager and right click on Other Devices -> Ethernet Controller and select update driver software
[[File:Install virtio driver.png|200px|thumb|right|VirtIO Ethernet Installation]]
* select "Browse my computer" select folder "C:\Program Files\VirtIO" and click "Install" for Red Hat VirtIO Ethernet Adapter.
 
* again in Device Manager right click on Other Devices -> PCI Device and select update driver software
If you miss some VirtIO drivers, you may install them as follows on a running system.
* again "Browse my computer" select folder "C:\Program Files\VirtIO" and click "Install" for VirtIO Balloon Driver.
 
To do so, start the file explorer, select the CDROM drive with the VirtIO iso image mounted and browse to the folder folder of the desired component. Some often needed, using the virtio-win-0.1.105 version, are:
* Ethernet Adapter: NetKVM\w8.1\amd64 here right-click the setup information file "netkvm" and select install.
* Virtual Memory Balloon Driver: Balloon\w8.1\amd64 here right-click the setup information file "balloon" and select install.
* Hard disk: viostor\w8.1\amd64 here right-click the setup information file "viostor" and select install.
After the installation process the device should work as expected.


For more information and configuration about ballooning, see [[Dynamic Memory Management]]
For more information and configuration about ballooning, see [[Dynamic Memory Management]]


==further info==
==Further information==


===raw vs qcow2===
===Disk-Image Format: raw vs qcow2===
Raw file format provides slightly better performance while qcow2 offers advanced features such as copy on write and [[Live_Snapshots]].
Raw file format provides slightly better performance while qcow2 offers advanced features such as copy on write and [[Live_Snapshots]].
Since V2.3, qcow2 is the default format.
Since V2.3, qcow2 is the default format.


===virtio drivers===
===VirtIO drivers===
Use virtio dirvers for best performance. More info:
 
Use VirtIO drivers for best performance. More info:
[[Paravirtualized Block Drivers for Windows]]
[[Paravirtualized Block Drivers for Windows]]


Line 48: Line 51:
[[Windows guests - build ISOs including VirtIO drivers]]
[[Windows guests - build ISOs including VirtIO drivers]]


latest iso with virtio drivers :
Latest iso with VirtIO drivers :
https://fedoraproject.org/wiki/Windows_Virtio_Drivers
https://fedoraproject.org/wiki/Windows_Virtio_Drivers


==See also==
[[Windows 2012 guest best practices]]


[[Windows 8 guest best practices]]
[[Windows 10 guest best practices]]


[[Category: HOWTO]]
[[Category: HOWTO]]

Revision as of 09:34, 15 July 2015

Introduction

This is a set of best practices to follow when installing a Windows 7 guest on a Proxmox VE server 4.x (4.0 beta at time of writing). Right now it's a work in progress.

Install

Prepare

  • Create a new VM, select "Microsoft Windows 7/2008" continue and mount your Windows 7 ISO in the CDROM drive
  • For your virtual hard disk select "VirtIO" as bus and "Write back" as cache option for best performance.
  • Configure your memory settings as needed, continue and set "VirtIO (paravirtualized)" as network device, finish your VM creation.
  • For the VirtIO drivers upload the driver ISO (successfully tested with "virtio-win-0.1.105.iso", get it from here) to your storage, so you can mount it in a second, newly created, CDROM drive (use "Add -> CD/DVD drive" in the hardware tab).
  • Now your ready to start the VM, just follow the Windows installer.

Launch Windows install

  • After starting your VM launch the console
  • Follow the installer steps until you reach the installation type selection where you need to select "Custom (advanced)"
  • Now click "Load driver" to install the VirtIO drivers for hard disk and the network. (successfully tested with "virtio-win-0.1.105.iso")
    • hard disk: Browse to the CD drive where you mounted the VirtIO driver and select folder "viostor\w7\amd64" and confirm. Select the "Red Hat VirtIO SCSI controller" and click next to install it. Now you should see your drive.
    • Network: Repeat the steps from above (click again "Load driver", etc.) and select the folder "NetKVM\w7\amd64", confirm it and select "Redhat VirtIO Ethernet Adapter" and click next.
    • Memory Ballooning: Again, repeat the steps but this time select the "Balloon\w7\amd64" folder, then the "VirtIO Balloon Driver" and install it by clicking next. With these three drivers you should be good covered to run a fast virtualized Windows 10 system.
  • Choose the drive and continue the Windows installer steps.


Install additional VirtIO drivers on running System

See also: Paravirtualized Block Drivers for Windows
VirtIO Ethernet Installation

If you miss some VirtIO drivers, you may install them as follows on a running system.

To do so, start the file explorer, select the CDROM drive with the VirtIO iso image mounted and browse to the folder folder of the desired component. Some often needed, using the virtio-win-0.1.105 version, are:

  • Ethernet Adapter: NetKVM\w8.1\amd64 here right-click the setup information file "netkvm" and select install.
  • Virtual Memory Balloon Driver: Balloon\w8.1\amd64 here right-click the setup information file "balloon" and select install.
  • Hard disk: viostor\w8.1\amd64 here right-click the setup information file "viostor" and select install.

After the installation process the device should work as expected.

For more information and configuration about ballooning, see Dynamic Memory Management

Further information

Disk-Image Format: raw vs qcow2

Raw file format provides slightly better performance while qcow2 offers advanced features such as copy on write and Live_Snapshots. Since V2.3, qcow2 is the default format.

VirtIO drivers

Use VirtIO drivers for best performance. More info: Paravirtualized Block Drivers for Windows

Make it really easy: Build your ISO with drivers already included: Windows guests - build ISOs including VirtIO drivers

Latest iso with VirtIO drivers : https://fedoraproject.org/wiki/Windows_Virtio_Drivers

See also

Windows 2012 guest best practices

Windows 10 guest best practices