Skip to content

Commit b21218b

Browse files
committed
edits
1 parent d3a0ac8 commit b21218b

File tree

5 files changed

+49
-21
lines changed

5 files changed

+49
-21
lines changed

articles/azure-functions/TOC.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -590,13 +590,13 @@
590590
- name: Migrate AWS Lambda to Azure Functions
591591
items:
592592
- name: Overview
593-
href: /migration/aws-lambda-azure-functions-migration-overview.md
593+
href: migration/lambda-functions-migration-overview.md
594594
- name: Discover
595-
href: /migration/aws-lambda-azure-functions-migration-discover.md
595+
href: migration/lambda-functions-migration-discover.md
596596
- name: Assess
597-
href: /migration/aws-lambda-azure-functions-migration-assess.md
597+
href: migration/lambda-functions-migration-assess.md
598598
- name: Migrate
599-
href: /migration/aws-lambda-azure-functions-migration-migrate.md
599+
href: migration/lambda-functions-migration-migrate.md
600600
- name: Migrate .NET apps to the isolated model
601601
href: migrate-dotnet-to-isolated-model.md
602602
- name: Migrate v3.x to v4.x

articles/azure-functions/migration/aws-lambda-azure-functions-migration-assess.md renamed to articles/azure-functions/migration/lambda-functions-migration-assess.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ The following tables compare AWS Lambda concepts, resources, and properties with
6666
| AWS Lambda | Azure Functions |
6767
|---|---|
6868
| The Lambda execution role grants Lambda functions permissions to interact with other AWS services. Each Lambda function has an associated identity and access management (IAM) role that determines its permissions while it runs. | Managed identities provide an identity for your function app that allows it to authenticate with other Azure services without storing credentials in the code. Role-based access control assigns appropriate roles to the managed identity in Microsoft Entra ID to grant access to the resources it requires. |
69-
| Resource-based policy statements: <br> - AWSLambda_FullAccess gives full access to all Lambda operations, including creating, updating, and deleting functions. <br> - AWSLambda_ReadOnlyAccess fgives read-only access to view Lambda functions and their configurations <br> - Custom IAM policies | Resource-based built-in roles: <br> - The Owner role gives full access, including access permissions management. <br> - The Contributor role can create and delete function apps, configure settings, and deploy code. It can't manage access. <br> - The Monitoring Reader role can grant read-only access to monitoring data and settings. It can also allocate custom roles. |
69+
| Resource-based policy statements: <br> - AWSLambda_FullAccess gives full access to all Lambda operations, including creating, updating, and deleting functions. <br> - AWSLambda_ReadOnlyAccess gives read-only access to view Lambda functions and their configurations <br> - Custom IAM policies | Resource-based built-in roles: <br> - The Owner role gives full access, including access permissions management. <br> - The Contributor role can create and delete function apps, configure settings, and deploy code. It can't manage access. <br> - The Monitoring Reader role can grant read-only access to monitoring data and settings. It can also allocate custom roles. |
7070

7171
### Function URL
7272

@@ -99,26 +99,26 @@ The following tables compare AWS Lambda concepts, resources, and properties with
9999

