Hyper-V Program Manager
Now that the Hyper-V integration services are included in the official Linux builds – I wanted to try out a Linux distribution that is not officially supported by Microsoft and see what was involved in getting it all working. With the recent release of Ubuntu 10.10 I thought I would try out their server version. After downloading the bits from http://www.ubuntu.com/server I created a quad-processor virtual machine with a non-legacy network adapter.
Installation was fairly straight forward:
However – Ubuntu does not have the Hyper-V enlightened network drivers enabled by default – so the installation complains about not being able to find any network adapters:
But I just ignored that and moved along with the install:
I chose the default packages for setting up a LAMP server:
The install finished and I was dropped at the login prompt:
A cool thing to note was that at this stage I could already shut down the virtual machine by using the shutdown button on the Virtual Machine Connection window, so part of the integration services are already running. You can also see that all four virtual processors are there and working:
Getting the Hyper-V drivers up and running at this point in time is actually relatively simple. The first thing you need to do is to edit /etc/initramfs-tools/modules and add the following lines to the end of it:
Once you have made these changes you will need to run “update-initramfs –u” and reboot. You will now have the Hyper-V drivers for storage and networking loaded:
You can confirm that these drivers are loaded by running “lsmod” after the reboot:
The final thing you need to do is to configure networking (because that step was skipped during installation). The first thing to do is to run “ifconfig –a” to find out what name your network adapter has been given. In my case it was “eth0” – but this is not always the name it will get. Once you know the name you will need to edit /etc/network/interfaces and add the following to the end of the file:
For DHCP (what I did):
auto eth0 iface eth0 inet dhcp
For a Static IP address:
auto eth0 iface eth0 inet static address [insert your IP address] netmask [insert your netmask] Gateway [insert your gateway address] Like this:
One more reboot and running “ifconfig” should confirm that everything is working:
And in my case I could also confirm that the website was accessible from my parent partition as well:
So there you have it. Ubuntu Server 10.10 running under Hyper-V with full integration services using nothing other than what is included on the Ubuntu install media.
Interesting post. Have you tried to stress the system?
We are struggling with HyperV and Ubuntu. We have run Ubuntu 10.04 and 10.10 in VirtualBox and on physical desktops without any problems. On HyperV we have problems.
On HyperV if I use the integration components I get file system corruption (I've tried ext4 and ext3 file systems). The corruption may appear during upgrades or during reboots. If I disable the HyperV integration components and use the legacy network driver then the file system is ok but HyperV is reporting triple cpu faults, the network is not reliable, the console terminal locks up periodically and the OS will lock up.
Hyper V and Ubuntu Server 10.10 run great together except with the latest updates it breaks. :/
This is really great!
FYI. The same install process seems like it might work for the Ubuntu Server 10.0 x86 install as well. However, once the HyperV modules are enabled, many exceptions are spit out on the console. If you get far enough to actually enable the network, then after rebooting the exceptions result in a hung system.
I'm having issues with the hv_netvsc driver... after around an hour, all connectivity seems to drop, everything I do times out. If I do "ifdown eth0" (in preparation to ifup'ing it again) I get the following in syslog:
Nov 20 02:41:00 ekaterin kernel: [13570.100628] NETVSC: RndisFilterSetPacketFilter() ERROR!! timeout before we got a set response...
Nov 20 02:41:00 ekaterin kernel: [13570.103312] NETVSC_DRV: netvsc_close() ERROR!! unable to close device (ret -1).
nothing I've done short of a reboot brings it back. Do you have any suggestions on what I can do to resolve or better troubleshoot this? At the moment, my workaround is just to use the legacy network card, but that's not ideal.
Sorry to cross-post here but check my response
Hi! you have a little bug in your screen, in configuring the "interfaces" file you have "seth" instead of eth right?
I'm also having problems with the latest Ubuntu updates, it breaks my file system :/
I just wanted to note something about the mouse integration. Although it doesn't work if you remote directly into one of the cluster nodes, if you install the clustering snap-in on another machine, say a windows 7 workstation, and then use it to connect to the cluster, then the mouse integration works perfectly.
Did anyone tried to disable time synchronization service? I installed Ubuntu Server x64 and it was a breeze until I disabled time synchronization. With time synchronization disabled, the VM hangs after
UMBU3: channel <ffff88000bcZ4ZOO> open success!!
UMBU3: Shutdown channel functionality initialized
UMBUS: channel <ffff88000bcZ6eOO> open success!!
UMBUS: Heartbeat channel functionality initialized
I suppose there is a way to disable time synchronization channel within Ubuntu, but I don't know how. Any thoughts? Thanks.
to Michael W,
ubuntu 10.10 Desktop i386 works well.
10.10 works well
follwed your guide... thank you so much.
Now it sounds to me like the mouse is not working for you at all? If that is the case it is probably due to you using RDP from your workstation to another . . . server, then from their using SCVMM or Hyper-V Manager to connect to the VM. This will NOT work for mouse. If you use your workstation to connect to the VM directly via SCVMM or Hyper-V Manager it will work just fine. It is simply the problem with the RDP connection losing control of the mouse (this happens on Windows guests with no ICs as well).
Mini How-To about _practically_ method for worked mouse in Linux guest:
Linux on Hyper-V How-To FIX “Mouse not captured in Remote Desktop session”
. . .
Without Satori, mouse work in Linux Guest if connect to it from Windows _directly_
Works very well with 10.10 as configured above, but after upgrading to kernel 2.6.35-27 (Ubuntu) with aptitude safe-upgrade Kernel PANIC and massive errors. Has anyone upgraded to the current kernel release?