You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Consumption plan automatically scales, even during periods of high load. When you run functions in a Consumption plan, you pay for compute resources only when your functions are running. On a Consumption plan, a function execution times out after a configurable period of time. The Consumption plan is currently the only serverless hosting option that supports Windows.
[Migrate apps from Azure Functions version 3.x to version 4.x](migrate-version-3-version-4.md).
30
32
31
33
## Levels of support
@@ -120,9 +122,7 @@ These versions of the Functions runtime reached end of extended support on Decem
120
122
121
123
Migrate your apps to version 4.x as soon as possible to get full support. For a complete set of language-specific migration instructions, see [Migrate apps to Azure Functions version 4.x](migrate-version-3-version-4.md).
122
124
123
-
Apps using versions 2.x and 3.x can still be created and deployed from your CI/CD DevOps pipeline, and all existing apps continue to run without breaking changes. But your apps aren't eligible for new features, security patches, and performance optimizations. You can only get related service support after you upgrade your apps to version 4.x.
124
-
125
-
Versions 2.x and 3.x are no longer supported because .NET Core 3.1, a core dependency, reached end of support. This requirement affects all [languages supported by Azure Functions](supported-languages.md).
125
+
Apps using versions 2.x and 3.x can still be created and deployed from your CI/CD DevOps pipeline, and existing apps continue to run without breaking changes, except for v3 apps on Linux Consumption, which [will stop running after September 30, 2026](#retired-versions). Your apps aren't eligible for new features, security patches, and performance optimizations. You can only get related service support after you upgrade your apps to version 4.x.
Copy file name to clipboardExpand all lines: articles/azure-functions/migrate-version-3-version-4.md
+4-2Lines changed: 4 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,11 +19,13 @@ ms.custom:
19
19
20
20
# Migrate apps from Azure Functions version 3.x to version 4.x
21
21
22
-
Azure Functions version 4.x is highly backwards compatible to version 3.x. Most apps should safely migrate to 4.x without requiring significant code changes. For more information about Functions runtime versions, see [Azure Functions runtime versions overview](./functions-versions.md).
23
-
24
22
> [!IMPORTANT]
25
23
> As of December 13, 2022, function apps running on versions 2.x and 3.x of the Azure Functions runtime have reached the end of extended support. For more information, see [Retired versions](functions-versions.md#retired-versions).
26
24
25
+
Azure Functions version 4.x is highly backwards compatible to version 3.x. Most apps should safely migrate to 4.x without requiring significant code changes. For more information about Functions runtime versions, see [Azure Functions runtime versions overview](./functions-versions.md).
This article walks you through the process of safely migrating your function app to run on version 4.x of the Functions runtime. Because project migration instructions are language dependent, make sure to choose your development language from the selector at the top of the article.
Copy file name to clipboardExpand all lines: articles/azure-functions/migration/migrate-aws-lambda-to-azure-functions.md
+45-62Lines changed: 45 additions & 62 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,25 +32,59 @@ This article doesn't address:
32
32
- Hosting AWS Lambda containers in Azure.
33
33
- Fundamental Azure adoption approaches by your organization, such as [Azure landing zones](/azure/cloud-adoption-framework/ready/landing-zone/) or other topics addressed in the Cloud Adoption Framework [migrate methodology](/azure/cloud-adoption-framework/migrate/).
34
34
35
-
## Migration custom chat mode
35
+
## Migrate with GitHub Copilot and Azure Skills
36
36
37
-
To make it easier to migrate your AWS Lambda apps to Azure using Visual Studio Code, Azure Functions provides a [custom chat mode](https://code.visualstudio.com/docs/copilot/customization/custom-chat-modes)in GitHub Copilot. Use these steps to add the `LambdaToFunctionMigration` custom chat mode to your project in Visual Studio Code:
37
+
GitHub Copilot with Azure Skills has built-in support to guide migration from AWS Lambda to Azure Functions.
38
38
39
-
1. If you don't already have the [GitHub Copilot for Azure](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azure-github-copilot) Visual Studio Code extension, install it now.
39
+
You can use Copilot to automate most migration steps interactively, while using this article as your reference for architecture decisions, validation, and production readiness.
40
40
41
-
1. Open your Lambda project as a workspace in Visual Studio Code.
41
+
To use Azure Skills in GitHub Copilot (in VS Code or Copilot CLI), follow these steps:
42
42
43
-
1. Run this prompt in **Agent** mode in GitHub Copilot:
43
+
### Prerequisites
44
44
45
-
```copilot-prompt
46
-
Help me migrate my Lambda app to Azure
45
+
-**Node.js 18+** - required for MCP servers ([Download Node.js](https://nodejs.org/en/download/))
46
+
- Access to an **Azure subscription** for creating and testing your migrated function app.
You should see the azure MCP server listed and running.
48
70
49
-
1. When prompted in the notification area, select **Install** to add the `LambdaToFunctionMigration` custom chat mode to your project.
50
-
51
-
You can now use guided prompts defined in this custom chat for each stage of your migration. Start typing `/LambdaMigration` in chat to see the complete list of available commands.
71
+
### For Visual Studio Code
52
72
53
-
### Compare functionality
73
+
1.[Install the Azure MCP extension](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azure-mcp-server) from the VS Code Marketplace (Extension ID: `ms-azuretools.vscode-azure-mcp-server`).
74
+
2. The extension auto-installs a companion extension, GitHub Copilot for Azure, which contains the Azure skills.
75
+
3. Open Copilot Chat (Ctrl+Shift+I / Cmd+Shift+I).
76
+
4. Make sure you're in Agent mode (not Ask or Edit mode).
77
+
5. Open the Command Palette (Ctrl+Shift+P) -> search "MCP" -> verify servers are listed and running.
78
+
79
+
Use this prompt to start and continue the migration workflow in Copilot:
80
+
81
+
```copilot-prompt
82
+
Help me migrate my Lambda app to Azure Functions
83
+
```
84
+
85
+
This prompt guides the migration in phases: first generating a detailed assessment report, then migrating code and configuration, and finally building the required infrastructure-as-code (IaC) assets for deployment to Azure.
86
+
87
+
## Compare functionality
54
88
55
89
This article maps AWS Lambda features to Azure Functions equivalents to help ensure compatibility.
56
90
@@ -77,13 +111,6 @@ The first step is to conduct a detailed discovery process to evaluate your exist
77
111
- Cost of ownership
78
112
- Performance targets and current performance
79
113
80
-
> [!TIP]
81
-
> Use this custom chat mode prompt to generate an assessment report for your AWS Lambda setup:
82
-
>
83
-
> ```copilot-prompt
84
-
> /LambdaMigration-Phase1-AssessLambdaProject
85
-
> ```
86
-
87
114
## Perform premigration planning
88
115
89
116
Before you start migrating your workload, you must map AWS Lambda features to Azure Functions to ensure compatibility and develop a migration plan. Then you can select key workloads for a proof of concept.
@@ -262,26 +289,13 @@ The following tables compare AWS Lambda concepts, resources, and properties with
262
289
263
290
1. Test iteratively and gather feedback.
264
291
265
-
> [!TIP]
266
-
> Use this custom chat mode prompt to check the current status of the migration process at any time:
267
-
>
268
-
> ```copilot-prompt
269
-
> /LambdaMigration-GetStatus
270
-
> ```
271
-
272
292
Use the proof of concept to gather feedback, identify gaps, and fine-tune the process before you scale to larger workloads. This iterative approach ensures that by the time you move to full-scale migration, you address potential challenges and refine the process.
273
293
274
294
## Build the migration assets
275
295
276
296
This step is a transitional development phase. During this phase, you build source code, infrastructure as code (IaC) templates, and deployment pipelines to represent the workload in Azure. You must adapt function code for compatibility and best practices before you can perform the migration.
277
297
278
298
-[Adapt function code, configuration files, and infrastructure as code files](#adapt-function-code-configuration-files-and-infrastructure-as-code-files)
279
-
> [!TIP]
280
-
> Use this custom chat mode prompt to start the code migration process:
-[Use tools for refactoring](#use-tools-for-refactoring)
@@ -614,13 +628,6 @@ Deployments follow a single path. After you build your project code and zip it i
614
628
615
629
- Use tools like Bicep, Azure Resource Manager templates, or Terraform to create IaC files to deploy Azure resources.
616
630
617
-
> [!TIP]
618
-
> Use this custom chat mode prompt to generate infrastructure as code (IaC) files for Azure Functions:
619
-
>
620
-
> ```copilot-prompt
621
-
> /LambdaMigration-Phase3-GenerateFunctionsInfra
622
-
> ```
623
-
624
631
- Define resources such as Azure Functions, storage accounts, and networking components in your IaC files.
625
632
626
633
- Use this [IaC samples repository](https://github.com/Azure-Samples/azure-functions-flex-consumption-samples/tree/main/IaC) for samples that use Azure Functions recommendations and best practices.
@@ -629,9 +636,6 @@ Deployments follow a single path. After you build your project code and zip it i
629
636
630
637
Use tools like GitHub Copilot in VS Code for help with code refactoring, manual refactoring for specific changes, or other migration aids.
631
638
632
-
> [!NOTE]
633
-
> Use *Agent mode* in GitHub Copilot in VS Code.
634
-
635
639
The following articles provide specific examples and detailed steps to facilitate the migration process:
636
640
637
641
-[Azure for AWS professionals](/azure/architecture/aws-professional)
@@ -647,13 +651,6 @@ Develop failover and failback strategies for your migration and thoroughly test
647
651
648
652
- Test each function thoroughly to ensure that it works as expected. These tests should include input/output, event triggers, and bindings verification.
649
653
650
-
> [!TIP]
651
-
> Use this custom chat mode prompt to validate the migrated Azure Functions code:
652
-
>
653
-
> ```copilot-prompt
654
-
> /LambdaMigration-Phase4-ValidateCode
655
-
> ```
656
-
657
654
- Use tools like curl or [REST Client](https://marketplace.visualstudio.com/items?itemName=humao.rest-client) extensions on VS Code to send HTTP requests for HTTP-triggered functions.
658
655
659
656
- For other triggers, such as timers or queues, ensure that the triggers fire correctly and the functions run as expected.
@@ -663,13 +660,6 @@ Develop failover and failback strategies for your migration and thoroughly test
663
660
- Conduct performance testing to compare the new Azure Functions deployment with the previous AWS Lambda deployment.
664
661
665
662
- Monitor metrics like response time, run time, and resource consumption.
666
-
667
-
> [!TIP]
668
-
> Use this custom chat mode prompt to validate the infrastructure configuration:
669
-
>
670
-
> ```copilot-prompt
671
-
> /LambdaMigration-Phase5-ValidateInfra
672
-
> ```
673
663
674
664
- Use Application Insights for [monitoring, log analysis, and troubleshooting](/azure/azure-functions/functions-monitoring) during the testing phase.
675
665
@@ -685,13 +675,6 @@ Deploy and test functions to validate their performance and correctness.
685
675
686
676
### Deploy to Azure
687
677
688
-
> [!TIP]
689
-
> Use this custom chat mode prompt to deploy the validated project to Azure:
690
-
>
691
-
> ```copilot-prompt
692
-
> /LambdaMigration-Phase6-DeployToAzure
693
-
> ```
694
-
695
678
Deploy workloads by using the [VS Code](/azure/azure-functions/functions-develop-vs-code#publish-to-azure) publish feature. You can also deploy workloads from the command line by using [Azure Functions Core Tools](/azure/azure-functions/functions-run-local#project-file-deployment) or the [Azure CLI](/cli/azure/functionapp/deployment/source#az-functionapp-deployment-source-config-zip). [Azure DevOps](/azure/azure-functions/functions-how-to-azure-devops#deploy-your-app) and [GitHub Actions](/azure/azure-functions/functions-how-to-github-actions) also use One Deploy.
696
679
697
680
- Azure Functions Core Tools: [Deploy your function app](/azure/azure-functions/flex-consumption-how-to#deploy-your-code-project) by using [Azure Functions Core Tools](/azure/azure-functions/functions-run-local) with the `func azure functionapp publish <FunctionAppName>` command.
Copy file name to clipboardExpand all lines: articles/cost-management-billing/reservations/reservation-renew.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ ms.author: primittal
13
13
14
14
# Automatically renew reservations
15
15
16
-
You can renew reservations to automatically purchase a replacement when an existing reservation expires. Automatic renewal provides an easy way to continue getting reservation discounts. It also saves you from having to closely monitor a reservation's expiration. With automatic renewal, you prevent savings benefits loss by not having to manually renew. *The renewal setting is turned on by default* when you make a purchase. You can manually turn off the renewal setting at the time of purchase. After purchase, you can enable or disable the renewal setting anytime by selecting your reservation at Azure portal>Reservations, up to the expiration of the existing reservation. *When auto-renew is enabled, you have to manually turn it off to stop automatic renewal*.
16
+
You can renew reservations to automatically purchase a replacement when an existing reservation expires. Automatic renewal provides an easy way to continue getting reservation discounts. It also saves you from having to closely monitor a reservation's expiration. With automatic renewal, you prevent savings benefits loss by not having to manually renew. *The renewal setting is turned on by default* when you make a purchase. You can manually turn off the renewal setting at the time of purchase. After purchase, you can enable or disable the renewal setting 48 hours before the expiry date time by selecting your reservation at Azure portal>Reservations, up to the expiration of the existing reservation. *When auto-renew is enabled, you have to manually turn it off to stop automatic renewal*.
17
17
18
18
The renewal price is available 30 days before the expiry of existing reservation. You can view the current rates and discounts by selecting your reservation at Azure portal>Reservations. When you enable renewal more than 30 days before the reservation expiration, you're sent an email detailing renewal costs before expiration. The reservation price might change between the time that you lock the renewal price and the renewal time. If so, your renewal will not be processed and you can purchase a new reservation in order to continue getting the benefit.
> When you use the `requestContext().identity` function, the policy engine marks the policy as `NotApplicable` for compliance evaluation/scans. As a result, compliance results for that policy show as `NotApplicable`, but enforcement of effects such as `Deny`, `DeployIfNotExists`, and `Modify` still occurs at request time.
675
+
676
+
672
677
- `policy()`
673
678
- Returns the following information about the policy that is being evaluated. Properties can be accessed from the returned object (example: `[policy().assignmentId]`).
0 commit comments