0

I'm trying to migrate a Azure Linux/Python function app from the consumption tier to a Elastic Premium tier. It turns out this is not so easy: https://github.com/Azure/Azure-Functions/issues/155 . You basically have to recreate the Function from scratch.

As my function is sitting behind a APIM I thought it might be possible to do this by:

  1. Creating a new ASP with the correct tier
  2. Deploy Function into new ASP
  3. Switch the APIM back end of the API to the new function.

The trouble is I can't figure out how to do that last part. I can't seem to find where this is configured, or how to change it (via the portal or via CLI). I've even done some splunking in the configs using the new resources front-end https://resources.azure.com/ and can't even find where the APIM configuration for the backends reside.

Niko P
  • 45
  • 4
  • 1
    In the portal go to your APIM then go to APIs. Under All APIs select your api and you should see the designer for the different sections (Inbound, Backend, Outbound) – auburg Apr 09 '21 at 08:26
  • @auburg the Designer Backend config only lets me select Azure Logic apps, not Functions. There are options to override the HTTP endpoint, but i have not gotten this to work, and once you use the override, you can't go back to the function app... – Niko P Apr 11 '21 at 23:41
  • If the solution I provided below helps your problem, could you please [accept it as answer](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235) (click on the check mark beside my answer to toggle it from greyed out to filled in). Thanks in advance. – Hury Shen Apr 13 '21 at 08:43

1 Answers1

1

You just need to go to your APIM, click "APIs" tab, choose your api under "All APIs", click "..." button of your api then import another function app to your APIM api.

For example, I have a api under "All APIs" in my APIM. Its backend is a function app running with consumption plan. Like below screenshot:

enter image description here

Now I want to change the backend of the api to another function app which running with Elastic Premium tier. Just click "..." button of the api, and click "Import" like below screenshot:

enter image description here

Then choose "Function App" and select your new function app.

enter image description here

Hury Shen
  • 14,948
  • 1
  • 9
  • 18
  • Thanks for this info. Is there a way to do it one end-point at a time? I want to migrate to a new version of my Azure Functions app but I want to do it over time, I was hoping for each endpoint I could just swap out the back-end. – Andrew Hawes Jun 30 '22 at 12:51