Using vmWare machine when you have Hyper-V

There are lots of VM containing Demo, Labs etc around the internet and surely Hyper-V is not the primary target as virtualization system. This because it is present on desktop OS only from Windows 8, it is not free (present in windows professional) and bound to windows. If you have to create a VM to share in internet, 99% of the time you want to target vmWare or Virtual Box and a linux guest system (no license needed). Since Virtual Box can run vmWare machine with little problem, vmWare is de-facto the standard in this area.

Virtual Machines with demo, labs etc that you find in the internet are 99% targeted to vmWare platform.

In the past I’ve struggled a lot with conversion tools that can convert vmWare disk formats to Hyper-V format, but sometimes this does not work because virtualized hardware is really different from the two systems.

If you really want to be productive, the only solution I’ve found is installing an ESXi server on an old machine, an approach that gives me lots of satisfaction. First of all you can use the Standalone conversion tool of vmware to convert a vmWare VM to OVF standard format in few minutes, then upload the image to your ESXi server and you are ready to go.

image

Figure 1: A simple command line instruction convert VM into OVF format

image

Figure 2: From the esxi interface you can choose to create a new VM from OVF file

Once you choose the ofv file and the disk file you just need to specify some basic characteristics for the VM and then you can simply let the browser do the rest, your machine will be created into your ESXi node.

image

Figure 3: Your VM will be created directly from your browser.

The second advantage of esxi is that it is a real mature and powerful virtualization system available for Freee. The only drawback is that it needs a serious Network Card, it will not work with a crappy card integrated into a consumer Motherboard. For my ESXi test instance I’ve used my old i7-2600K with a standard P8P67 Asus motherboard (overclocked) and then I’ve spent a few bucks (50€ approx) to buy a used network card 4xGigabit. This gives me four independent NICs, with a decent network chip, each one running at 1Gbit. Used card are really cheap, especially because there are no driver for latest operating system so they are thrown away on eBay for few bucks. When you are using a Virtual Machine to test something that involves networks, you will thanks ESXi and decent multiple NIC card because you can create real network topology, like having 3 machines each one using a different NIC and potentially connected to different router / switch to test a real production scenario.

ESXi NIC virtualization is FAR more powerful than Virtual Box or even vmWare Workstation when installed with a real powerful NIC. Combined with multiple NIC card you have the ability to simulate real network topologies.

If you are using Linux machine, vmWare environment has another great advantage over Hyper-V, it supports all resolutions, you are not limited to Full-Hd with manual editing of grub configuration, you can change your resolution from Linux control panel or directly enable live resizing with the Remote Console available in ESXi.

If you really want to create a test lab, especially if you want to do security testing, having one or more ESXi hosts is something that pays a lot in the long distance.

Gian Maria

Esxi, Hyper-V and Linux

I mainly use Hyper-V to virtualize my test environments and I’m really happy with it, the only problem is virtualizing Linux Desktop environments, especially if you have monitors with higher resolution than Full-HD (since in Hyper-V I’ve not found a way to run with a greater resolution than Full HD).

To overcome this limitation, I’ve converted my old workstation in a virtualization host running VMWare ESXi and I’m really satisfied. Here is a couple of tricks that I’ve learned (I’m a completely new to latest version of ESXi).

ESXi is free and it is a really powerful virtualization system, if you have hardware to spare, I strongly suggest you to have a ESXi instance to being able to run both Hyper-V and VmWare based virtual machines

First of all, you need to buy a new network adapter, ESXi is really picky about your network card and it refuses to install if you only have the crappy integrated Ethernet card. I’ve taken a 4x1GB old Intel card used on ebay. If you look you can find old board that are perfect to run with ESXi at a really cheap price. Once you have a good Ethernet adapter you are ready to go. Here are my network Physical NICs

image

Figure 1: Nic adapter on my system.

I strongly suggests you to read the Compatibility Guide https://www.vmware.com/resources/compatibility/search.php, from my experience, Intel cards are the most compatible one, even if they are really old. This card of mine does not work in windows 2012 or superior edition (it is really really old), but it works like a charm in ESXi 6.5, it has 4 physical NIC and it costs me around 40€)

