top of page
  • Kyle Hill

Home Lab - Preparing the Deployment of Azure Stack HCI

In the last blog post, we looked at some of the core components that are required to make this deployment possible, and understanding why they are needed and what they can offer. In this post, we will go through the preparations required ahead of a deployment of Azure Stack HCI.

The first thing we are going to need to do is make sure that we have the Azure Stack HCI ISO available to us. You can get it here, including a trial period if needed. Remember that Azure Stack HCI is a licensed product per physical core, per month.

It's also worth downloading the Windows Admin Centre file as we will use this later on.

Next, there is some comprehensive documentation available here, and some system requirements here, but let's focus on some of the items that are super relevant to have prepared ahead of time to help us be successful with this lab deployment:

Logically, our networking will look as follows:

Important then to notice the IP requirements which are summarised in a table below which represents the above and out Home Lab:


IP component

Network ATC intent

Network routing

Subnet properties

Required IPs

Storage 1

1 IP for each host


No defined gateway.

IP-less L2 VLAN.

Network ATC managed subnet.

Default VLAN tag 711.


Storage 2

1 IP for each host


No defined gateway.

IP-less L2 VLAN.

Network ATC managed subnet.

Default VLAN tag 712.



1 IP for each host,

1 IP for Failover Cluster


Connected (outbound internet access required).

Disconnected (Arc autonomous controller).

Customer-defined management VLAN.

(Native VLAN preferred but trunk mode supported).


The above represents a a deployment without micro-segmentation and QoS enabled, but fits our Home Lab perfectly. It is also worth noting that to reflect this in the Hyper-V host, I added 2 virtual switches (one internal and one external) and then added 4 network interfaces to each VM, 2 per switch type.

  • Storage:

    • Every server in the cluster should have the same types of drives and the same number of each type. It's also recommended (but not required) that the drives be the same size and model. Drives can be internal to the server, or in an external enclosure that is connected to just one server.

    • Each server in the cluster should have dedicated volumes for logs, with log storage at least as fast as data storage. Stretched clusters require at least two volumes: one for replicated data, and one for log data.

    • For my deployment, I have used 4 SCSI drives (connected from my VMWare Host) per VM as follows:

Notice that the drives are Thick Provisioned and Eager Zeroed, while they are also connected to a separate SCSI controller which has a type of Physical. This will enable the drives to be pass-through and for our VMs to treat them as physical drives as part of the deployment.

Next, I am going to deploy two Virtual Machines (VMs) which I can use for my Azure Stack HCI deployment. Remember that I am using VMWare as my level 1 Hypervisor but due to some driver compatibility issues, I will be using some nested virtualisation with a Hyper-V host being deployed on my VMWare Host and then creating the Azure Stack HCI VMs on the Hyper-V host. The basic process of setting one of these VMs up, looks like this. From The Hyper-V Host, select 'New' from the top right hand corner to create a new VM:

Follow the wizard and press 'Next':

Specify a name for the VM:

I have selected Generation 1 for my VMs are the are more widely supported:

Allocate a minimum of 4GB of memory. As this is a Home Lab, I am going with minimums, but if you have it available, it would suggest adding more:

Next, add a network to the VM. We will be adding 3, and this first one is an internal one that will be used for Management of the Azure Stack HCI deployment:

Add some storage capacity. We will need to add 4 drives in total so I made 4 drives each 40GB in size as this will be needed later on for the deployment:

Add the Azure Stack HCI ISO to the VM so that we can install the Operating System on it. Be aware that each IDE controlled of the VM only supports 2 items, so you will have to stagger this with the creation of your storage options from above:

Finally, review the settings and create the VM:

Remember that you are going to need at least one more VM as the Azure Stack HCI deployment requires at least 2 VMS (Nodes).

Once that is completed, you can start the VMs, connect to them and start the Operating System install. The install is fairly basic and looks like this. After accepting the agreement and checking the check-box, click next to begin the install:

Select the Custom option:

Select one of the disks we created earlier (remember that only 3 of the 4 are showing as one is currently not mounted because we need a slot on the IDE controlled for the Operating System ISO to be mounted). Clicking 'Next' will then begin the install:

Once the install has been successful, remember to attach your 4th storage drive and then the machine should boot so that we can configure it as follows:

Once the install has completed, the VM will restart and you will be prompted to change the password for the local Administrator account:

Enter in a secure password and then press the down arrow to enter it again before hitting the Enter key to proceed:

If the passwords match, you will get a confirmation that the password has been successfully changed:

You will then be presented with the base screen of the Azure Stack HCI Operating System:

I like to do all of my machine prep ahead of the configs, so let's start with some machine updates by selecting option 6 and being presented with this:

Select option 1 to get all updates:

You will be presented will all available updates and pressing 'A' will begin the install of all of the listed update:

You should then be presented with confirmation that your updates are installing:

Once successful, you will be prompted to restart the machine to apply the updates:

Next, I am going to manually assign an IP address to my internal network adapter. My Hyper-V Host has a network switch with some manually configure options in the range of This means that I can assign configs in this range by selecting the required adapter below which for me is number 1:

Next I can select option 1 again to set the network adapter settings and then inputting an IP address of and a default gateway of (the Hyper-V Host). Once that is complete, you will be presented with confirmation of that:

Next we can change the name of the VM by selecting option 2 and entering in the new name as follows:

Once successful, you will be prompted to restart the VM to ensure that the new name takes effect. Once restarted, the final config step is to join the machine to the domain by selecting option 1. You can then enter the domain name you wish to join, and account that has permissions to join computers to the domain, and a password:

If successful, a confirmation message with be presented before the VM needs to restart for the changes to take effect:

The base screen of the Operating System should now reflect all of our configs and one last check I like to do is make sure that the date and time settings have synced to reflect my time zone settings. Select option 9 to be presented with this:

Remember that we will need to do similar configs on our second VM too as the installation with require at least 2 VMs(nodes) to complete. Now that the prep work is complete, I do suggest you make a backup of your VMs just in case you want to start the process over. The next post will run through the installation of the Windows Server Manager which we will use to begin the actual installation of the Azure Stack HCI cluster.



bottom of page