Day Of Containers – Stockholm

June 1, 2016

25 Aug 2016 I will be speaking at DOC-STHLM (Day Of Containers – Stockholm)

DOC-STHLM is a different conference, more workshops than presentations. Don’t just listen – work and learn. Bring your laptop; we’ll be hacking containers all day


Getting your hands dirty with Windows Containers

Windows Containers in Windows Server 2016 is a new big thing – Get a solid introduction to the upcoming Windows and Hyper-V Containers that will be part of the next release of Windows Server.


Nested virtualization why should I care?

November 11, 2015

One thing I get asked a lot, is why I care so much about nested virtualization and the use case of such technology.

To understand nested virtualization we first need to look at traditional server virtualization.

Traditional Virtualization overview

In a traditional virtualization solution, the physical hardware is abstracted and presented to a guest operating system. The Virtual Machines (VM) are guests of the physical server and communicates with the physical hardware via the hypervisor.

Image 1


One physical server, hosts isolated Guest VMs

To provide high availability to the virtualizations solution we add clustering, Storage Area Networks (SAN) and duplicate of dependent peripheral configurations like network hardware and its configuration etc. The physical servers and attached configurations becomes a virtual datacenter that hosts the virtual machines. If we transition from one hypervisor vendor to another we need to convert the workload VMs to fit the new hypervisor. The conversion is sometimes a time-consuming and an expensive job that involves a lot of coordination.

This is something that we nowadays are quite familiar with.

Why nested virtualization then?

What if you wanted a copy of that configuration for testing or development purposes? How do you evolve and enhance your implementation? Do you have the possibility to test changes without impact to your production environment?

To install a virtual datacenter involves quite a lot of hardware that can be expensive and hard to move around.

You might need different configurations, developers for instance often have the need for many isolated environments with different settings. Building physical environments for each could be really expensive.

Nested Virtualization overview

In a nested virtualization solution, the physical hardware is abstracted and presented to a guest hypervisor VM as configurations. The guest hypervisor VM is a guest of the physical server.

The Guest VMs within the Guest hypervisor is unaware of the fact that the hypervisor is virtual and acts in the same way as if the hypervisor was installed in physical hardware.

Image 2


One physical server, hosts two separate hypervisors with separate isolated Guest VMs

To provide high availability to the virtualizations solution we use the same setup as in a traditional virtualization solution but we are able to emulate quite a lot of the periferal solutions such as SAN, Networks etc

Further possibilities with nested hypervisors

In a cloud solution, if a cloud vendor supports nested virtualization the format of the workload VM becomes irrelevant.

In a DevOps world the need to quickly build entire configurations becomes even more necessary. No more we can’t afford to have an expensive test environment J

What If we could build those configurations in Azure! the possibilities involved becomes mind blowing.

Microsoft Nested Virtualization

Microsoft has released a preview of nested virtualization in Windows 10 Insider Preview Build 10565

At the moment only Windows 10, Hyper-V is possible to nest but I expect that to change in the near future. Imagine the Host Hypervisor in Image 2 as a Nano Server with Hyper-V. The Guest Workload VMs as Docker/Windows Containers and full OS VMs. The future looks really interesting J

How to get started

How do I start exploring the possibilities with nested virtualization?

First you need the Windows 10 Insider Preview Build 10565.

Once you have installed it you need to enable Hyper-V, if you are unfamiliar with Client Hyper-V check out this MSDN article Hyper-V on Windows 10

Once you are done check out the article on how to enable Windows Insider Preview: Nested Virtualization

Image 3

clip_image004 In my lab I installed a Windows 10 host hypervisor with two Windows 10 Guest Hypervisors. Within each guest hypervisor I installed a Guest VM workload with Windows Server 2016 Technical Preview 3

I tried to get the nesting to work in Windows Server 2016 Technical Preview 3 as well but I get an error message in the event log and the Hyper V Service wont start. “This device is not working properly because Windows cannot load the drivers required for this device. (Code 31)”

In a PPT from Microsoft the roadmap for System Center is reviled. The Windows Server 2016 Technical Previews has previously been released at the same time as System Center, so I hope I we will see Windows Server 2016 Technical Preview 4 in November as well.


