Deploying Azure Stack Technical Preview 1 Proof of Concept (Part 1)

If you would like to be notified when Janique Carbone releases the next part in this article series please sign up to our Real-Time Article Update newsletter.

Azure Stack Background

First and foremost, Azure Stack is Microsoft’s new hybrid cloud platform product that enables you to deploy the Azure environment in your own datacenter, offer Azure services on premise, and provide local management that is consistent with your experience in the public Azure cloud. To get you started with this technology, Microsoft released the Azure Stack Technical Preview 1 (TP1) Proof of Concept (POC) which packages all of the required software components to deploy in your datacenter using only a single Hyper-V host and virtual machines, as shown in Figure 1.

Figure 1: Azure Stack TP1 POC Architecture

The objective of the Azure Stack TP1 POC is to allow you to learn and test the technology. Obviously, it is not something that you should be putting into production yet, and this is clearly stated in the online Azure Stack documentation which you can find here.

The Azure Stack TP1 POC is composed of several services and providers that work in conjunction as the foundation of your on premise cloud. These services and providers are deployed in virtual machines (VM) that include:

  • Active Directory VM (ADVM) – This VM hosts the Active Directory services, DNS, and DHCP required for Azure Stack.
  • Azure Consistent Storage VM (ACSVM) – This VM hosts the Azure Consistent Storage Services which abstract the underlying storage components such as Scale-out File Server (SoFS), Storage Space, Cluster Shared Volume (CSV) and Storage Spaces Direct (S2D).
  • Mux VM (MuxVM) – This VM hosts software load balancer and network multiplexing services which controls connection-level load spreading for Azure Stack.
  • Network Controller VM (NCVM) – This VM hosts the Network Controller which manages all of the network services in Azure Stack.
  • Network Address Translation VM (NATVM) – This VM hosts the network address translation services that enable outbound network connectivity from Azure Stack.
  • Resource Providers VM (xRPVM) – This VM hosts the Compute, Network, and Storage resource providers.
  • SQL VM (SQLVM) – This VM hosts SQL services that support the Azure Stack resource providers.
  • Portal VM (PortalVM) – This VM hosts the Azure Stack portal services and Azure Resource Manager (ARM).
  • Client VM (ClientVM) – This VM is provided to install and test tools like PowerShell, and other tools.

Azure Stack Portal

The main graphical user interface (GUI) to manage Azure Stack is the Azure Stack Portal, shown in Figure 2. The Azure Stack Portal is used by both administrators and customers (known as tenants) to create and deploy services, and to configure and further refine access to cloud resources.

Figure 2: Microsoft Azure Stack Portal

When you compare the Azure Stack Portal to the Microsoft Azure Portal shown in Figure 3, you can see that they look the same.

Figure 3: Microsoft Azure Portal

In addition to providing the same look and feel to both administrators and tenants, the Azure Stack Portal can be fully customized to fit visual and functional requirements. It is scalable, supporting deployment across multiple nodes, and you can also extend its functionality through 3rd party components. The Azure Stack Portal is built on the new Azure Resource Manager (ARM) to offer self-service features that rely on a role-based access control (RBAC) framework for management of cloud resources.

Azure Resource Manager

The Azure Resource Manager is the new service management API that supports control of compute, storage, network, and other resources. Microsoft’s plan with ARM is to allow you to easily migrate services between Azure Stack providers or to the public Azure cloud. With ARM, you can define the configuration and deployment of resources using templates, and group resources in resource groups that can be managed as a unit by you or your designated users. ARM templates are JSON files that you edit to define the resources in your deployment. ARM will also allow you to deploy Azure Stack resources in regions that you define, just like in the public Azure cloud where you can deploy your resources in the pre-defined regions that represent geographically distinct Microsoft datacenters. In addition, ARM provides audit logging for your subscriptions and resources.

Azure Stack Resource Providers

There are three main resource providers (RP) in Azure Stack: Compute RP, Network RP, and Storage RP. The Compute RP enables Azure Stack tenants to create virtual machines. The Network RP allows the creation of public IP addresses, network security groups, virtual networks, and other Software Defined Networking (SDN), and Network Function Virtualization features (NFV). The Storage RP supports the ability to store and retrieve large unstructured data through Azure Blobs, and structured data with Azure Tables. There are three more Resource Providers available for Azure Stack TP1 POC from GitHub which can be installed on TP1: SQL Server (SQL Server database service offering), MySQL (MySQL database service offering), and Web Apps (Azure App Service implementation). More service providers from Microsoft and 3rd parties are envisioned to extend Azure Stack functionality in the future.

