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.
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.
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.
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.
How do I get started?
Please download the Azure Functions Runtime installer.
For details, please see the Azure Functions Runtime documentation.