The Azure Stack is undoubtedly the future of our on premises data centers. Why? Well because we have always wanted to do things the “Microsoft” way and now we can. We just set off the deployment and it sets up the environment exactly how Microsoft designed it to work. They tell us when to patch it, how to manage it and we get the benefit of a optimally performing platform. What else could we ask for?
If you look at the technical requirements they are pretty high so having a play with it is not an easy task. The Azure Stack POC is a one-node deployment of Azure Stack Technical Preview 1. All the components are installed on the host machine, and in the virtual machines of the deployment. The following diagram illustrates the logical architecture of the Azure Stack POC and its components.
What VMs are created?
The Azure Stack POC offers services using the following VMs on the POC host:
MAS-ACS01 Virtual machine hosting Azure Stack storage services.
MAS-ADFS01 Virtual machine hosting Active Directory Federation Services. This virtual machine is not used in Technical Preview 2.
MAS-ASQL01 Virtual machine providing an internal data store for Azure Stack infrastructure roles.
MAS-BGPNAT01 Virtual Machine acting as an edge router and provides NAT and VPN capabilities for Azure Stack.
MAS-CA01 Virtual machine providing certificate authority services for Azure Stack role services.
MAS-CON01 Virtual machine available to developers for installing PowerShell, Visual Studio, and other tools.
MAS-DC01 Virtual machine hosting Active Directory, DNS, and DHCP services for Microsoft Azure Stack.
MAS-GWY01 Virtual machine providing edge gateway services such as VPN site-to-site connections for tenant networks.
MAS-NC01 Virtual machine hosting Network Controller, which manages Azure Stack network services.
MAS-SLB01 Virtual machine provides load balancing services in Azure Stack for both tenants and Azure Stack infrastructure services.
MAS-SUS01 Virtual machine hosting Windows Server Update Services, and responsible for providing updates to other Azure Stack virtual machines.
MAS-WAS01 Virtual machine hosting portal and Azure Resource Manager services.
MAS-XRP01 Virtual machine that hosts the core resource providers of Microsoft Azure Stack, including the Compute, Network, and Storage resource providers.
Where are we going with Azure Stack?
Why Azure on prem? Well the evolution of the data center is changing. The following slide says it all:
I suggest you watch this video to get a better insight on where this is going, its rather interesting:
Lets get on with the installation.
How do I install it?
In this blog I will outline how you can install Azure Stack TP2 inside a nested VM on Server 2016 RTM (or VMware ESXi). This is a great way in which to test and have a play with this amazing product which I am very excited about.
Lets get on with the install.
- Download Azure Stack POC items from https://azure.microsoft.com/en-us/overview/azure-stack/try/?v=try Its a large install so ensure you download it in advance.
- Extract these files. In this article I have extracted them to “D:\” on my physical host machine.
- Run the MicrosoftAzureStackPOC.exe file which extract a vhdx file called “CloudBuilder.vhdx”
- Copy the CloudBuilder.vhdx file to a location you wish to store the VM (ideally on an SSD drive)
- Create a Generation 1 Virtual Machine in Hyper-V and give it the following specifications:
- Name: AzureStackPOC (or something else of your choosing)
- CPU: As many as possible. In this article I have given the VM 6 Cores.
- Memory: Again, as much as possible. In this article I have given the VM 64Gb.
- Network: Connect the network to a Virtual Network that has Internet Connectivity.
- OS Disk: Select the CloudBuilder.vhdx file you have move or located above.
- Data Disks: Add 4 x Additional Data Disks, Dynamically Expanding 200Gb each in size. (Ideally put these on SSD if possible
Set-VMProcessor -VMName IC-OR-AZS-01 -ExposeVirtualizationExtensions $true
Get-Disk | Initialize-Disk
You may receive errors due to the OS disk already being initialized. No need to panic.
Change $false to $true which will stop the script failing when checking to see if the Azure Stack is running inside a VM.
Change the last part of the line to read “Should Not BeLessThan 0”
This will stop the script checking for the required amount of cores available.
Now in the command pane navigate to C:\CloudDeployument\Configuration and run InstallAzureStackPOC.ps1
You will be prompted for an Admin Password for the Domain.
- You can always check C:\CloudDeployment\Logs to see the actions being taken by the installation script, including individually executed scripts. You will also see summary.xml files when your installation either finishes or fails.
- In TP2, installation is decomposed into individual steps (for instance, 40.01). You can see what each instance is here https://azure.microsoft.com/en-us/documentation/articles/azure-stack-troubleshooting/
- You can rerun your deployment from a specific state. All you need to do is to import two modules and provide a step number:
- Import-Module C:\CloudDeployment\CloudDeployment.psd1 -Force
- Import-Module C:\CloudDeployment\ECEngine\EnterpriseCloudEngine.psd1 -Force
- Invoke-EceAction -RolePath Cloud -ActionType Deployment -Start 40.01 –Verbose
- Note you don’t need to run the script from the start just run the commands above starting from the point where it failed and the setup will continue from there otherwise it will take days to install
- If you want to change the settings, passwords, or parameter values for the installation script, you need to start the deployment from the beginning.
Microsoft Azure Stack Course (MOC)
Microsoft are even currently writing an Azure Stack Microsoft Official Curriculum course: Configuring and Operating a Hybrid Cloud with Microsoft Azure Stack. The date for release is yet TBD but its exciting times for the Azure Stack and the Software Defined Datacenter.