Azure / Azure/Azure-Functions

Guidance on rolling update without downtime

Open
#1,831 3 comments 1 reaction 0 assignees View on GitHub
Dominant language
PowerShell
Stars
1.1k
Forks
215
Avg merge
4h 2m
Merged PRs (30d)
1

Description

copying from https://github.com/Azure/app-service-announcements-discussions/issues/175#issuecomment-768867233

cc: @saibaskaran57

Hey everyone,

Could someone share how could we perform the Platform upgrade from Azure Functions v2 -> v3 without any downtimes?

There are two issues I'm currently facing in terms of the platform upgrade:
1) ARM template changes on `FUNCTIONS_EXTENSION_VERSION` from `~2.0` to `~3` causes downtime with HTTP 503 Service Unavailable
I did a simple ping check(every 100ms) on my Azure functions when ARM template is being deployed. I could reproduce this using both `Powershell` & `Azure resource group deployment` azure pipeline task as show below:
![functionupgrade](https://user-images.githubusercontent.com/36925330/106105443-f8085000-617e-11eb-987d-2734ead4547b.JPG)

2) I've changed my strategy to upgrade using Functions deployment staging slots first before making a swap. However, the `FUNCTIONS_EXTENSION_VERSION` app settings did not bring forward to production slot during this swap.
Just to test this out, in my staging slot I updated `FUNCTIONS_EXTENSION_VERSION` from `~2.0` to `~3` and created a new app settings called `NewVar`. From the screenshot below, only `NewVar` is brought forward to production slot.
![swaptest](https://user-images.githubusercontent.com/36925330/106105973-cba10380-617f-11eb-8a41-07a8fa0d9df1.JPG)

How can we ensure the function app is upgraded with seamless approach without causing service downtime?

Thanks.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.