all Technical posts

Azure Function Proxies - Part 2: Easily enable hybrid integration.

Connecting cloud services to on premises API's can be quite challenging. Depending on your setup, there are multiple options available. The most enterprise grade options reside on the network level: ExpressRoute and Site-to-Site VPN. Another option is leveraging Azure App Service Hybrid Connections, which gives you a very simple way to connect to on premise resources on the TCP level, in a firewall-friendly and high available manner. This blog will demonstrate how you can consume an on premises API via Azure Function Proxies, without any coding at all.

You can find the documentation of Azure App Service Hybrid Connections over here.

Hybrid Connections 01

Instructions

Following these instructions to setup hybrid connectivity through hybrid connections:

  • In order to take advantage of hybrid connections, you must ensure that you create the Azure Function Proxy within an Azure App Service Hosting Plan.

Hybrid Connections 02

  • Navigate to Platform features and click on Networking

Hybrid Connections 03

Consumption plans do not support networking features, as they are instantiated at runtime.

Hybrid Connections 04

  • Click on Configure your hybrid connection endpoints

Hybrid Connections 05

  • Download the Hybrid Connection Manager

Hybrid Connections 06

  • Start the installation with accepting the License Agreement.

Hybrid Connections 07

  • The installation doesn’t take long.

Hybrid Connections 08

  • Click Finish to complete the installation.

Hybrid Connections 09

  • Open the Hybrid Connection Manager UI desktop app.

Hybrid Connections 10

  • At this moment, you should not see any hybrid connection. Ignore the ‘mylaptop’ connection in the screen capture below, as this is still a legacy BizTalk hybrid connection.

Hybrid Connections 12

  • Back in the Azure Function Networking blade, click Add hybrid connection.

Hybrid Connections 13

  • Choose Create new hybrid connection.

Hybrid Connections 14

  • Give the connection a name, provide the endpoint host name and port. As Hybrid Connections leverages ServiceBus relay technology underneath, you need to provide a ServiceBus namespace.

Hybrid Connections 15

  • Choose in the local Hybrid Connection Manager to Configure another Hybrid Connection.

Hybrid Connections 16

  • Select the previously created hybrid connection and click Save.

Hybrid Connections 17

  • If all goes well, you should see the Connected status for the hybrid connection.

Hybrid Connections 18

  • The Azure Portal should also display a Connected status.

Hybrid Connections 19

  • You can configure now the Azure Function proxy with an external / public URL to point to the local backend URL, which is now available through the Hybrid Connection Manager.

Hybrid Connections 20

Now you can access your local API from the external world! Be aware that there is currently no security measure applicable. This will be covered in the next part of this blog post series.

High Availability

In case you need high availability, you can install another Hybrid Connection Manager that connects to the same hybrid connection. The documentation states the following:
Each HCM can support multiple hybrid connections. Also, any given hybrid connection can be supported by multiple HCMs. The default behaviour is to round robin traffic across the configured HCMs for any given endpoint. If you want high availability on your hybrid connections from your network, simply instantiate multiple HCMs on separate machines.

Enjoy this easy hybrid connectivity!
Toon

Subscribe to our RSS feed