Microsoft Azure Stack is an extension of Azure – bringing the agility and innovation of cloud computing to your on-premises environment and enabling the only hybrid cloud that allows you to build and deploy hybrid apps anywhere. We bring together the best of the edge and cloud to deliver Azure services anywhere in your environment.

Introducing Azure Functions Runtime preview

Customers have embraced Azure Functions because it allows them to focus on application innovation rather than infrastructure management. The simplicity of the Functions programming model that underpins the service, has been key to enable this. This model that allows developers to build event-driven solutions and easily bind their code to other services, while using their favorite developer tools, has good utility even outside the cloud.

Today we are excited to announce the preview of Azure Functions Runtime that brings the simplicity and power of Azure Functions to on-premises.

Azure Functions Runtime overview

This runtime provides a new way for customers to take advantage of the Functions programming model on-premises. Built on the same open source roots that Azure Functions service is built on, Azure Functions Runtime can be deployed on-premises and provides a near similar development experience as the cloud service.

Harness unused compute power: It provides a cheap way for customers to perform certain tasks such as harnessing the compute power of on-premises PCs to run batch processes overnight, leveraging devices on the floor to conditionally send data to the cloud, and so on.

Future-proof your code assets: Customers who want to experience Functions-as-a-Service even before committing to the cloud, would also find this runtime very useful. The code assets they build on-premises can easily be translated to cloud when they eventually move.

The runtime essentially consists of two pieces, the Management Role and the Worker Role. As the names suggest, these two are for managing and executing functions code respectively. You can scale out your Functions by installing the Worker Role on multiple machines, and take advantage of spare computing power.

Management Role

The Azure Functions Runtime Management Role provides a host for the management of your Functions on-premises.

It hosts the Azure Functions Runtime Portal in which you can develop your functions in the same way as in Azure.

It is responsible for distributing functions across multiple Functions workers.

It provides an endpoint that allows you to publish your functions from Microsoft Visual Studio, Team Foundation Server, or Visual Studio Team Services.

Worker Role

The Azure Functions Runtime Worker Role is where the functions code executes. You can deploy multiple Worker Roles throughout your organization and this is a key way in which customers can make use of spare compute power.

Requirements

The Azure Functions Runtime Worker Role is deployed in a Windows Container. As such it requires that the host machine is running Windows Server 2016 or Windows 10 Creators Update.