Notes & Queries - Hyper-V on your laptop

This is a follow up to my article Catch Up: Expanding Your Laptop With Hyper-V , where in this post I want to explore why you would use Hyper-V and what its limitations are.

Limitations

Limitations first: Hyper-V on a Windows client is not as fully featured as its bigger brothers, Hyper-V Server and Windows Server. This is NOT a licensing play, as Hyper-V is free, rather it is simplified for the likely use cases on a desktop. It’s also important to remember that if we are using Hyper-V in the data centre then it is the only role running on the base operating system, whilst on our desktops we will be using that base operating system for all sorts of stuff from Office to Online gaming.

 

Development

Developers writing for Windows running on a phone use Hyper-V by default, as Visual Studio uses Hyper-V to spin up an emulator to spoof the code running on a phone. This technique might also be appropriate for other kinds of development, however, we have to do that ourselves. Here’s some reasons why that might work for you:

Web development

  • Spin up a Windows or Linux server running IIS or Apache and then use your base OS as the client accessing the site

Browser compatibility

  • You could have a set of modestly sized VMs with combinations of browsers to check your site works on all of them

SharePoint development

Any other testing and development requiring access to services and software that won’t run on your client OS.

  • In the world of IT Pro you might want to test PowerShell and how to connect remotely to it

One other thought occurs: in order to get certified you’ll only stand a chance of passing if you are using the technology - even if that’s in a sandbox. TechNet does have Virtual labs, but these don’t persist, so if you want to have a set up to return to then Hyper-V might be the answer.

 

A few other notes and queries

You can still setup side by side operating systems on your laptop/desktop with Boot to VHD (my guide to this is here) if you need to use all the features in the Server version of Hyper-V.

System Requirements

Hyper-V is a type 1 hypervisor which means it uses the full capabilities of the virtualisation on your CPU (which is why it is a bit harder to setup). Remember when your VM’s are running you are sharing memory, networking and disk across these and the base OS, so ideally you want 8Gb RAM, i5 or better CPU and most importantly SSD for storage. If not, try out the guest OS on a different physical disk from the VCMs

Licensing

Licensing is needed for each guest OS whatever the virtualisation solution you use. Your base OS is sorted as I am assuming you are running Windows 10, but the OS in the guests’ is going to need keys - be that Windows Server client or something else. However, as these are for test, I suggest you use the evaluation keys and get clever with creating sandboxes for this kind of work, where your data can persist and survive being moved to a new VM. The trick is to make your setup like Azure and only have the base OS and application on your base Virtual Hard Disk (VHD) ; then store your data on a separate VHD - e.g. SQL Server databases, Active Directory (stored in c:\windows\NTDS by default), and so on. You’ll then need to get good at rebuilding your sandbox when needed - I have a whole series on this called LabOps.

 

A final thought

All of the stuff I have described here could be characterized as DevOps, except that it’s just going to be for you working by yourself, and learning parts of this process to make your own life easier!