Azure Stack Services, Plans, Offers, and Subscriptions

Using the Azure Stack Portal, administrators define services for tenants through offers and plans. Tenants create subscriptions to offers, which may contain one or more plans, as shown in Figure 4.

Figure 4: Azure Stack Subscriptions, Offers, Plans, and Services Hierarchy

A Service Administrator configures and manages the Azure Stack services, offers, and plans. In Azure Stack TP1 POC, services can include VMs, websites, SQL Server, Visual Studio, and others from Microsoft, or 3rd parties. A plan provides you a way to group one or more services that you want to make available to tenants, and allows you to configure service quotas such as processor, memory, or number of VMs. If your Azure Stack environment includes multiple locations, you can assign different quotas for each location. An offer allows you to group one or more plans to present to tenants for subscription, as you can see in Figure 4. An offer can include a base plan which includes access for subscribing tenants to all services defined in that plan, or a Service Administrator can also include add-on plans that tenants can add to their subscriptions. As you have probably figured out by now, subscriptions are the means through which tenants acquire access to services. Tenants can subscribe to one or more offers, but must subscribe separately to each desired offer.

In terms of billing and chargeback for use of services, Azure Stack can collect and produce individual user reports that combine usage data across all resource providers. A report can include simple resource accounting or more detailed information including performance counters. Azure Stack also provides APIs that allow you to aggregate data usage across tenant subscriptions, if needed for billing consolidation.

Hardware Requirements for Azure Stack TP1 POC Host

Now that you have a little bit better idea of what Azure Stack has to offer, it is time to understand the hardware requirements to deploy Azure Stack TP1 POC in your environment.

This is the recommended hardware configuration for the physical host on which you will install Azure Stack TP1 POC:

  • Hardware certified for Windows Server 2012 R2
  • Dual-socket processor with 16 cores (12 minimum)
  • 128 GB memory (96 GB minimum)
  • BIOS Virtualization enabled with SLAT support
  • Single network card that is Windows Server 2012 R2 certified
  • Single OS hard disk with 200 GB minimum for system partition
  • Four data hard disks with 250 GB minimum for each disk (all same type and capacity)

SAS, HDD and SSD drives are supported, and if you have a RAID capable HBA, it must be configured in pass-through mode with hard disks in RAID 0 configuration.

Installation Requirements for Azure Stack TP1 POC

Before you install the Azure Stack TP1 POC, you must perform a clean install of Windows Server 2016 Datacenter Edition Technical Preview 4 with all updates on your physical host. You must have a DHCP server to provision IP addresses (IPv4 only) or define a static IP address for the NATVM. The IP address for the NATVM cannot be in subnets,, or, as these are used for internal networks by the Azure Stack POC. In addition, you must ensure that the Azure Stack host IP, and IP assigned to the NATVM are able to communicate through ports 80 and 443 to the Internet. Finally, you must have an active Microsoft Azure AD account that is a directory administrator for at least one Azure Active Directory. This account will become the Service Administrator for the Azure Stack environment.

Deploying Azure Stack TP1 POC

With your physical machine ready to deploy Azure Stack, it is time to download the package from this link, and save it in a folder on your C drive. Once you have the bits on your system, follow this procedure to install Azure Stack:

  1. Open the Microsoft Azure Stack Technical Preview folder.
  2. Right-click on the Microsoft Azure Stack POC folder and select Extract All, as shown in Figure 5.

Figure 5: Extracting the Microsoft Azure Stack POC Files

  1. Navigate to the extracted Azure Stack POC files, and double-click on the Microsoft Azure Stack POC application file, as shown in Figure 6.

Figure 6: Executing the Microsoft Azure Stack POC Application

  1. In Welcome to Microsoft Azure Stack POC setup, click Next, as shown in Figure 7.

Figure 7: 
Microsoft Azure Stack POC Setup – Welcome

  1. In License Agreement, select I accept the agreement and then click Next, if you agree, as shown in Figure 8.

Figure 8:
 Microsoft Azure Stack POC Setup – License Agreement

  1. In Important Notice, read the data collection notice and then click Next, if you agree, as shown in Figure 9.

Figure 9: 
Microsoft Azure Stack POC Setup – Important Notice

  1. In Select Destination Location, enter a folder where VHD and PowerShell files can be extracted and then click Next, as shown in Figure 10.

Figure 10: Microsoft Azure Stack POC Setup – Select Destination Location

  1. In Select Ready to Extract, click Extract, as shown in Figure 11.

