Installing Azure Stack on VMware ESXi

This post will go over installing Azure Stack on VMware ESXi, current version is TP3 and the install procedure is well covered on the Microsoft Docs Site but installing nested, on inadequate hardware requires a few tweaks.

Hardware Setup

Microsoft has some pretty big requirements for Azure Stack here I can get around these by assigning the resources required under ESXi, but this will mean the performance is reduced as any memory that exceeds my physically available will end up paging and CPU’s will be queued.

I am running this on a server with 96GB of RAM, and 12 vCPU so my performance was bearable, but on my second install it did seem to perform better with 90GB RAM and 10 cores, leaving 2 cores and 6GB free for my jump server and ESXi.

Set up hardware for installing Azure stack on VMware ESXi

Set up hardware for installing Azure stack on VMware ESXi

Enabling hardware virtualization is also necessary, and this can only be done in the web client in vShere 6+

Enable Hardware Virtualzation

Enable Hardware Virtualzation

Prepping for install

I have downloaded all the Azure Stac POC files:

Download Azure Stack POC Files

Download Azure Stack POC Files

Extracted the CloudBuilder.vhdx to c:\

Extract CloudBuilder.vhdx

Extract CloudBuilder.vhdx

Downloaded the Support Files

Download Azure Stack Support Files

Download Azure Stack Support Files

Run the PrepareBootFromVHD.ps1 script and enter my admin credentials

Run PrepareBootFromVHD.psi

Run PrepareBootFromVHD.psi

This then boots into the Azure Stack Setup

we can start the install as per the MS Documentation

Enter Azure Credentials

Enter Azure Credentials

Hacking Setup Scripts

Microsoft have a number of tests to make sure my hardware passed,you might see the errors

Test Failed: Validate that the computer ' ' is a physical machine. Test Failed: Validate that at least 12 cores are available in the computer Test Failed: Validate that at least 96 GB of physical memory is available in the computer

Test Failed: Validate that the computer ‘ ‘ is a physical machine. Test Failed: Validate that at least 12 cores are available in the computer Test Failed: Validate that at least 96 GB of physical memory is available in the computer

If you read the logs you will find the tests are contained the this file:

C:\CloudDeployment\Roles\PhysicalMachines\Tests\BareMetal.Tests.ps1

Which we can edit in the below 3 places:

Edit Bare metal

Change $false to $true

Change the tests for RAM and CPU if needed, if you assigned enough above this step is not necessary, however if your physical hardware is not close to the 96GB and 12 cores, this might get better performance:

I also found a great article  from http://www.garethjones294.com on how to restart the build at the failed task instead of from the start, check out the original article here or the script I copied below, I had issues with this hanging on deploying or validating MAS-ACS01 was deployed and found that resetting the MAS-ACS01 and MAS-XRP01 VM’s from the Hyper-V console then re-running the setup worked.

 

Errors

I did get one error regarding time sync, I did a w32tm /resync and checked the time zones and restarted and it worked.

Good luck Installing Azure Stack on VMware ESXi.