2. Agenda
• Short overview
• Enlightened vs. emulated
• A bit of history
• What’s officially supported?
• What actually works?
• How does it work?
• More about Linux Integration Services
• Linux P2V conversions for Hyper-V
• Backing-up Linux VMs
• MAP Toolkit 6.5
• The future of Linux on Hyper-V
4. How does it work?
• VSP (virtualization service provider)
• Hyper-V component in the”parent partition”
• Communicates with the hardware drivers
• Gives access to the host resources
• VSC (virtualization service client)
• Drivers for”synthetic devices” installed in the enlightened guest OS
• Exposes every virtual device and translates I/O requests
• There’s always a VSP/VSC pair
• VMBus (virtual machine bus)
• A high-speed point-to-point in-memory bus
• Allows the communication between VSPs and VSCs through Hyper-V
• For Linux, every VSC has a DIM (Driver Interface Mapper)
• DIMs interact with the Linux Kernel like any other driver
• There’s also a “VSC core” based on each existing VSP
5. Emulated vs. enlightened
• Emulated drivers
• Drivers are “emulated”
• All requests targeting the hardware (HDD, network, etc) are not direct
• “Translated” in both directions (VM-hw, hw-VM) by the hypervisor
• They bring in a performance overhead
• The emulated drivers are pretty similar to what we had in Virtual Server:
• Video = S3 Trio64+ SVGA (VESA)
• Network = Intel/DEC ”Tulip” 21x4x
• IDE = Intel 440BX chipset MB
• ”Enlightened” drivers
• Also known as “synthetic drivers”
• These make the VM ”hypervisor aware”
• Written especially for virtualized environments => paravirtualization
• They’re basically just pointers to the drivers in the ”parent partition”
• Huge performance boost!
6. The road so far
• What’s been done so far?
• July 2009 – Microsoft contributes with over 20.000 lines of code in the Linux kernel
• December 2009 – The drivers (in staging) are included in the 2.6.32 Kernel
• July 1st 2010 – Microsoft presents at the Red Hat Summit
• Official support list: http://technet.microsoft.com/en-us/library/cc794868(WS.10).aspx
• Linux Integration Services 2.1 RTM (July 29th 2010)
• SUSE Linux Enterprise Server (10 SP1/SP2/SP3, 11)
• Red Hat Enterprise Linux (5.2, 5.3, 5.4, 5.5)
• Linux Integration Services 3.2 RTM (January 12th 2012)
• Red Hat Enterprise Linux 6.0 and 6.1 x86 and x64 (Up to 4 vCPU)
• CentOS 6.0/6.1 x86 and x64 (Up to 4 vCPU)
• Requirements
• A Linux ISO or DVD, using distributions based on the 2.6.16-27 or 2.6.32+ Linux kernel
• Linux Development Tools (gcc, kernel-devel / linux source) for older versions of the IS
• Linux Integration Services for Hyper-V
• (optional) Enlightened mouse driver
• Total install duration: ~40-45 minutes
7. Linux ”unofficial” support
• There’s no need for the Integration Services to install Linux on Hyper-V
• Most distributions work just fine in an emulated environment (lower performance)
• So why don’t we have more supported Linux distros?
• …such as Hannah Montana Linux - http://hannahmontana.sourceforge.net/
• The answer is simple: there are no companies to offer dedicated support
• Support is usually offered by the community
• Microsoft doesn’t have anyone to create a support agreement with
• They don’t officially cover these under standard support incidents
• They do recommend the communities for help (MVPs, Linux distro-related communities)
• Users have reported successful installs of:
• Ubuntu, Debian, Fedora, CentOS, other distros (e.g. Hannah Montana Linux)
• Even FreeBSD and Open Solaris
8. The road to “enlightment”
• Driver support for synthetic devices (v1 – original distro code, created by Citrix)
• Synthetic network controller & Synthetic storage controller (IDE/SCSI)
• Fastpath Boot Support for Hyper-V (v2.0 – December 2009)
• Block VSC – increased boot performance
• Timesync (v2.1 – July 2010)
• The clock inside the virtual machine will remain synchronized with the clock on the host
• Integrated Shutdown (v2.1 – July 2010)
• VMs can be cleanly shut down from Hyper-V
• Symmetric Multi-Processing (SMP) Support (v2.1 – July 2010)
• Supported Linux distributions can use up to 4 virtual processors (VP) per virtual machine
• Heartbeat (v2.1 – July 2010)
• Allows the host to detect whether the guest is running and responsive
• Pluggable Time Source (v2.1 – July 2010)
• A pluggable clock source module is included to provide a more accurate time source to the guest.
• KVP (Key Value Pair) Exchange (v3.1 – July 2011)
• Information about the running Linux VM can be obtained by using the Key Value Pair exchange functionality on the host
(FQDN, Linux IS version, IP addresses, OS version/distro/kernel, CPU architecture x86/x64)
• Integrated Mouse Support (v3.2 – January 2012)
• The cursor is no longer bound to the VMConnect window when used with the Linux Graphical User Interface
9. Project Satori
• http://www.xen.org/products/satori.html
• A collaboration project between Citrix and Microsoft
• The main components of project Satori became Linux IS for Hyper-V
• The old Linux IS did not have ”input devices” support
• No mouse support in “non-enlightened” guests accessed through cascaded TS/RDP
• Workaround: local Hyper-V Console (RSAT) or direct connection into the VM
• The “captured mouse” experience on Linux guests is not fun
• Most Linux installs don’t need a GUI
• Project Satori brings in InputVSC
• Enlightened mouse drivers
• They require Linux IS 2.x to be installed
• Root access required
• Available under a GPL 2.0 license
10. TechEd 2010 - WSV305
Comparing to IS on Windows
• Synthetic Drivers
• IDE driver
• SCSI driver
• Network Drive
• Mouse Integration
• Video
• Integration Services
• Operating System Shutdown
• Time Synchronization
• Heartbeat
• Data Exchange
• Backup (VSS)
13. TechEd 2010 - WSV305
Linux IS v2.1 prerequisites
• Red Hat updates
– yum install kernel-devel
– yum groupinstall "development tools"
– yum update
• SLES updates
– yast –i kernel-devel
– yast –i kernel-source
– yast –i gcc
14. TechEd 2010 - WSV305
Installing Linux IS – RHEL 5 x64
15. TechEd 2010 - WSV305
Installing Linux IS – SLES 10 SP2
16. Linux IS v2.1 installation
• Copy the .iso content locally
mkdir -p /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
cp -rp /mnt/cdrom /opt/linux_is
umount /mnt/cdrom
• Install the drivers
cd /opt/linux_is
make
make install
• Before IS 2.1, the install was done using a Perl script
./setup.pl drivers
• Reboot
17. Linux IS v3.2 installation
• Linux IS 3.x brings RPM support
• Install the drivers
mount /dev/cdrom /media
cd /media
./install.sh
• Reboot the VM
41. Hyper-V Resource Meters
• Historic Resource utilization information
• Persistent through live migrations
Network
• Incoming & Outgoing
Traffic per IP Address
Range
Storage
• High Water-Mark Disk
Allocation
Memory
• Low & High Water-Mark
Memory Utilization
• Average Memory
Utilization
CPU
• Average CPU Utilization
43. Linux P2V conversion
TechEd 2010 - WSV305
http://blogs.technet.com/b/enterprise_admin/archive/2010/05/13/linux-p2v-with-dd-and-vhdtool-easy-and-cheap.aspx
• You can use DD and VHDtool
– DD works both on Windows and Linux
– One case: you attach the Linux HDD on a Windows machine
44. TechEd 2010 - WSV305
Linux P2V (DD)
• From a command line, you convert the HDD into a RAW image format (.img)
• dd if=?DeviceHarddisk1DR2 of=D:rhel54.img bs=1M --progress
45. TechEd 2010 - WSV305
Linux P2V (VHDTool)
http://archive.msdn.microsoft.com/vhdtool
• A command-line tool, open-source
– Includes functions to manipulate VHD files (create, convert, extend, repair)
– An excelent P2V conversion tool for Linux machines
– It convers RAW images into VHDs
49. DPM for Hyper-V
ONLINE OFFLINE
OS supports VSS OS without VSS
Recursive VSS call Save VM state
Linux
DPM
AGENT
50. DPM, non-VSS aware guests
1. DPM marks the start of
the backup
2. Save OS state (<1 min)
OFFLINE
(hibernate, save RAM)
3. VSS snapshot (~10 sec)
4. Resume OS
5. Actual DPM backup is
taken
52. MAP Toolkit 6.5
http://technet.microsoft.com/en-us/library/bb977556.aspx
• Secure, agentless, network-wide inventory
• Windows XP Professional, Vista, 7
• Office 2010 and previous versions
• Windows Server 2008 or Windows Server 2008 R2
• Windows Server 2003 or Windows Server 2003 R2
• Windows 2000 Professional or Windows 2000 Server
• Windows Internet Explorer 9 and previous versions
• VMware vSphere, vCenter, ESX, ESXi, Server
• Selected Linux distributions
• LAMP application stack discovery
• SQL Server
• MySQL
• Oracle
• Sybase
• Hyper-V
56. Upcoming Functionality
• Dynamic Memory for Linux guests
• Ballooning only for first implementation
• Bi-Directional KVP
• Jumbo Frames
• VLAN Tag support (requires Win8)
• 802.1q support (requires Win8)
• Ubuntu 12.04 LTS support
57. Driver Status
Drivers getting out of staging:
• Kernel v3.2: hv_vmbus, hv_utils
• Kernel v3.3: hv_netvsc; hv_mouse
• Kernel v3.4: hv_storvsc
Net Result:
• All Hyper-V drivers out of staging and part of the
mainline Linux kernel by v3.4
• Linux = first-class citizen on Hyper-V