Microsoft Azure Stack Technical Preview 3 on lower hardware specifications

New technical preview, new challenges. After I got the TP1 and TP2 running on lower hardware specifications, I have tried the same for the TP3 and want to share the results with you.

First of all we have the same hardware requirements for TP3 as for TP1 and TP2.

ComponentMinimumRecommended
CPUDual-Socket: 12 Physical CoresDual-Socket: 16 Physical Cores
Memory96 GB RAM128 GB RAM
BIOSHyper-V Enabled (with SLAT support)Hyper-V Enabled (with SLAT support)
NICWindows Server 2012 R2 Certification required for NIC, no specialized features requiredWindows Server 2012 R2 Certification required for NIC, no specialized features required
OS1 OS disk with minimum of 200 GB available for system partition (SSD or HDD)1 OS disk with minimum of 200 GB available for system partition (SSD or HDD)
DATA4 disks. Each disk provides a minimum of 140 GB of capacity (SSD or HDD).4 disks. Each disk provides a minimum of 250 GB of capacity (SSD or HDD).

-> https://docs.microsoft.com/en-us/azure/azure-stack/azure-stack-deploy

My lab server at home has the following specifications.

ComponentMy lab server
CPUSingle-Socket: 4 Physical Cores
Memory32 GB RAM
BIOSHyper-V Enabled (with SLAT support)
NICWindows Server 2012 R2 Certification required for NIC, no specialized features required
OS1 OS disk with 1 TB available for system partition (HDD)
DATA3 disks. Each disk provides 1 TB of capacity (HDD).

The issue with the setup is that it checks the amount of memory and CPU cores that is installed in the server and the Azure Stack Technical Preview 3 VMs have fixed configurations during the setup process.

Before you can start the PowerShell deployment script you have to get the following file out of the CloudBuilder.vhdx: Microsoft.AzureStack.Solution.Deploy.CloudDeployment.1.0.381.0.nupkg.

Copy the file Microsoft.AzureStack.Solution.Deploy.CloudDeployment.1.0.381.0.nupkg to a folder onto your workstation and rename the .nupkg file to .zip and extract it.

AzureStackTP301AzureStackTP302

Now go to the directory content.

AzureStackTP303

The folder structure should be familiar to you, when you have done the same configuration adjustments in Azure Stack TP2. The following two files must be edited.

-> .\Configuration\Roles\Infrastructure\BareMetal\OneNodeRole.xml
-> .\Configuration\Roles\Fabric\VirtualMachines\OneNodeRole.xml

For the memory and CPU core check you have to edit the xml file in the ValidationRequirements section at the yellow marked position.

AzureStackTP304

For my system I have entered 4 for the CPU cores and 32 for the memory.

For the VMs I have changed vCPU and vRAM settings in the xml file to the following ones and also disabled Dynamic Memory for the VMs ADFS01, CA01 and BGPNAT01. The other VMs are using static memory.

AzureStackTP305

VM namevCPUvRAM in GB
ACS0123
ADFS0121
BGPNAT0122
CA0121
Con0121
DC0121
ERCS0121
Gwy0122
NC0122
SLB0121
Sql0122
SUS0121
WAS0122
WASP0121
Xrp0144

After you have edited the files, copy them back into the Microsoft.AzureStack.Solution.Deploy.CloudDeployment.1.0.381.0.zip with the Windows Explorer. Just double click on the .zip file and place the edited files into the target folders and rename the .zip file to .nupkg. Then copy it back into the CloudBuilder.vhdx.

AzureStackTP306

Keep in mind that TP3 has one more VM than TP2. That means the resource consumption is higher and the values have to be adjusted after the installation is completed. Otherwise you are not able to deploy any VMs, when your system has only 32 GB of memory.

AzureStackTP307

Conclusion:

Yes, it is possible to run the Azure Stack TP3 on lower hardware specifications. Would I really recommend it? No! You should at least have hardware that met the minimum requirements for the Azure Stack TP3. Enough CPU power and memory is key during the deployment process.

If you do not have the minimum required hardware, then make sure your system has at least 64 GB memory and more than 4 physical cores. I would recommend 8 at least.

Happy testing!

Facebooktwittergoogle_pluslinkedinmail