On-premises data gateway for Azure Logic Apps
This reference architecture illustrates a logic app that's running in Microsoft Azure, which is triggered by Azure Spring Cloud. It then connects to on-premises resources such as Microsoft SQL Server and Microsoft SharePoint Server.
Download a Visio file of this architecture.
Typical uses for this architecture include:
- Cloud-based Azure Logic Apps workflows that require data from on-premises software as part of their run.
- Extending the capabilities of existing on-premises software by triggering Logic Apps workflows in the cloud.
The architecture consists of the following components:
- Azure Spring Cloud. Spring Cloud provides a managed service that's designed and optimized specifically for Spring microservices that are written in Java.
- Azure Logic Apps. Logic apps are automated workflows that are provided as a scalable cloud service for common enterprise orchestration tasks. Logic apps include connectors for many popular cloud services, on-premises products, or other software as a service applications. The Logic Apps workflow includes the following features:
- Trigger that fires whenever a new Azure Queue storage message is received.
- Action to query SQL Server for relevant data.
- Action to compose a response from the collected data.
- Action to persist the composed response to a list on the SharePoint Server.
- On-premises data gateway. An on-premises data gateway is bridge software that connects on-premises data to cloud services. The gateway typically installs on a dedicated on-premises virtual machine.
- SQL Server. This is an installation of SQL Server.
- SharePoint Server. This is an installation of SharePoint Server.
The following recommendations apply for most scenarios. Follow these recommendations unless you have specific requirements that override them.
On-premises data gateway
While it's possible to expose your on-premises servers to the public internet, it's preferable to use an on-premises data gateway. This gateway creates a secure read/write connection between your on-premises data sources and Azure. The on-premises data gateway is used with Logic Apps connectors to connect local data sources to Azure. Before installing an on-premises data gateway, consider the following:
- You can install an on-premises data gateway on any on-premises virtual machine. You can choose to install it on the same virtual machine as your server applications or on a co-located virtual machine with the appropriate network connectivity.
- The architecture of the on-premises data gateway is designed to make outbound connections to Azure Service Bus.
- Review the additional considerations for installing an on-premises data gateway.
An on-premises data gateway can be used with more than just Logic Apps. It's possible to use the same data gateway installation with:
- As the amount of Logic Apps flows increase, consider the capacity constraints of the on-premises servers. You'll need to determine if the on-premises servers can handle the increased workload.
- Avoid single point of failure issues for an on-premises data gateway by installing the software on multiple on-premises virtual machines.
- Consider implementing high availability topologies for your on-premises servers by using techniques such as:
- Service Bus is used for outbound data gateway communication. This might require configuring your firewall to allow outbound connections to Azure.
- Consider Azure ExpressRoute if you want consistent throughput from your on-premises data sources to Azure.
- The corresponding Azure resource for an on-premises data gateway should only be created after the corresponding software is installed on an on-premises virtual machine.
- Consider storing workflow configuration as a JSON template within an Azure Resource Manager template to automate deployment.
- While it's possible to expose your on-premises servers to the public internet, it's preferable to use an on-premises data gateway. This gateway creates a secure read/write connection between your on-premises data sources and Azure.