Microsoft's Azure team has been rolling out new services, features and partnerships at a breakneck pace as of late. But the majority of the news announcements have been focused on the IaaS, or infrastructure as a service, side of the Microsoft cloud, which has led some to wonder if Microsoft is backing away from its original platform-as-a-service (PaaS) focus with Azure.
Nothing could be further from the truth, said Microsoft Azure Chief Technical Officer Mark Russinovich.
When Microsoft originally launched Windows Azure, it was a PaaS-only cloud suited for new applications written from scratch. It wasn't until 2012 that Microsoft addded IaaS support to Azure, allowing users to host existing Windows Server and/or Linux applications in virtual machines. The addition of IaaS to Azure is what convinced more customers to give Microsoft's cloud a try. Microsoft officials began touting Azure's IaaS features as providing customers with an on-ramp to Microsoft's cloud.
"We are working hard internally on taking PaaS forward," Russinovich told me during an interview at Tech Ed Europe in Barcelona this week. "You'll see more on that next year."
Russinovich did provide some guidance as to what the Azure engineering team is thinking, in terms of where to take PaaS. The key thing to know, he said, is the plan is to make Azure PaaS more "microservice oriented."
Today, Azure's PaaS is "infrastructure oriented, with roles," Russinovich explained. But the Azure team is moving toward a world where Azure apps can be "decomposed into tiny pieces, with each piece coming with a declarative model."
What will enable this microservice support is a layer that the team internally calls "Windows Fabric." (This fabric is not the same as the Azure Fabric Controller, which is the part of Azure that corresponds to the Windows Server kernel, but is specific to Microsoft's cloud.) The Windows Fabric works in a distributed way, with the various piece parts talking to one another via application programming interfaces (APIs), he said.
Microsoft already has a couple of its own services running on Windows Fabric, Russinovich said, including the Service Bus, SQL Azure and Lync. The image embedded above in this post is from an MSDN article explaining the Service Bus for Windows Server architecture and shows where Windows Fabric fits in.)
"This (Windows Fabric) is our internal microscale," Russinovich said. "More and more services are being built on it each day."
While Windows Fabric will bring some new, compelling capabilities to developers once Microsoft makes it available to developers outside the company, it won't obliviate the current PaaS infrastructure, if current pans plan out. Web roles and worker roles will continue to exist, but they will change, Russinovich acknowledged. Current Azure services, like Azure ML (machine learning), AzureDB (Microsoft's NoSQL service), and others will either remain as they are — in almost a vertical PaaS form, or evolve, depending on how Microsoft builds out the new microservice model.
"The straightforward model of putting code in VMs (virtual machines) and scaling out will be preserved," Russinovich said.
With the new PaaS model, the different parts of a single app will be able to scale independently. Different components will be able to have their own resiliency — stateless or stateful.
Currently, the Windows Fabric model is "very sophisticated," Russinovich said. "Before we make it public, we want to make it easier for people to onboard."