Skip to content

Commit 04b8a3d

Browse files
committed
updated info for working with storage
1 parent b55d906 commit 04b8a3d

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

articles/azure-functions/configure-networking-how-to.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ Set up a secured storage account for your function app:
6868

6969
* [Create a private endpoint](../storage/common/storage-private-endpoints.md#creating-a-private-endpoint). As you set up your private endpoint connection, create private endpoints for the `file` and `blob` subresources. For Durable Functions, you must also make `queue` and `table` subresources accessible through private endpoints. If you're using a custom or on-premises Domain Name System (DNS) server, [configure your DNS server](../storage/common/storage-private-endpoints.md#dns-changes-for-private-endpoints) to resolve to the new private endpoints.
7070

71-
* [Restrict traffic to specific subnets](../storage/common/storage-network-security.md#grant-access-from-a-virtual-network). Ensure your function app is network integrated with an allowed subnet and that the subnet has a service endpoint to `Microsoft.Storage`.
71+
* [Restrict traffic to specific subnets](../storage/common/storage-network-security.md#grant-access-from-a-virtual-network). Ensure your function app is network integrated with an allowed subnet and that the subnet has a service endpoint to `Microsoft.Storage`. If your app is in a different region than your virtual network, use `Microsoft.Storage.Global` instead. Note, a storage account cannot have both.
7272

7373
1. Copy the file and blob content from the current storage account used by the function app to the newly secured storage account and file share. [AzCopy](../storage/common/storage-use-azcopy-blobs-copy.md) and [Azure Storage Explorer](https://techcommunity.microsoft.com/t5/azure-developer-community-blog/azure-tips-and-tricks-how-to-move-azure-storage-blobs-between/ba-p/3545304) are common methods. If you use Azure Storage Explorer, you might need to allow your client IP address access to your storage account's firewall.
7474

@@ -88,7 +88,7 @@ You're now ready to route your function app's traffic to go through the virtual
8888

8989
1. In the new page, under **Application routing**, select **Outbound internet traffic**.
9090

91-
1. Enable [content share routing](../app-service/overview-vnet-integration.md#content-share) to enable your function app to communicate with your new storage account through its virtual network. In the same page as the previous step, under **Configuration routing**, select **Content storage**.
91+
1. If you're using an Azure Files connection, enable [content share routing](../app-service/overview-vnet-integration.md#content-share) to enable your function app to communicate with Azure Files through its virtual network. In the same page as the previous step, under **Configuration routing**, select **Content storage**.
9292

9393
[!INCLUDE [functions-content-over-vnet-shared-storage-note](../../includes/functions-content-over-vnet-shared-storage-note.md)]
9494

@@ -102,12 +102,10 @@ Finally, you need to update your application settings to point to the new secure
102102
| Setting name | Value | Comment |
103103
|----|----|----|
104104
| [`AzureWebJobsStorage`](./functions-app-settings.md#azurewebjobsstorage)| Storage connection string | Use the connection string for your new secured storage account, which you saved earlier. |
105-
| [`WEBSITE_CONTENTAZUREFILECONNECTIONSTRING`](./functions-app-settings.md#website_contentazurefileconnectionstring) | Storage connection string | Use the connection string for your new secured storage account, which you saved earlier. |
106-
| [`WEBSITE_CONTENTSHARE`](./functions-app-settings.md#website_contentshare) | File share | Use the name of the file share created in the secured storage account where the project deployment files reside. |
105+
| [`WEBSITE_CONTENTAZUREFILECONNECTIONSTRING`](./functions-app-settings.md#website_contentazurefileconnectionstring) | Storage connection string | Use the connection string for your new secured storage account, which you saved earlier. Only relevant if your app is using Azure Files. |
106+
| [`WEBSITE_CONTENTSHARE`](./functions-app-settings.md#website_contentshare) | File share | Use the name of the file share created in the secured storage account where the project deployment files reside. Only relevant if your app is using Azure Files. |
107107

108-
1. Select **Apply**, and then **Confirm** to save the new application settings in the function app.
109-
110-
The function app restarts.
108+
1. Select **Apply**, and then **Confirm** to save the new application settings in the function app. This will cause the function app to restart.
111109

112110
After the function app finishes restarting, it connects to the secured storage account.
113111

articles/azure-functions/storage-considerations.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ Creating your function app resources using methods other than the Azure CLI requ
166166

167167
## Create an app without Azure Files
168168

169-
The Azure Files service provides a shared file system that supports high-scale scenarios. When your function app runs on Windows in an Elastic Premium or Consumption plan, an Azure Files share is created by default in your storage account. That share is used by Functions to enable certain features, like log streaming. It is also used as a shared package deployment location, which guarantees the consistency of your deployed function code across all instances.
169+
The Azure Files service provides a shared file system that supports high-scale scenarios. When your function app runs in an Elastic Premium or Windows Consumption plan, an Azure Files share is created by default in your storage account. That share is used by Functions to enable certain features, like log streaming. It is also used as a shared package deployment location, which guarantees the consistency of your deployed function code across all instances.
170170

171171
By default, function apps hosted in Premium and Consumption plans use [zip deployment](./deployment-zip-push.md), with deployment packages stored in this Azure file share. This section is only relevant to these hosting plans.
172172

@@ -180,11 +180,18 @@ To run your app without the Azure file share, you must meet the following requir
180180
* You must [deploy your package to a remote Azure Blob storage container](./run-functions-from-deployment-package.md) and then set the URL that provides access to that package as the [`WEBSITE_RUN_FROM_PACKAGE`](functions-app-settings.md#website_run_from_package) app setting. This option lets you store your app content in Blob storage instead of Azure Files, which does support [managed identities](./run-functions-from-deployment-package.md#fetch-a-package-from-azure-blob-storage-using-a-managed-identity).
181181

182182
You are responsible for manually updating the deployment package and maintaining the deployment package URL, which likely contains a shared access signature (SAS).
183-
* Your app can't rely on a shared writeable file system.
183+
184+
You should also note the following considerations:
185+
184186
* The app can't use version 1.x of the Functions runtime.
187+
* Your app can't rely on a shared writeable file system.
188+
* Portal editing will not work.
185189
* Log streaming experiences in clients such as the Azure portal default to file system logs. You should instead rely on Application Insights logs.
186190

187-
If the above requirements suit your scenario, you can proceed to create a function app without Azure Files. You can do this by creating an app without the `WEBSITE_CONTENTAZUREFILECONNECTIONSTRING` and `WEBSITE_CONTENTSHARE` app settings. To get started, generate an ARM template for a standard deployment, remove the two settings, and then deploy the modified template.
191+
If the above requirements suit your scenario, you can proceed to create a function app without Azure Files. You can do this by creating an app without the `WEBSITE_CONTENTAZUREFILECONNECTIONSTRING` and `WEBSITE_CONTENTSHARE` app settings.
192+
193+
- If you are creating function apps via ARM templates: remove the two app settings and then deploy the modified template.
194+
- If you are creating function apps in the Azure portal: unselect the "Add an Azure Files connection" checkbox in the Storage tab.
188195

189196
Since Azure Files is used to enable dynamic scale-out for Functions, scaling could be limited when running your app without Azure Files in the Elastic Premium plan and Consumption plans running on Windows.
190197

0 commit comments

Comments
 (0)