Another thing I’ve learned is not to use the web interface to access Linux Machines, since I’m in Italy I have an Italian Keyboard Layout, and I had lots of problem with key mapping for Linux machines when I access them with standard web interface. The  problem happens because, when you started your VM, it is super normal to click the preview to open a web interface to interact with the machine

image

Figure 2: Click on the preview, and you will access the machine with a web interface

If you instead click on the Console menu, you can download a stand alone remote console tools (available for all operating systems) that allows you to connect to your virtual machines and avoid having keyboard problem.

Latest version of ESXi can be entirely managed by Web Interface, but to interact with Virtual Machines, the best solution is to use the VMRC standalone tool.

image

Figure 3: Download VMRC standalone software to connect to your machines

Once you downloaded and installed the VRMC tool you can simply use the “Launch Remote Console” menu option and you will be connected to your machine with a really nice standalone console that will solve all of your keyboard problem.

Gian Maria.

Avoid expiring of Brian Keller VS2010 virtual machine

Brian Keller always does a great work releasing a Demo Machine with all the goodness of VS2010 and TFS2010, really useful for making demo and courses. The only drawback is that this machine expires after 6 months, and if you did some customization on it, or prepared some customized hands-on-lab, you usually need to do everything again with the new machine. (Brian release a new machine updated with the latest tool some days before the expiration of the old machine).

If you have MSDN and all the keys of the various software you can simply insert all of your product codes to avoid expiration of the machine. Apart from inserting a valid windows 2008 key and office key, that is quite simple you need to upgrade SQL Server from the demo version to the full version. To do this, simply mount a valid Sql Server Iso downloaded from your MSDN, go to the "Maintenance” section, then choose an Edition Upgrade and you are done.

image

When the machine expires your Visual Studio will ask you for a license, but since your Visual Studio Iso from MSDN are pre-pidded (they have serial number included in the iso), the common question is “where I find the Visual Studio product number in MSDN?”. The answer is in this post, just mount the iso in a virtual Dvd-drive, go to the setup folder, look for the setup.sdb file, open it with a text editor and search product key section. The same trick works to extract the Serial number of TFS from MSDN iso.

When you upgraded: operating system, Office, Sql Server (upgraded), TFS and Visual Studio you should be able to continue to use the virtual machine even after the expiring time.

IMPORTANT: Please be aware that you cannot use this machine in production for any reason, inserting your MSDN codes should only be used to continue to use the machine for internal testing, evaluation and demo purpose only.

Gian Maria.

Multi monitor remote desktop on a Windows 7 virtual machine

To test dev 11 preview I’ve setup several virtual machines, just to be sure not to ruin my main installation box, since dev 11 is a developer preview and is not a good idea installing pre-beta release on production machine (even if dev 11 preview is really stable).

One of the annoying stuff in running inside a virtual machine is losing the ability to use all of your monitors… or not? If the virtualized and host operating system are Windows7 or Windows Server 2008, you can connect to the virtual machine using Remote Desktop (remember to enable it on windows7 because is not enabled by default), because it has full support for multiple monitors.

SNAGHTMLac4b5

You can just select “use all my monitors for the remote session” and you are done, also go to Experience tab and specify that you have a LAN connection so everything is enabled in the virtualized machine. Thanks to this simple trick you can now connect to the VM in full screen on all of your monitors. The experience is really great, because thanks to my SSD disk, the virtual machine is fast as the host one, and I have a super fast dev 11 experience Smile

Gian Maria.

Convert Brian Keller dev11 Virtual Machine to vmWare

The Brian Keller’s Virtual Machine with all the goodness of dev11 developer preview is an Hyper-V one, so if you have a windows 7 environment (like me) you cannot use it. A possible solution is using a Virtual Disk converter like the Starwind one (http://www.starwindsoftware.com/download-starwind-converter) that permits you to convert a .VHD hyper-v virtual disk to a standard VmWare disk, then you can create a new VmWare virtual machine, use the converted disk and everything should be ok.

After you boot the machine, Windows 2008 R2 begins to find new hardware, because the virtualization system is different, so be prepared to a couple of reboot, and when the system finished finding new hardware it is time to install the VmWare tools on the VM and the game is done, the VM is converted to VmWare and you can use it in windows 7 environment.

Gian Maria.