100100
| AWS Lambda | Azure Functions |
101101
|---|---|
102-
| Provisioned concurrency reduces latency and ensures predictable function performance by pre-initializing a requested number of function instances. Provisioned concurrency suits latency-sensitive applications and is priced separately from standard concurrency. | Function apps allow you to configure concurrency for each instance, which drives its scale. Multiple jobs can run in parallel in the same instance of the app, and subsequent jobs in the instance don't incur the initial cold start. Function apps also have *always ready* instances. Customers can specify a number of pre-warmed instances to eliminate cold-start latency and ensure consistent performance. Function apps also scale out to additional instances based on demand, while maintaining the always ready instances. |
102+
| Provisioned concurrency reduces latency and ensures predictable function performance by pre-initializing a requested number of function instances. Provisioned concurrency suits latency-sensitive applications and is priced separately from standard concurrency. | Function apps allow you to configure concurrency for each instance, which drives its scale. Multiple jobs can run in parallel in the same instance of the app, and subsequent jobs in the instance don't incur the initial cold start. Function apps also have *always ready* instances. Customers can specify a number of prewarmed instances to eliminate cold-start latency and ensure consistent performance. Function apps also scale out to more instances based on demand, while maintaining the always ready instances. |
103103
| Reserved concurrency specifies the maximum number of concurrent instances a function can have. This limit ensures that a portion of your account's concurrency quota is set aside exclusively for that function. AWS Lambda dynamically scales out to handle incoming requests even when reserved concurrency is set, as long as the requests don't exceed the specified reserved concurrency limit. The lower limit for reserved concurrency in AWS Lambda is 1. The upper limit for reserved concurrency in AWS Lambda is determined by the account's regional concurrency quota. By default, this limit is 1,000 concurrent executions for each region. | Azure Functions doesn't have an equivalent feature to reserved concurrency. To achieve similar functionality, isolate specific functions into separate function apps and set the maximum scale-out limit for each app. Azure Functions dynamically scales out, or adds more instances, and scales in, or removes instances, within the scale-out limit set. By default, apps that run in a Flex Consumption plan start with a configurable limit of 100 overall instances. The lowest maximum instance count value is 40, and the highest supported maximum instance count value is 1,000. [Regional subscription memory quotas](/azure/azure-functions/flex-consumption-plan#regional-subscription-memory-quotas) can also limit how much function apps can scale out, but you can increase this quota by calling support. |
104104

105105
### Pricing
106106

107107
| AWS Lambda | Azure Functions |
108108
|---|---|
109-
| - Pay per use for the total execution count and for the GB/s for each instance (with a fixed concurrency of 1) <br> - 1 ms increments <br> - 400K Gb/s free tier | - Pay per use for the total execution count and for the GB/s of each instance (with configurable concurrent executions) <br> - 100 ms increments <br> - 100K Gb/s free tier <br> - [Consumption-based costs](/azure/azure-functions/functions-consumption-costs#consumption-based-costs) |
109+
| - Pay per use for the total execution count and for the GB/s for each instance (with a fixed concurrency of 1) <br> - 1 ms increments <br> - 400,000 Gb/s free tier | - Pay per use for the total execution count and for the GB/s of each instance (with configurable concurrent executions) <br> - 100 ms increments <br> - 100,000 Gb/s free tier <br> - [Consumption-based costs](/azure/azure-functions/functions-consumption-costs#consumption-based-costs) |
110110

111111
### Source code storage
112112

113113
| AWS Lambda | Azure Functions |
114114
|---|---|
115-
| AWS Lambda manages the storage of your function code in its own managed storage system. You don't need to supply additional storage. | Functions requires a customer-supplied Blob Storage container to maintain the deployment package that contains your app's code. You can configure the settings to use the same or a different storage account for deployments and manage authentication methods for accessing the container. |
115+
| AWS Lambda manages the storage of your function code in its own managed storage system. You don't need to supply more storage. | Functions requires a customer-supplied Blob Storage container to maintain the deployment package that contains your app's code. You can configure the settings to use the same or a different storage account for deployments and manage authentication methods for accessing the container. |
116116

117117
### Local development
118118

119119
| AWS Lambda feature | Azure Functions feature |
120120
|---|---|
121-
| - SAM CLI <br> - [LocalStack](https://github.com/localstack/localstack) | Azure Functions core tools <br> - Visual Studio Code <br> - Visual Studio <br> - GitHub Codespaces <br> - VSCode.dev <br> - Maven <br> - [Code and test Azure Functions locally](/azure/azure-functions/functions-develop-local) |
121+
| - SAM CLI <br> - [LocalStack](https://github.com/localstack/localstack) | - Azure Functions core tools <br> - Visual Studio Code <br> - Visual Studio <br> - GitHub Codespaces <br> - VSCode.dev <br> - Maven <br> - [Code and test Azure Functions locally](/azure/azure-functions/functions-develop-local) |
122122

123123
### Deployment
124124

@@ -136,8 +136,8 @@ The following tables compare AWS Lambda concepts, resources, and properties with
136136

137137
| Feature | AWS Lambda limits | Azure Functions limits |
138138
|---|---|---|
139-
| Execution timeout | 900 seconds (15 minutes) | The default time-out is 30 minutes. The maximum time-out is unbounded. However, the grace period given to a function execution is 60 minutes during scale-in and 10 minutes during platform updates. For more information, see [Function app time-out duration](/azure/azure-functions/functions-scale#timeout). |
140-
| Configurable memory | 128 MB to 10,240 MB, in 64 MB increments | Functions supports [2 GB and 4 GB](/azure/azure-functions/functions-scale#service-limits) instance sizes. Each region in a given subscription has a memory limit of 512,000 MB for all instances of apps, which you can increase by calling support. The total memory usage of all instances across all function apps in a region must stay within this quota. Although 2 GB and 4 GB are the options for instance sizes right now, it's important to note that the concurrency for each instance can be higher than 1. Therefore, a single instance can handle multiple concurrent executions, depending on the configuration. Configuring concurrency appropriately can help optimize resource utilization and manage performance. By balancing memory allocation and concurrency settings, you can effectively manage the resources allocated to your function apps and ensure efficient performance and cost control. For more information, see [Regional subscription memory quotas](/azure/azure-functions/flex-consumption-plan#regional-subscription-memory-quotas). |
139+
| Execution time-out | 900 seconds (15 minutes) | The default time-out is 30 minutes. The maximum time-out is unbounded. However, the grace period given to a function execution is 60 minutes during scale-in and 10 minutes during platform updates. For more information, see [Function app time-out duration](/azure/azure-functions/functions-scale#timeout). |
140+
| Configurable memory | 128 MB to 10,240 MB, in 64-MB increments | Functions supports [2-GB and 4-GB](/azure/azure-functions/functions-scale#service-limits) instance sizes. Each region in a given subscription has a memory limit of 512,000 MB for all instances of apps, which you can increase by calling support. The total memory usage of all instances across all function apps in a region must stay within this quota. Although 2 GB and 4 GB are the instance size options right now, it's important to note that the concurrency for each instance can be higher than 1. Therefore, a single instance can handle multiple concurrent executions, depending on the configuration. Configuring concurrency appropriately can help optimize resource utilization and manage performance. By balancing memory allocation and concurrency settings, you can effectively manage the resources allocated to your function apps and ensure efficient performance and cost control. For more information, see [Regional subscription memory quotas](/azure/azure-functions/flex-consumption-plan#regional-subscription-memory-quotas). |
141141

142142
### Secret management
143143

@@ -170,7 +170,7 @@ The following tables compare AWS Lambda concepts, resources, and properties with
170170

171171
- Select key workloads for a proof of concept.
172172

173-
Start by selecting one to two medium-sized, non-critical workloads from your total inventory. These workloads serve as the foundation for your proof-of-concept migration. You can test the process and identify potential challenges without risking major disruption to your operations.
173+
Start by selecting one to two medium-sized, noncritical workloads from your total inventory. These workloads serve as the foundation for your proof-of-concept migration. You can test the process and identify potential challenges without risking major disruption to your operations.
174174

175175
- Test iteratively and gather feedback.
176176

@@ -181,4 +181,4 @@ By the end of this stage, you have mapped AWS Lambda features and services to th
181181
## Next step
182182

183183
> [!div class="nextstepaction"]
184-
> [Migrate stage](aws-lambda-azure-functions-migration-migrate.md)
184+
> [Migrate stage](lambda-functions-migration-migrate.md)

articles/azure-functions/migration/aws-lambda-azure-functions-migration-discover.md renamed to articles/azure-functions/migration/lambda-functions-migration-discover.md

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Discover workloads to migrate from AWS Lambda to Azure Functions
2+
title: Discover Workloads to Migrate from AWS Lambda to Azure Functions
33
description: Learn how to conduct a detailed discovery process to inventory current AWS Lambda workloads, including their configuration, dependencies, and usage patterns.
44
author: MadhuraBharadwaj-MSFT
55
ms.author: mabhar
@@ -18,34 +18,60 @@ In this stage, you conduct a detailed discovery process to evaluate existing AWS
1818
Compile a comprehensive inventory of your AWS Lambda functions by using familiar AWS tooling like service-specific SDKs, APIs, and CloudTrail to assess the workloads on AWS. You should understand the following key aspects of your inventory:
1919

2020
- Use cases
21+
2122
- Identify the primary business or technical purposes that each Lambda function serves.
23+
2224
- Categorize functions based on their use cases, such as event-driven workflows, data processing, real-time analytics, or API back ends.
2325

2426
- Configuration
27+
2528
- Document configuration settings for each function, including memory allocation, time-out settings, and environment variables.
29+
2630
- Note versioning details, aliases, and any deployment-specific configurations, such as language runtime and architectures like x86 or ARM.
2731

2832
- Security and networking setup
33+
2934
- Assess the identity and access management roles and policies associated with each function to ensure proper access control.
35+
3036
- Identify virtual private cloud configurations, including subnets, security groups, and NAT gateway dependencies, if applicable.
3137

3238
- Tooling
39+
3340
- List the continuous integration and continuous delivery tools and deployment frameworks that each function uses, such as AWS SAM, Serverless Framework, or custom pipelines.
41+
3442
- Document build and packaging tools, including testing frameworks and staging workflows.
3543

3644
- Monitoring, logging, and observability mechanisms
45+
3746
- Evaluate the current monitoring and logging mechanisms, such as Amazon CloudWatch, AWS X-Ray, or partner tools.
47+
3848
- Identify log retention policies and patterns for troubleshooting.
49+
3950
- Document tracked metrics and alerts, such as error rates, invocation counts, and duration trends.
4051

4152
- Dependencies
42-
- Determine which AWS services, like DynamoDB, S3, or API Gateway, and partner tools that your Lambda functions rely on. Document their configurations, interactions, and data flows.
43-
- Map interdependencies, such as shared resources or invocation chains, between Lambda functions and evaluate potential bottlenecks or latency problems.
53+
54+
- Determine which AWS services, like DynamoDB, S3, or API Gateway, and partner tools that your Lambda functions rely on. Document their configurations, interactions, and dataflows.
55+
56+
- Map interdependencies, such as shared resources or invocation chains, between Lambda functions, and evaluate potential bottlenecks or latency problems.
57+
4458
- Assess service limits, operational considerations, and monitoring tools like CloudWatch and X-Ray. Ensure that you understand how these dependencies affect the workload.
4559

46-
By the end of this stage, you should have a comprehensive inventory of your AWS Lambda functions, including their use cases, configurations, security and networking setups, tooling, monitoring, logging, and observability mechanisms, and dependencies. This detailed inventory is the foundation for the next stage, where you assess the readiness and suitability of these functions for migration to Azure Functions.
60+
By the end of this stage, you should have a comprehensive inventory of your AWS Lambda functions, including their:
61+
62+
- Use cases.
63+
64+
- Configurations.
65+
66+
- Security and networking setups.
67+
68+
- Tooling, monitoring, logging, and observability mechanisms.
69+
70+
- Dependencies.
71+
72+
This detailed inventory is the foundation for the next stage, where you assess the readiness and suitability of these functions for migration to Azure Functions.
4773

4874
## Next step
4975

5076
> [!div class="nextstepaction"]
51-
> [Assess stage](aws-lambda-azure-functions-migration-assess.md)
77+
> [Assess stage](lambda-functions-migration-assess.md)

0 commit comments

Comments
 (0)