Azure Event Hub and Azure Function Architecture

Azure Event Hub integrates with Azure Functions for a serverless architecture. Microsoft calls it a “Serverless Event Processing” - https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/serverless/event-processing#:~:text=Azure%20Functions%20is%20a%20serverless,writes%20the%20results%20to%20storage.

Architecture with Azure Function App

Using serverless event processing, Event-based cloud automation is possible and can dramatically improve productivity of DevOps team. Microsoft exposes several patterns on cloud automation with Azure Function App. : https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/serverless/cloud-automation

  1. Respond to events on resources

  2. Scheduled tasks

  3. Process Azure Alerts

  4. Orchestrate with external systems

  5. Expose a web hook or API

  6. Hybrid automation

 

  1. This pattern uses Event Grid to trigger the function for such events as Azure resource or resource group getting created, deleted, changed, and so on.

  2. Maintenance tasks executed using timer-triggered functions (reading Blob Storage content at regular intervals,…).

  3. Function typically takes remedial actions in response to metrics, log analytics, and alerts originating in the applications and the infrastructure (sending notifications if a function is failing,…).

  4. Enables integration with external systems, using Logic Apps to orchestrate the workflow (sending email notification when automation task is completed,…).

  5. Automation tasks using Azure Functions can be integrated into third-party applications or even command-line tools, by exposing the function as a web hook/API using an HTTP trigger (triggering automation for a failing service,…)

  6. Uses the Azure App Service Hybrid Connections to install a software component on your local machine. This component allows secure access to resources on that machine. The ability to manage hybrid environments is currently available on Windows-based systems using PowerShell functions (managing your on-premises machines, managing firewalls,…)