In the beginning of June, the new Intel Haswell CPUs will be available. Besides the regular improvements like being faster, having better energy efficiency and having better graphics capabilities, these new CPUs will also include VMCS shadowing (Virtual Machine Control Structure Shadowing).
Basically it’s a feature that allows you to run a hypervisor (like VMware, Hyper-V, Xen Server) and create another hypervisor as a VM beneath it. This is also called nested virtualization.
Some of you might say, “Hey this is not new, I’ve already done this with VMware!”. The difference however is that the current method uses some sort of emulation that does not directly access the hardware. And even though it’s great for testing purposes, the performance is suboptimal.
With the embedded hardware supported VMCS shadowing in the new Intel Haswell CPU the nested hypervisor can directly access the hardware, which should improve performance. Also, it might even make it possible to use non-VMware hypervisors in a nested virtualization scenario.
Of course as always, we’ll just have to wait and see how the performance will be in real-life. It’s also not clear to me yet if hypervisors need to be updated to be able to leverage this option. Nonetheless, to me it sounds very promising and I look forward to playing around with it.
For more information read this great article by Gabe Knuth called “Could VMCS Shadowing (a.k.a. nested VMs) from Intel’s new Haswell processors be what Bromium needs to work in VMs?”. When you use the links in the article you will be able to get more information about the Intel Haswell CPUs including benchmarks and more detailed information about VMCS shadowing and use cases.
[EDIT 08-06-2013] Citrix is working hard on integrating VMCS Shadowing / Nested VMs in their products:
If you’re planning to build / buy an Intel Haswell based computer or Home Lab, be sure to look into the confirmed USB3 bug in the chipset. Also unfortunately the DDR3 prices have increased substantially (almost 50%) over the last half year.
Tags: Citrix, CPU, DDR3, DDR3 memory, Hyper-V, hypervisor, hypervizor, Intel, Intel Haswell, Intel Haswell bug, Intel Haswell USB3 bug, memory, Microsoft, nested virtualisation, nested virtualization, performance, processor, USB3 bug, virtualisation, virtualization, VMCS, VMCS shadowing, VMware, vSphere, Xen Server, XenServer
Roger Osborne has posted a great article with a Windows Server 2012 Hyper-V best practices checklist.
I especially like the fact that it’s not just a checklist, but it also explains what it does and why it is considered a best practice to do it this way (in specific situations).
Additionally you might also want to take a look at “Top 20 Hyper-V Performance Metrics You Should Care About” and System Center Advisor.
Tags: best practice, best practices, best practices checklist, check list, checklist, Hyper-V, Hyper-V 3.0, hypervisor, hypervizor, ICT, Microsoft, Server 2012, virtualisation, virtualization, Windows 2012, Windows 2012 Server, Windows Server 2012
The videos of the “Virtualization for VMware Professionals Jump Start” have been posted to the Microsoft Virtual Academy (MVA):
Unfortunately I wasn’t able to attend this session live, but thanks to MVA I can still view the recordings when it is convenient for me.
Tags: Hyper-V, hyperv, hypervisor, hypervizor, ICT, jump start, jumpstart, Microsoft, Microsoft Virtual Academy, MVA, q&a, Training, transcript, video, videos, Virtual Academy, virtualization
The videos of the “Introduction to Hyper-V Jump Start” have been posted to Microsoft Virtual Academy:
Unfortunately however, the link to the Q&A transcript has only been sent by mail to participants. The Q&A has very valuable information in it as well, so be sure to take a look at it here.
[EDIT] I mailed the MVA people and they added the Q&A to the MVA website as well. Love the MVA [EDIT]
Tags: hyper visor, hyper vizor, Hyper-V, hyperv, hypervisor, hypervizor, ICT, jump start, jumpstart, Microsoft, Microsoft Virtual Academy, MVA, q&a, Training, transcript, video, videos, Virtual Academy, virtualization
In yesterday’s post I described that for my purposes it was still necessary to run VMware Workstation sometimes despite having Client Hyper-V installed on my Windows 8 machine.
What you have to keep in mind though, is that you’re already running a hypervisor when you have Client Hyper-V installed in Windows 8. Installing and running VMware Workstation might cause problems. So unfortunately you cannot run them at the same time. This is also true for other virtualization products like by example virtualbox.
As a workaround you can either uninstall or (temporarily) disable Hyper-V. When you want to switch between Hyper-V and VMware Workstation it is ofcourse best to just temporarily disable Hyper-V.
In this forum post, a couple of methods are described to (temporarily) disable Hyper-V. It includes creating a seperate boot menu entry to boot with Hyper-V disabled and modifying the setting either through registry or a command. All methods do require a reboot however.
- This kind of configuration is ofcourse not supported and should only be used for testing purposes in non production environments.
- Depending on both your hardware and what your planning to do, you might also want to consider:
- Running VMware ESXi from a USB stick
- Running Windows 8 from a USB stick with Windows To Go (WTG).
- It should also work on Hyper-V in Windows Server 2008 and up, but I haven’t tested it.
Tags: Citrix, Citrix XenServer, Client Hyper-V, ESXi, home lab, Hyper-V, Hyper-V 3.0, hypervisor, Microsoft, multiple hypervisors, nested esxi, nested hypervisor, Server 2012, test lab, virtualbox, virtualization, VMware, VMware ESXi, VMware ESXi 5.1, VMware Fusion, VMware vSphere, VMware vSphere 5.1, VMware Workstation, VMware Workstation 9, Windows, Windows 2012 Server, Windows 8, Windows Server 2012, Windows To Go, workstation, WTG, XenServer
Microsoft Virtual Academy (MVA) is hosting 3 virtualization related Jump Starts in January and February:
- Introduction to Hyper-V Jump Start (January 24th, 2013)
- Microsoft Virtualization for VMware Professionals Jump Start (January 30th, 2013)
- Microsoft Tools for VMware Migration and Integration (Late February)
I’ve attended a couple of Jump Starts including those of Office 365, Windows 8 and Windows Server 2012 already and I think it’s a great way to quickly get up-to-date about a subject. Also there’s a great team of people working behind the scenes to answer questions and provide more detailed resources. Other attendees often also share their experiences and provide valuable insights.
The links above provide include a course outline and a link to register for the Jump Start.
I hope to see you there.
Tags: Cloud, Free, high availability, Hyper-V, hypervisor, ICT, Introduction to Hyper-V Jump Start, jump start, Learning, Microsoft Virtual Academy, Microsoft Virtualization for VMware Professionals Jump Start, MVA, networking, Private Cloud, Public Cloud, storage, System Center, System Center 2012, virtualization, VMware, VMware vSphere, VMware vSphere 5.1, Windows, Windows Server 2012
As a passionate ICT person, I work with multiple virtualization products including Microsoft Hyper-V and VMware vSphere.
At home I’m running Server 2012 with Hyper-V in my home lab and even though it works perfectly, I miss the option to be able to run multiple other hypervisors beneath it like by example multiple Hyper-V, VMware ESXi or Citrix XenServer instances.
With VMware products like VMware Fusion, VMware Workstation you can enable this with only a couple of minor adjustments as described in these great articles:
For me personally, I’ll stay with my Hyper-V based home server and my Windows 8 Client with Client Hyper-V installed. For testing purposes however, I’ll have to use VMware Workstation 9 on my Windows 8 machine. (even though I have Client Hyper-V installed). This way I can still run other hypervisors when needed.
I still hope though that Microsoft will add a similar feature to Hyper-V in the future.
Tags: Citrix, Citrix XenServer, Client Hyper-V, ESXi, home lab, Hyper-V, Hyper-V 3.0, hypervisor, Microsoft, multiple hypervisors, nested esxi, nested hypervisor, Server 2012, test lab, virtualization, VMware, VMware ESXi, VMware ESXi 5.1, VMware Fusion, VMware vSphere, VMware vSphere 5.1, VMware Workstation, VMware Workstation 9, Windows, Windows 2012 Server, Windows 8, Windows Server 2012, workstation, XenServer
In the first part of this LAB setup guide, I described the hardware selection process.
In the second part, I described the hypervisor selection and installation.
In the third part, I described VM guest considerations and preparations.
In this post I cover quickly configuring a Server 2012 VM as DC with DNS and DHCP by using PowerShell.
The steps I do take less than 10 minutes in my test lab now. Here’s a short description:
- Create a VM that uses your previously made parent disk.
- Configure the server name and IP addressing and reboot the computer.
- Install AD DS (domain controller) including DNS forward lookup zone and reboot the computer.
- Configure AD and DNS : Enable AD Recycle Bin, Add DNS forwarder, add DNS reverse lookup zone, create DNS PTR record for DC.
- Install + configure DHCP : Install DHCP, Add scope, configure scope, authorize DHCP server in AD.
The scripts I’ve created for steps 2 to 5 can be found here and are based on the great work Stefan Stranger already did in his blog post Installing a new OpsMgr 2012 (SP1) environment the fast way. I added some stuff of my own so it would meet my needs and I tried to keep it as generic as possible so other people can re-use my code as well.
PS: In step 2, IP addressing is not in place yet. To get scripts tot the system, consider:
- Putting the scripts in an ISO file that you can mount.
- Opening Hyper-V Virtual Machine Connection to VM and using “Clipboard”, “Type Clipboard Text”.
Tags: Active Directory, Active Directory Domain Services, AD DS, automate, configuration, DC, DHCP, DNS, Domain Controller, Domain Naming System, Dynamic Host Configuration Protocol, forward lookup zone, forwarder, Hyper-V, hypervisor, ICT, installation, lab, Powershell, reverse lookup zone, Script, Virtual Machine, virtualization, VM
In the first part of this LAB setup guide, I described the hardware selection process.
In the second part I described the hypervisor selection and installation.
In this post I will describe the VM guest considerations and preparations.
VM guest considerations
Considerations for your VM guests:
- Use legacy network adapter ? Could be necessary for by example PXE boot.
- In most cases the regular network adapters will be the best choice.
- How much memory to assign ? Should I use dynamic memory in Hyper-V ? Should I overcommit using VMware ?
- In most cases for your home lab it is probably best to use dynamic memory / overcommit. Some applications however might not work correctly, or you might not have the desired outcome.
- How many virtual CPUs should I assign ?
- Should I store my VMs on a single physical disk or on multiple physical disks ?
- Should I use virtual disks or pass-through disks ?
- For VMs that I use for testing, I use virtual disks because they provide more flexibility.
- For my file server I choose to use pass-through disks so I can simply remove the disk from my server and place them in another system. I’m also afraid that should you encounter an issue when using a virtual disk, that the chance is greater that you lose everything because the virtual disk will break.
- When I use virtual disks, should I use thin provisioned disks or thick provisioned disks ?
- Thick provisioned disks are supposed to deliver better performance, but at the cost of more disk space. Also for a home LAB I doubt the performance loss is minimal and acceptable, so I would go with thin provisioned disks. Also when using SSD disks, space is costly and limited. Be sure to monitor disk space usage though.
- Should I use differencing disks in Hyper-V / linked clones in VMWare ?
- When you plan to use multiple VMs running the same operating system, you can save space by using differencing disks / linked clones. This also impacts the disk I/O however, so monitor it to see if it fits your needs. Since I use SSD disks and run multiple VMs with the same OS, I use differencing disks.
VM guest preparations
An home LAB is not complete without VM guests ofcourse. The basic methods for provisioning are:
- Using pre-prepped VMs that are provided by third parties like by example Microsoft and VMWare. For VMWare there is even a virtual appliance Marketplace.
- Installing VMs manually every time.
- Using 3rd party deployment tools to provision operating systems to VMs. By example System Center Configuration Manager.
- Deploying VMs from templates you create manually.
Often you’ll use a combination of the methods. In my case I’ll deploy many instances of the same guest OS versions for my test lab. I’ll often deploy various versions of Windows multiple times. Therefore I create my own templates for my test lab.
Basic actions for template creation are:
- Installation of the operating system
- Installing the Hyper-V Integration Component (or VMWare tools).
- Adding roles and features I expect to be using in (the majority of) my VMs.
- Downloading and installing the latest updates.
- Performing sysprep to generalize the installation and choosing to turn off the system afterwards.
DO NOT TURN ON THE SYSTEM, otherwise you need to run sysprep again.
- Saving the virtual disk files for future use.
- If you’re going to be using differencing disks, you will use this disk as the parent disk. Make sure you set it to read-only.
Using this approach I’ve created my own templates consuming 180GB and covering most of the operating systems I (can) encounter and want to test with:
Storing backups and ISO files
When you have files that have lots of similar data, they are very suitable for deduplication. Also read this great blog post if you want to know how it works.. With for example ISO files and powered-off VMs you can save a lot of space. You should however not configure this for files that change on a regular basis like by example actively running VMs. With Server 2012, you can easily enable deduplication for volumes. Also keep in mind that these files do not require high IOPS, so you can store them on slower disks.
If you want to check how much space you can save without installing Server 2012 and its deduplication feature, you can also run the deduplication evalutation tool (ddpeval.exe) on Windows 7, Windows 8, Windows 2008 R2 or Windows Server 2012. You can even “hack” Windows 8 Pro to allow deduplication.
I was able to reduce the used disk space with 75% from 215 GB to 50 GB. This was with ISO files and the backups of the parent disks I created earlier (not the ones in use).
In the next post I will describe configuring Server 2012 VM as DC with DNS and DHCP using PowerShell.
Tags: hypervisor, ICT, lab, virtualization
In the first part of this LAB setup guide, I described the hardware selection process. In this second part I will be describing the hypervisor selection and installation.
First of all, you have to decide on which bare metal hypervisor(s) you wish to use. Personally I prefer Microsoft Hyper-V and VMWare ESXi. Alternatives include but are not limited to Citrix XenServer, Xen, KVM, Red Hat Enterprise Virtualization. I don’t have much experience with these hypervisors though.
Characteristics that could influence your choice of hypervisor:
- Supported hardware.
- Performance of the hypervisor.
- Features of the hypervisor. By example when using Transparent Memory Page Sharing, it requires less memory when you run many highly identical systems on a host.
- Footprint / attack surface.
- Supported methods for running the OS. By example run from USB stick.
- Price (many hypervisors have free versions available, compare features).
- Support (for a home lab probably not that important).
- Available documentation / study resources.
- How active the community behind it is.
- Supported VM / guest operating systems.
- Availabilty of downloadable virtual appliances (VMWare) or pre-prepped environments (Microsoft) without having to (try and) convert them.
Everyone needs to determine which hypervisor best meets their needs. Personally I mainly work with Microsoft software and decided to use Hyper-V 3.0 in Windows Server 2012. It’s convenient for me to be able to easily load pre-prepped environments that are provided by Microsoft (in Hyper-V format). I also run Client Hyper-V on my Windows 8 laptop, which makes it easier for me to take my VM’s with me. I do plan to keep up with VMWare developments as well though, so I will create a bootable USB flash drive to boot in VMWare from time to time.
- Before installing the hypervisor, make sure that virtualization related settings are enabled. The names of these settings may differ. Examples are Intel VT (Virtualization Technology), AMD-V and Hardware DEP (Data Execution Prevention), EM64T, Execute Disable Bit. During installation you will get prompted normally though if you have forgotten to enable these.
- There are often many options with regards to the installation. By example do a GUI install or a scripted/CLI install. Or install/run from normal harddisk or flash drive. With Server 2012 Hyper-V you can choose to run it in Windows Server 2012 core or in the GUI version. I chose to use the Server 2012 GUI Hyper-V installation because I’m not sure if my raid management software will work from within the core version.
- Installation of the hypervisor is normally pretty straight forward. But before you install, read the documentation.
- After you’re done installing, you still need to configure the settings to meet your requirements. Preferrably you’ve already created and documented your own design.
- Don’t forget to configure hardware monitoring if possible. In my case I’ve configured my raid controller management software to send e-mails when storage related issues are detected.
- Think about and implement a strategy for backing up and recovering your hypervisor. There are numerous programs for backing up and most are free for personal use. I have no personal experience with specific products, but VeeAm has a good reputation and I’ll be trying if for my lab. Also if you’re a Microsoft Certified Professional, you can get a free NFR license for Veeam Backup & Replication v6.5 for Hyper-V. The same is true if you’re a VMWare Certified Professional (VCP).
In the next post I will describe the VM guest preparations, installations and storage strategy.
Tags: Citrix, Citrix XenServer, ESXi, ESXi 5.1, guest, Hyper-V, Hyper-V 3.0, hypervisor, ICT, KVM, lab, Red Hat Enterprise Virtualization, RHEV, virtualization, VM, VMware ESXi, Windows Server 2012, Xen, XenServer