Microsoft Ignite: Content Catalog Deep Dive

February 3, 2015

I have been playing around with the Microsoft Ignite Content Catalog and  must say I like what I see.

There are currently 274 282 371 Ignite Sessions listed in the Catalog and I think there will be more then a thousand sessions when the conference kicks of on Star Wars Day, May the 4:th.

So back to the Content Catalog with that huge amount of sessions there needs to be a great way to sort out the sessions. The session catalog of Microsoft Ignite is the best I have seen so far.

The catalog is dynamic in multiple dimensions and will automatically react to the settings you define. The result is a personalized list of sessions.

The Search Session Catalog function gives you the ability to search the entire catalog for keywords.


A quick look in the Products list displays 0 Azure Pack sessions but the search returns two hits at the moment. So don’t be alarmed if the topic you are looking for isn’t displayed, do a search for it. 🙂

Dynamic filters

On the left side are the filters sorted into six areas, Audiences, Topics, Formats, Products, Themes and Levels


Simply click the area/areas of interest and  the list will dynamically change to display the sessions associated with your selection.

Lets say you want to learn the best practices in upgrading SQL Server. You click SQL Server in the Products section, Best Practices in the Formats section and Level 400 in the Levels section. That will direct you to the session “Upgrading and Migrating Microsoft SQL Server”

Each area displays several related categories

The Audiences area displays the sub categories, IT Influencers and Implementers, Enterprise Developers, IT Decision Makers and Architects


In Topics we find Deployment & Implementation, Usage & Adoption, Development, Security & Access Management, Architecture, Operations & Management, Governance & Compliance, Upgrade & Migration


Formats lets you choose; Overview, Best Practices, Deep Dive, How to, What’s New, Pre-Day Sessions, Business Value, Strategy, Customer Showcase


Products, listed at the moment are:
Office 365, Azure, Exchange, SharePoint, Windows, Skype for Business, SQL Server, Visual Studio, Office Client, Yammer, Windows Server, OneDrive, Delve, System Center, Project, Surface, Visual Studio Online, Microsoft Intune, Application Insights, Team Foundation Server, Visio, .NET, ASP.NET, Azure Pack, Dynamics


Themes lists Productivity and Collaboration, Cloud, Big Data, Mobility, Unified Communications, Security and Compliance, Social and Internet of Things

  • image

All sessions are graded into Levels, 400, 300, 200, 100


Level 100;
is an introductory and overview session. Assumes little or no expertise with topic and covers topic concepts, functions, features, and benefits.

Level 200;
means intermediate leveled content will be presented. Assumes 100-level knowledge and provides specific details about the topic.

Level 300;
this session contains advanced material. Assumes 200-level knowledge, in-depth understanding of features in a real-world environment, and strong coding skills. Provides a detailed technical overview of a subset of product/technology features, covering architecture, performance, migration, deployment, and development.

Level 400;
this is the expert session often with detailed material. Assumes a deep level of technical knowledge and experience and a detailed, thorough understanding of topic. Provides expert-to-expert interaction and coverage of specialized topics.

This concludes my initial explanation of the Microsoft Ignite Catalog. I will continue this exploration when future functions are reviled. The schedule building process very much involves knowledge of the content catalog.

Have you registered yet? Go to the Microsoft Ignite Registration page and do it today


I hope we meet in Chicago…

Ahh I also found a currently hidden section in the content catalog when I poked around. The hidden section called Roles and I expect it to be reviled soon, perhaps in combination with the schedule builder function of the catalog. The list contains sub categories that will add further filtering options.

  • IT Generalist
  • CIO, CTO, CISO, or Chief or Sr. Architect
  • Cloud Services Architect/Administrator
  • Director of MIS, IS, or IT
  • Technical or Business Consultant
  • Mgr, Cloud Services, Planning, & Support
  • Cloud Services Support
  • Cloud Services/Business Systems Analyst
  • Security/Storage/Web Admins
  • Mgr, App Development & Support
  • Systems/Network/Datacntr Admin
  • Technology Trainer or Teacher
  • Chief or Sr. Architect
  • Mgr, Infrastructure, Networking, or Datacenter
  • CEO or CFO or COO
  • Help Desk/Call Center Support
  • Power Users
  • VP of MIS, IS, or IT
  • Business Analyst
  • Journalists
  • LOB Managers
  • Researchers
  • VP or Executive/Senior Vice President
  • Database, BI & Data Warehouse Admin
  • Owner/Partner
  • President/Chairman
  • Sales
  • Unofficial IT Person (Office Manager, SMB Owner)
  • Chief Officer
  • Social Manager

