Skip to content

Commit ecfd4f5

Browse files
committed
test formatting and edits
1 parent c93b77c commit ecfd4f5

File tree

2 files changed

+38
-30
lines changed

2 files changed

+38
-30
lines changed

articles/azure-functions/migration/lambda-functions-migration-assess.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ The following tables compare AWS Lambda concepts, resources, and properties with
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

articles/azure-functions/migration/lambda-functions-migration-migrate.md

Lines changed: 37 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -104,22 +104,28 @@ The following snippets are examples of common SDK code. The AWS Lambda code maps
104104
|---|---|
105105
| const AWS = require('aws-sdk'); const kinesis = new AWS.Kinesis(); exports.handler = async (event) => { const records = event.Records.map(record => Buffer.from(record.kinesis.data, 'base64').toString()); console.log('Kinesis records:', records); }; | import { app } from '@azure/functions'; app.eventHub('eventHubTrigger', { connection: 'EventHubConnection', eventHubName: 'my-event-hub', }, async (context, eventHubMessages) => { eventHubMessages.forEach(message => { context.log(`Event Hub message: ${message}`); }); }); |
106106

107-
Refer to these GitHub repositories for a comparison between [AWS Lambda code](https://github.com/MadhuraBharadwaj-MSFT/TestLambda), and its corresponding [Azure Functions code](https://github.com/MadhuraBharadwaj-MSFT/TestAzureFunction). For starter samples, infrastructure as code, and end to end samples for Azure Functions refer to this repository.
107+
See the following GitHub repositories to compare AWS Lambda code and Azure Functions code.
108108

109-
### Adjust Configuration Settings:
109+
- [AWS Lambda code](https://github.com/MadhuraBharadwaj-MSFT/TestLambda)
110110

111-
- Ensure your function's timeout and [memory](/azure/azure-functions/flex-consumption-how-to#configure-instance-memory) settings are compatible with Azure Functions. Configurable settings such as function timeouts are detailed in the [Azure Functions host.json configuration](/azure/azure-functions/functions-host-json).
112-
- Follow recommended best practices for configuring permissions, access, networking and deployment.
113-
114-
#### Configuring Permissions
111+
- [Azure Functions code](https://github.com/MadhuraBharadwaj-MSFT/TestAzureFunction)
112+
113+
- This repository also includes starter samples, infrastructure as code, and end-to-end samples for Azure Functions.
114+
115+
### Adjust configuration settings
116+
117+
Ensure that your function's time-out and [memory](/azure/azure-functions/flex-consumption-how-to#configure-instance-memory) settings are compatible with Azure Functions. For more information about configurable settings, see [host.json reference for Azure Functions](/azure/azure-functions/functions-host-json).
115118

116-
Follow best practices recommended in this document when setting up Permissions on your Function Apps. Refer to section 'Configure your Function app and storage account with managed identity’ in the document: [How to create a new secretless Function App using managed identity](https://eng.ms/docs/cloud-ai-platform/devdiv/serverless-paas-balam/serverless-paas-vikr/app-service-web-apps/app-service-team-documents/functionteamdocs/faqs/tutorial-secretless-mi)
119+
Follow the recommended best practices for permissions, access, networking, and deployment configurations.
120+
121+
#### Configure permissions
117122

123+
Follow best practices when you set up permissions on your function apps. For more information, see [Configure your function app and storage account with managed identity](https://eng.ms/docs/cloud-ai-platform/devdiv/serverless-paas-balam/serverless-paas-vikr/app-service-web-apps/app-service-team-documents/functionteamdocs/faqs/tutorial-secretless-mi#configure-your-function-app-and-storage-account-with-managed-identity).
118124

119125
**main.bicep**
120126

121127
```
122-
// User assigned managed identity to be used by the Function App to reach storage and service bus
128+
// User-assigned managed identity that the function app uses to reach Storage and Service Bus
123129
module processorUserAssignedIdentity './core/identity/userAssignedIdentity.bicep' = {
124130
name: 'processorUserAssignedIdentity'
125131
scope: rg
@@ -131,19 +137,19 @@ module processorUserAssignedIdentity './core/identity/userAssignedIdentity.bicep
131137
}
132138
```
133139

134-
See [userAssignedIdentity.bicep](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/core/identity/userAssignedIdentity.bicep)
140+
For more information, see [userAssignedIdentity.bicep](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/core/identity/userAssignedIdentity.bicep).
135141

136-
#### Configuring Network access
142+
#### Configure network access
137143

138-
Functions has support for [Virtual Network Integration](/azure/azure-functions/functions-networking-options#virtual-network-integration) which gives your function app access to resources in your virtual network. Once integrated, your app routes outbound traffic through the virtual network. This allows your app to access private endpoints or resources with rules allowing traffic from only select subnets. When the destination is an IP address outside of the virtual network, the source IP will still be sent from the one of the addresses listed in your app's properties, unless you've configured a NAT Gateway.
144+
Azure Functions supports [virtual network integration](/azure/azure-functions/functions-networking-options#virtual-network-integration), which gives your function app access to resources in your virtual network. After integration, your app routes outbound traffic through the virtual network. Then your app can access private endpoints or resources by using rules that only allow traffic from specific subnets. When the destination is an IP address outside of the virtual network, the source IP address sends from one of the addresses listed in your app's properties, unless you configured a NAT gateway.
139145

140-
When enabling [virtual network](/azure/azure-functions/flex-consumption-how-to#enable-virtual-network-integration) integration for your Function Apps,
141-
follow best practices recommended in this document [[KPI CODE] TSG for VNet Integration for Web Apps and Function Apps | App Service Team Documents](https://eng.ms/docs/cloud-ai-platform/devdiv/serverless-paas-balam/serverless-paas-vikr/app-service-web-apps/app-service-team-documents/functionteamdocs/faqs/tsg-vnet-integration)
146+
When you enable [virtual network integration](/azure/azure-functions/flex-consumption-how-to#enable-virtual-network-integration) for your function apps,
147+
follow the best practices in [TSG for virtual network integration for web apps and function apps](https://eng.ms/docs/cloud-ai-platform/devdiv/serverless-paas-balam/serverless-paas-vikr/app-service-web-apps/app-service-team-documents/functionteamdocs/faqs/tsg-vnet-integration).
142148

143149
**main.bicep**
144150

145151
```
146-
// Virtual Network & private endpoint
152+
// Virtual network and private endpoint
147153
module serviceVirtualNetwork 'app/vnet.bicep' = {
148154
name: 'serviceVirtualNetwork'
149155
scope: rg
@@ -167,31 +173,33 @@ module servicePrivateEndpoint 'app/storage-PrivateEndpoint.bicep' = {
167173
}
168174
```
169175

170-
See [VNet.bicep](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/app/vnet.bicep)
171-
See [Storage-PrivateEndpoint](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/app/storage-PrivateEndpoint.bicep)
176+
For more information, see [VNet.bicep](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/app/vnet.bicep) and [storage-PrivateEndpoint.bicep](https://github.com/Azure-Samples/functions-quickstart-javascript-azd/blob/main/infra/app/storage-PrivateEndpoint.bicep)
172177

173-
#### Configuring Deployment Settings
178+
#### Configure deployment settings
174179

175-
Deployments follow a single path. After your project code is built and zipped into an application package, it is deployed to a blob storage container. On startup, your app gets the package and runs your function code from this package. By default, the same storage account used to store internal host metadata (AzureWebJobsStorage) is also used as the deployment container. However, you can use an alternative storage account or choose your preferred authentication method by configuring your app's deployment settings. [Learn](/azure/azure-functions/functions-deployment-technologies#one-deploy) how deployment works in Functions, and [configure deployment settings](/azure/azure-functions/flex-consumption-how-to#configure-deployment-settings).
180+
Deployments follow a single path. After you build your project code and zip it into an application package, deploy it to a blob storage container. When it starts, your app gets the package and runs your function code from it. By default, the same storage account that stores internal host metadata (AzureWebJobsStorage) also serves as the deployment container. However, you can use an alternative storage account or choose your preferred authentication method by configuring your app's deployment settings. For more information, see [Deployment technology details](/azure/azure-functions/functions-deployment-technologies#deployment-technology-details) and [Configure deployment settings](/azure/azure-functions/flex-consumption-how-to#configure-deployment-settings).
176181

177-
### Generate Infrastructure as Code (IaC) files
182+
### Generate IaC files
178183

179-
- Use tools like Bicep, Azure Resource Manager (ARM) templates, or Terraform to create IaC files for deploying Azure resources.
184+
- Use tools like Bicep, Azure Resource Manager templates, or Terraform to create IaC files to deploy Azure resources.
180185
- Define resources such as Azure Functions, storage accounts, and networking components in your IaC files.
181-
- Use [this repository](https://github.com/Azure-Samples/azure-functions-flex-consumption-samples/tree/main/IaC) for IaC samples that use Azure Functions recommendations and best practices.
186+
- 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.
187+
188+
### Use tools for refactoring
189+
190+
Use tools like GitHub Copilot in Visual Studio Code for help with code refactoring, manual refactoring for specific changes, or other migration aids.
191+
192+
For more information about each of these steps, see:
182193

183-
### Use Tools for Refactoring
194+
- [Azure for AWS professionals](/azure/architecture/aws-professional)
184195

185-
- Employ tools like GitHub Copilot in VSCode for assistance in refactoring code, manual refactoring for specific changes, or other migration aids.
196+
- [Code and test Azure Functions locally](/azure/azure-functions/functions-develop-local)
186197

187-
If you need more detailed information on each of these steps, please visit the following resources:
188-
- [Compare AWS and Azure compute services](/azure/architecture/aws-professional)
189-
- [Develop Azure Functions locally](/azure/azure-functions/functions-develop-local)
190-
- [Run Azure Functions locally](/azure/azure-functions/functions-run-local)
198+
- [Develop Azure Functions locally by using Core Tools](/azure/azure-functions/functions-run-local)
191199

192200
These resources provide specific examples and detailed steps to facilitate the migration process.
193201

194-
## Deploy and Test
202+
## Deploy and test the application
195203

196204
### Deploy to Azure
197205

@@ -208,7 +216,7 @@ Deploy with the [Visual Studio Code](/azure/azure-functions/functions-develop-vs
208216

209217
- Validate Functionality
210218
- Test each function thoroughly to ensure it works as expected. This includes verifying input/output, event triggers, and bindings.
211-
- Use tools like curl or [REST Client](https://marketplace.visualstudio.com/items?itemName=humao.rest-client) extension on VSCode to send HTTP requests for HTTP-triggered functions.
219+
- Use tools like curl or [REST Client](https://marketplace.visualstudio.com/items?itemName=humao.rest-client) extension on VS Code to send HTTP requests for HTTP-triggered functions.
212220
- For other triggers, such as timers or queues, ensure the triggers fire correctly and the functions execute as expected.
213221

214222
- Validate Performance

0 commit comments

Comments
 (0)