Figure 11: Microsoft Azure Stack POC Setup – Ready to Extract

  1. When setup has completed extracting the files, click Finish as shown in Figure 12.

Figure 12: Microsoft Azure Stack POC Setup – Completing the Wizard

  1. Navigate to the new extracted folder as shown in Figure 13.

Figure 13: Microsoft Azure Stack POC – Extracted Files

  1. Copy the WindowsServer2016Datacenter.vhdx file to C:\, and then rename it to MicrosoftAzureStackPOCBoot.vhdx.
  2. Open the File Explorer in C:\, then right-click on MicrosoftAzureStackPOCBoot.vhdx, and then click Mount, as shown in Figure 14.

Figure 14: Mounting the Windows Server 2016 Datacenter VHD

  1. Open a Command window with Administrator privileges, and run the following command to create a dual boot configuration.
    • Bcdboot e:\windows (replace e:\ with the mounted drive on your system)
  2. Reboot the system, and ensure that your system is using local time, not UTC time.
  3. When you restart the system, select the boot option at the top of the list to load the Azure Stack VHD.
  4. When the Windows Setup starts running, configure the system using your preferences for country, language, administrator password, and other settings.
  5. When prompted for the product key, enter the product key available here.
  6. Log in with the local administrator account that you just configured.
  7. Open Disk Management, check that you see all four data drives.
  8. Check that you can access from your browser.
  9. Open a PowerShell window with Administrator privileges.
  10. In PowerShell, navigate to the folder with the extracted Azure Stack POC files.
  11. In PowerShell, enter the following command:
    • .\DeployAzureStack.ps1 –Verbose
  12. In PowerShell, you will see a Welcome message, and then a prerequisites check will execute.
  13. If your system passes the prerequisites check, when you see the prompt, enter a password for the built-in administrator account that will be used by all the Azure Stack VMs.
  14. At the Azure account login prompt, press a key and a browser window will open at the Microsoft Azure login. In the login screen, enter the Microsoft Azure account credentials for an account that is an Azure Active Directory administrator.
  15. In your local PowerShell, enter Yes at the prompt to confirm the selected Azure Active Directory. Two users for Azure Stack are created during this phase, as shown in Figure 15. There is an Admin user for Azure Stack, and a tenant user for an Azure Stack deployment application.

Figure 15: Azure Stack User Creation in Azure Active Directory

  1. In your local PowerShell, enter Yes when prompted that Microsoft Azure Stack POC is ready to deploy. You can sign in while the Azure Stack deployment takes place. If you do, you will see a PowerShell window launch after you log in that displays the number of tasks remaining in the process, as shown in Figure 16. This PowerShell window closes after the deployment completes.

Figure 16: Azure Stack Deployment Progress in PowerShell

  1. The Azure Stack deployment may take a few hours, and the system should reboot multiple times during the deployment.
  2. When the Azure Stack deployment is complete, log into the system as AzureStack\administrator using the password that you configured.
  3. Open Hyper-V Manager, and verify that all the expected VMs are up and running, as shown in Figure 17.

Figure 17: Azure Stack TP1 POC VMs in Hyper-V Manager

After you are logged in with the administrator account, you should open the Server Manager, and turn off IE Enhanced Security Configuration for admins and users.

If the Azure Stack TP1 POC deployment is successful, you will see a ClientVM.AzureStack.local.rdp desktop icon, which you can use to open a Remote Desktop Connection to the client VM. The AzureStack\AzureStackUser account created during the deployment is used to connect automatically. Once you are logged in to the client machine, you will see another desktop icon that you can use to view the Microsoft Azure Stack POC Portal in a browser window, as shown in Figure 18.

Figure 18: Azure Stack Portal

As you can see, the Azure Stack TP1 POC deployment is fairly simple. If your system met all the requirements previously outlined, the deployment may take some time to complete, but it should run smoothly.


In Part I of this article, you learned about the new Azure Stack product release from Microsoft, and how to install it in your environment. With the Azure Stack TP1 POC, you can deploy the environment on a single server and start to test on premise service delivery to local tenants.

In Part II of this article, you will see what the portal looks like once you log in. From there, you will learn how to get started with the creation of plans and offers, how tenants subscribe to offers, how to use templates to deploy and provision resources, and more about the existing Platform as a Service (PaaS) services available to test in your environment.

If you would like to be notified when Janique Carbone releases the next part in this article series please sign up to our Real-Time Article Update newsletter.

About The Author

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top