With Azure Monitor and IaaS via C#.

This article is a part of the https://www.azurespringclean.com/ #AzureFamily community event.

There were two reasons to write this article, the first one is that basic health checks usually not added in the early stages of projects and not deployed with infrastructure. The second one is the awesome Microsoft Extensions.Diagnostics.HealthChecks is not supported by Azure Functions for a good reason, but there is a native health monitor configuration and walkaround from the community on GitHub.

So I decided to share several approaches that can be used together or independently, but all approaches are super easy to repeat for any project(Azure Portal setup is not an easily repeatable solution). …


Deploying RabbitMQ to Kubernetes, configuring KEDA and switching functions triggers to the new queue.

So here is part two, the first article is here, and the GitHub repo is here.

Why is RabbitMQ and not Kafka? Because the latter is a distributed streaming platform, while the former is a message broker and more comfortable to start without extra effort.

TL;DR; In this article, I will share steps to setup RabbitMQ in the existing Kubernetes cluster with deployed Azure Functions and KEDA. Then provide steps to set up a new queue, update load balancer, update the Keda configuration to scale function according to RabbitMQ message count.

Before we begin, Azure Functions are great with…


Or how-to move Azure Functions to your client data center.

Follow #AzureFamily and visit https://azurebacktoschool.tech for the newest community content.

Why? A few years ago the main scenario was to lift application to the cloud, nowadays things changed ))). Last spring, I was asked to move an existing serverless application built around Azure Functions to on-premises for compliance purposes.

Here is the link to the follow-up article.

The video that covers this tutorial.

This publication is a part of a #AzureFamily community event, check other publications at https://azurebacktoschool.tech and follow #AzureBacktoSchool.

TL;DR; In this article, I will share steps to move a serverless application from a consumption plan to a client data center with the help of Kubernetes and KEDA…


A step-by-step guide.

Photo by Kehn Hermano from Pexels

Integration of a serverless API with an existing infrastructure and an identity provider is a cost-effective step towards migrating to Azure Functions while keeping old services up and running. At least in my experience :).

So this is the sequel to my previous article about IdentityServer4 and Azure Functions HTTP request authentication with C#. While the topic seems to be appropriately covered by documentation and StackOverflow, feedback from this article proved otherwise, and the time has come for a guide on Azure API Management(APIM) Consumption(Serverless) tier integration with IdentityServer4 and Functions.

TL;DR; I will explain how to create and configure…


After the expiration of cluster certificates.

Image by Ryan McGuire from Pixabay

Things happen, especially with certificate expiration dates :). It recently happened with me and I got the task to restore the failed cluster. This article is dedicated to the recovery of the Windows-based Azure Service Fabric(ASF) cluster with stateless workloads.

The fastest possible way of recovery is to create a new cluster and deploy stateless services there ☺, but…


And deploy alerts via Azure CLI.

https://www.azurespringclean.com/
https://www.azurespringclean.com/
https://www.azurespringclean.com/

My issues with billing started some time ago and they are connected with the Azure CSP subscription type(you don't have access to Cost Management there). While I can do cost estimation of my deployed infrastructure it's relatively hard to monitor it for spikes and automate this process.

So I decided to automate this process during the fall season of 2019 and now its time to share it with #AzureFamily. There is also a sample GitHub gist with Azure CLI with appropriate billing meters included. This article is a part of the #AzureSpringClean community event.

TL;DR; It’s easy to avoid billing…


The usage guide with cases, code, and video.

#AzureFamily #AzureAdventCalendar event logo.

I was intrigued by features of Azure SQL Serverless in preview, and general availability on November 4th doesn’t disappoint me either. So I decided to share my experience with this article, demo GitHub repository, and video. These materials are part of the #AzureAdventCalendar community event.

TL;DR; I will share my experience with burstable and pauseable SQL Serverless database in Azure. Provide the YouTube video, GitHub demo repository with infrastructure script, so you can run tests by yourself.

Usage scenarios.

Let’s take, for example, my scenario. It consists of a workload during office hours from 7.00 till 19.00 with heavy ETL afterward. So…


With custom handler and without Azure API Management.

Photo by Skitterphoto from Pexels.

Azure Functions have a rich functionality in terms of security and authentication, but options for custom auth are limited. And you have to create your own JWT token handler to work with an Identity Server 4 based provider. There are several articles online on this topic, but none of them matched my needs exactly, so I decided to share my solution as well.

TLDR; I will explain how to validate the bearer token issued by Identity Server 4. …


Or how to tackle exceptions and re-run failed messages.

© https://twitter.com/SlonPics

One of the Serverless solution benefits is a “performance at scale.” As a result, you can get “Failure at scale” if something goes wrong. Thus it’s crucial to introduce error handling for your Azure Functions project early.

TL; DR; I will explain how to handle exceptions and errors in Azure Functions triggered by Azure IoT Hub. And how to setup proper notification and re-run failed messages.

The problem

With serverless things can get real messy fast. In a matter of a few minutes, 5k messages can trigger an equal number of exceptions. In my case, it was a PoC project with an…


Seamless delivery made easy or

And how do they differ from non-serverless plans?

Deployment slots with Azure Functions
Deployment slots with Azure Functions
https://www.pexels.com/@tanasovich

Deployment slots are a great thing that offers seamless delivery to production without downtime or missing messages. And finally, slots are generally available for Azure Functions. I will explain how do they work, how they are different from classic App Service plans and mention a few scenarios.

How do they work?

So, what is happening when you swap Staging and Production slots?

  • Slot specific settings are moving from Production to Staging.
  • Staging application instances re-instantiated with the new parameters.
  • An equal number of Staging servers started for the Production slot.
  • An automatic health check performed.
  • Azure DNS magic, routes exchanged for both containers.

Let…

Stas(Stanislav) Lebedenko

Azure MVP | Senior dev @ SigmaSoftware | Odesa MS .NET/Azure group | Cloud solution architect | Azure Serverless fan 🙃| IT2School/AtomSpace volunteer #msugodua

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store