Nesting Hyper-V Part 2

January 9, 2015

In the first part of this series of blog posts I explained how to nest Hyper-V on Hyper-V.

This time we will nest Hyper-V on a VMware ESXi. This will add the functionality to have running VM:s on Hyper-V. This solution is off course not supported by either VMware or Microsoft so do not attempt to do this in a production environment. The use case for this install is to learn the beauty of Microsoft Cloud OS or perhaps install an environment to prepare for a certification exam that involved mutiple Hyper-V installations like the Microsoft Virtualization exam 74-409 covered in the MVA Course Server Virtualization with Windows Server Hyper-V and System Center, or any of the System Center Private Cloud exams 70-246 and 70-247

Create a bootable USB flash drive for Vmware ESXi

First you need to register and download the free Vmware ESXi

Once you have downloaded the ISO you either need to burn it to a CD or as in my case create a bootable USB drive and install the hypervisor.

I use the Netbootin tool which I find really easy to use.


Choose DISKIMAGE and browse to the location you have downloaded the ISO and click OK


Click Yes to overwrite the menu.c32 file


Click Exit to end the process. If you would like to install ESXi on the same machine click Reboot Now

Insert the USB drive to your machine and install VMWare ESXi from your USB drive.

To be able to take screenshots of the procedure I use VMware workstation. I have always use the ESXi version because I want as little overhead as possible. (The software isn’t free but you get a 30 day trial in case you want to try this on your PC)

Step 1 Install VMware ESXi

If you haven’t worked with VMware products before I made a Step by Step instruction on how to install it.

Select the ESXi standard installer


The installer loads


Once the installer has loaded you will see a screen similar to this showing your hardware configuration.


To start the installation press Enter


Scroll down to the end of the EULA and press F11


Select the disk where you will install ESXi (You can install it on a 1 GB flash drive to save precious storage on your rig)


Select keyboard layout and press Enter


Enter a password for root (Built in Administrator account) press Enter



To start installing press F11 (notice that the disk will be repartitioned)


When the installation is completed press Enter to reboot


When the hypervisor comes back up again you are met with a similar screen.
Make a note of the URL or type it in your browser to connect to the installs.
If you don’t want DHCP or want to configure a static IP address you need to log on using the password you created earlier. Press F2

To skip the configuration skip to the next step


Enter your password and press Enter


Select configure Management Network and press Enter


Select Set static IP address and network configuration and add your IP configuration. Press Enter to apply your settings.


You will be prompted to apply the changes and restart the management network press Y


Step 2 Installing the vSphere client

Open the address noted in previous step and click Continue to this website


Click the link Download vSphere Client


Download the client and install it on your PC (Next, Next,,,Finish)

Connecting to ESXi using VMware vSphere Client.

Enter your IP address and log on using root and your password


When you have logged on you are met by a message stating that the host lacks persistent storage, that is expected since you haven’t configured datastore. A datastore is the place where you place your VMs (virtual machines) and other system files such as ISOs, templates. Datastores are equivalent to Microsoft CSV and VMM libraries.

Step 3 Create a Datastore in the vSphere Client

Click the link click here to create a datastore


Select the disk that will be configured as a datastore.and click Next (If you are using VMware Workstation you will have to add another disk to the ESXi VM and rescan)


Select VMFS-5 click Next


Click Next


Enter a datastore name, and click Next


Select capacity and click Next


Review your settings and click Finish


Your datastore is created and is visible in the vSphere client.


Step 4 Create a VM in vSphere Client and install Windows Server 2012 R2

Click FileàNewàVirtual Machine (or right click the host)

Select Custom and click Next


Enter the name of your Hyper-V VM and click Next


Select the datastore where your VM will be stored and click Next


