This guest post was written by Azure technology consultant, blogger, speaker, Microsoft Azure MVP and #aimsperformancepro Steef Jan Wiggers.
Enterprises start to embrace the cloud and shift their IT assets slowly or at a faster pace to any of the public cloud vendors. However, not all assets might move to the cloud or could take awhile. Thus, enterprises will face a hybrid scenario with some IT assets on-premise and some in the cloud. For instance, enterprises might have Office 365 in the Cloud and leverage some other Software as a Service solution like Salesforce, Box, Slack, Twilio, SendGrid, and ServiceNow, and still have other systems like Oracle eBusiness Suite and SAP on-premise.
A hybrid scenario will bring new possibilities and challenges to businesses. New options they can leverage like cloud services from a public cloud provider like Microsoft Azure and the various SaaS solutions available. Currently, the three big cloud providers, Microsoft Azure, Amazon Web Services (AWS), and the Google Cloud Platform (GCP) offer a wide range of services ranging from artificial intelligence (AI) to Virtual Machines (VM). Moreover, each keeps innovation their cloud platform with more services and updates to existing ones. The challenges lie with connectivity, security, and maintaining a hybrid environment.
With a hybrid environment, enterprises will move data from on-premise to the cloud and vice versa. Furthermore, services in the cloud will communicate with services on-premise and vice versa. In the Microsoft space, a service or a message broker like BizTalk Server can interact with Logic App, API App, or Service Bus queue. A Logic App is a service in Azure that enables end users to integrate with many other Azure Services, SaaS solutions, and provide B2B communication between partners. API’s can be deployed in an API App, and thus are hosted in Microsoft Azure. The service bus is a cloud messaging capability in Azure, providing a platform agnostic messaging with queues, or topics and subscriptions.
Hybrid Integration environment and Microsoft Azure
With Microsoft Azure, enterprises have various ways to provide messaging and data exchange between on-premise systems and Azure Services. A message can be sent from an on-premise service or BizTalk Server to a Service Bus queue. Subsequently, a service in Azure can pick the message up. The service could be a Logic App or Azure Function; a serverless compute service, which enables running code in the cloud. You can trigger a function by sending a message to a service bus queue. The function will process the message and store the result in an Azure database. Or a Logic App can pick the message up and store it in a Cosmos DB, Microsoft’s NoSQL offering in the cloud. Beside a queue for asynchronous messaging, direct messaging is possible with leveraging relay capability in the Service Bus or expose an API on-premise through API Management. Microsoft offers API Management in Azure as an intermediary solution, where you can host a proxy of your API endpoints. Finally, enterprises can leverage through the enterprise gateway Logic Apps as a way into other Azure Services.
The challenges with hybrid solutions are having connectivity between services and systems, security, and supporting them. The connectivity challenge with on-premise data gateway, for instance, lies with a dependency of the server with gateway installed has to be available 24/7. With exposing endpoints of on-premise services you will require a virtual network setup in Azure or Express Route. Another challenge is securing the access to services and systems. By default the network protocol is HTTPS, and access to services is protected by security mechanisms like Shared Access Policies, OAuth 2.0, API Keys or a combination of security mechanisms. Therefore, developers and administrators will have to deal with a variety of security mechanisms. Moreover, supporting a hybrid setup is a challenge as support people need to know both the on-premise systems and services, and Microsoft Azure in this case.
A hybrid environment could have the services and products as shown in the picture below. People working in support can leverage the services shown in the monitoring part.
Application Insights, Operation Management Suite (OMS), and Power BI are services you can find in Azure and the Microsoft Cloud (Office 365). Furthermore, third-party solutions can be of value. You can use AIMS, ServiceBus360, BizTalk360, SQL Operation Studio, Azure Storage Explorer, and Azure DocKit. These tools with Microsoft’s offerings can help support in monitoring, and managing of the hybrid environment, and diagnose of issues. The number of tools and services might be overwhelming at first glance. However, the versatility of Azure Services and your on-premise systems will require this. No one-size fits all solution for monitoring a hybrid integration environment with a centralized dashboard will provide you a complete overview of your environment and solutions. Thus, having a myriad of tools and services available for your support staff is the best option to achieve a sustainable hybrid environment!
Invest in monitoring tools and services
Enterprises need to consider the challenges that they can face when setting up a hybrid environment. Connectivity, security, and maintaining a hybrid environment are the biggest challenges. However, with the proper investments in support staff and tooling, training of developers, and solid architecture guidelines these challenges can be faced with ease. Once integration solutions are deployed in a hybrid environment, maintaining them healthy for the duration of their life time is key. Furthermore, the environment itself needs to be protected from exploits, and remain stable i.e. connections need to be available when communication between systems and services is 24/7. Therefore, investments in any tooling and services that can help in sustaining a healthy hybrid environment are welcome. Support staff will be more productive in diagnosing, analyzing, and resolving issues when having the tools and services available to them.