Stacks on Stacks in Racks on Racks…
AzureStack was a big focus of Microsoft Ignite. Heck, there was a whole session track dedicated to supporting AzureStack, which is pretty impressive for a product that is still only in technical preview and won't even be available till sometime in mid-2017. Microsoft is making it clear that AzureStack is a top priority, leaving many wondering what it is and why Microsoft is banging that particular drum so hard.
- Converging all the Things - Hyperconverged is THE buzzword right now, and AzureStack just happens to run on Hyperconverged software. Funny that.
- Enterprise <3 Microsoft - Azure is most popular with traditional IT and Enterprise. Being able to offer those enterprise customers a way to run Azure locally would be a big win, and Enterprise trusts the Azure solution over something like OpenStack or AWS.
- AWS ain't got Nothing - AWS is public cloud only, and Azure wants to increase market share by doing something AWS won't, offer an on-premise solution. The recent response of AWS is to partner with VMware. That's a topic for another day.
What’s in the Box?!
So, what are the components of AzureStack? Let's start with the basic hardware. AzureStack runs on a hyperconverged platform, meaning that each node in the cluster is a self-contained server with compute and storage. All nodes in the cluster are connected by 2x 10Gb links to two top of rack (ToR) switches. Each node also has an out of band 1Gb Ethernet port connected to a ToR out of band switch. The out of band switch connects into uplinks on the two ToR switches. The minimum configuration for a cluster will be four nodes, and the maximum is 16 nodes.
Internally, all the nodes will be running Windows Server 2016 Core. They will have the Hyper-V and Storage Spaces roles installed, and the storage in the node is managed by storage spaces direct (S2D). S2D is similar in principle to VSAN or Lefthand, in that it is built from several nodes replicating data across the nodes in different redundancy levels, depending on the desired performance and resiliency. S2D can scale up to 16 nodes, which is why the maximum for AzureStack scale units is 16 nodes. To get all three redundancy levels: 2-way mirror, 3-way mirror, and parity; a minimum of four nodes is required, and thus now you know why four is the minimum.
Running on top of the hardware and core operating systems are several different VMs, which all provide certain services to AzureStack. The networking services use the software-defined networking that is built into Server 2016, which uses VXLAN as its default overlay network of choice. It's exciting that Microsoft has gone with the VXLAN standard, since the rest of the industry has also settled on this encapsulation method for products like Neutron and NSX. Additionally, there are networking service VMs providing load balancing, routing, and network control.
So, you've got S2D for storage, Hyper-V for compute, and SDN for networking. These three along with Key Vault form the Foundational Services for the Azure Stack. On top of those services are the Core Services, which provide the management functionality for administrators and tenants alike.
The real secret sauce here is the Azure Resource Manager layer, that acts as the glue between the Service Framework and the end-user experience. The ARM interacts with the portal, PowerShell, and APIs calls all through its REST API, which you can see if you run Fiddler on a machine running the portal in a browser. The ARM in AzureStack is the same ARM being used by Azure proper, which means that whatever you write to run in AzureStack can run in Azure and vice-versa, with a few caveats.
Even though the API is the same, not all features of Azure will be available on AzureStack when it releases, and most likely some features will never be available on-premise due to the required scale or complexity of the offering. That being said, the most often used features, such as IaaS and SQL PaaS, are already available in AzureStack Technical Preview 2. Another big enhancement in TP2 is the ability to check for and run updates on the preview to take advantage of the latest code being released by Microsoft. The feature roadmap is rich, and Microsoft is working like crazy to get these new features delivered to testers so that they can provide useful feedback.
Speaking of which, AzureStack TP2 is running in our very own Anexinet Innovation Center! If you are interested in getting up to speed with AzureStack, you can always read out to Anexinet to schedule a demonstration.