Choose Virtual Machine Version 8 and click Next


Select guest OS Microsoft Windows Server 2012 (64-bit) and click Next


Select the numbers of virtual CPUs and click Next (Take into consideration the hardware you are installing upon and the number of Hyper-V hosts you will install)


Configure the VM memory size and click Next (Take into consideration the hardware you are installing upon and the number of Hyper-V hosts you will install)


Add the number of NICs you need and click Next


Select LSI Logic SAS and click Next


Select Create a new virtual disk and click Next


Specify the disk size and click Next


Click Next


Review your settings and click Finish


When the V; is created Right click and select Settings

On the hardware tab choose CD/DVD drive and select the place where you have your Windows Server 2012 R2 media, tick the Connect at power on checkbox and click OK.


Start your VM and install Windows Server 2012 R2


When your Windows Server 2012 R2 is installed make sure you install the VMware tools to enhance the performance of the VM.

Step 5 Nesting Hyper-V on VMware ESXi

If we try to add the Hyper-V role to our installation now we get the following error message.


To trick Windows Server 2012 R2 into believing that it’s install on physical hardware we need to add some parameters to the configuration file.

First we need to shut down the VM.

When the VM is turned off Right click and choose Remove from Inventory. On the Confirm Remove pop up, click Yes (don’t worry nothing will be deleted.


Right click the Datastore where you stored your VM and select Browse Datastore

Select the folder of your VM (as you can see I have a folder called ISO from which I installed the VM to create such a folder just right click and create the folder)


The file we are looking for is the *vmx file. Select the file and click



Once you downloaded it we need to edit the file. I use Notepad ++ since I already have it on my PC (Don’t use Notepad the file is character sensitive and Notepad adds the wrong character set, if I remember correct WordPad does 🙂 )

Add the following rows to anywhere in the file, I add them on the end.

vhv.enable = “TRUE”

hypervisor.cpuid.v0 = “FALSE”

If you are copying the text from the blogpost make sure the character is correct or else it will not work.


Save the file and upload it again


Use the same button if you want to upload files like ISOs to the Datastore.

Once the file has been uploaded, Right click the *.vmx file and choose Add to Inventory

Leave the suggested name and click bNext (Having mismatch between the VM and the filenames can be a real pain when troubleshooting)


Click Next


Review the settings and click Finish


Before we start the VM we need to add the Intel® VT-x/AMD-V™ instruction set.

Right click the VM and choose Settings, click the Option tab and select CPU/MMU Virtualization and change the option box from Automatic to Use Intel® VT-x/AMD-V™ for instruction set virtualization and Intel ® EPT/AMD RVI for MMU virtualization click OK


Now start the VM and install the Hyper-V role 🙂


In my next blog post I will start installing the Windows Azure Pack on my lab servers.

The install will consist of two VMware ESXi hosts with three nested Hyper-V hosts on each. If you want to follow along make sure you have your nested Hyper-Vs patched and ready.

Windows 10 and new Windows Server and System Center just in time for TechEd Europe

September 30, 2014

Microsoft announced on the Server and Cloud Blog that they will be releasing a Technical Preview of the next version of Windows and System Center on October 1.

Didn’t I say it would be an awesome autumn Ler

I really cant wait for TechEd in Barcelona and learn about the Cloud OS updates, you are registered right?


On demand training, Windows Azure Pack pt 2

August 15, 2014

Yesterday I posted a short article covering Windows Azure Pack video training resources. Today I will guide you to free hands on resources. 🙂

In case you dont know what Windows Azure Pac is the following text is taken from TechEd North America page on Channel 9

The Azure Pack is a collection of Microsoft Azure technologies available to Microsoft customers at no additional cost. Once installed in your datacenter, the Azure Pack integrates with Microsoft System Center and Windows Server to help provide a self-service portal for managing services such as websites, Virtual Machines, and Service Bus; a portal for administrators to manage resource clouds; scalable web hosting; and more.

Windows Azure Pack: Introducing Windows Azure Pack

Windows Azure Pack: Installation and Configuration

Windows Azure Pack: IaaS Management

Windows Azure Pack: Service Management Automation

Windows Azure Pack: Virtual Machine Roles