Skip to content

Commit 3130fa5

Browse files
authored
Merge pull request #102250 from itechedit/functions-recover-storage-account
edit pass: functions-recover-storage-account
2 parents a6e02ee + b03f650 commit 3130fa5

File tree

1 file changed

+40
-38
lines changed

1 file changed

+40
-38
lines changed

articles/azure-functions/functions-recover-storage-account.md

Lines changed: 40 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: How to troubleshoot Azure Functions Runtime is unreachable.
2+
title: 'Troubleshoot error: Azure Functions Runtime is unreachable'
33
description: Learn how to troubleshoot an invalid storage account.
44
author: alexkarcher-msft
55

@@ -8,83 +8,85 @@ ms.date: 09/05/2018
88
ms.author: alkarche
99
---
1010

11-
# How to troubleshoot "functions runtime is unreachable"
11+
# Troubleshoot error: "Azure Functions Runtime is unreachable"
1212

13-
This article is intended to troubleshoot the "functions runtime is unreachable" error message when it's displayed in the Azure portal. When this error occurs, you see the following error string displayed in the portal.
13+
This article helps you troubleshoot the following error string that appears in the Azure portal:
1414

15-
`Error: Azure Functions Runtime is unreachable. Click here for details on storage configuration`
15+
> "Error: Azure Functions Runtime is unreachable. Click here for details on storage configuration."
1616
17-
This occurs when the Azure Functions Runtime can't start. The most common reason for this error to occur is the function app losing access to its storage account. To learn more, see [Storage account requirements](storage-considerations.md#storage-account-requirements).
17+
This issue occurs when the Azure Functions Runtime can't start. The most common reason for the issue is that the function app has lost access to its storage account. For more information, see [Storage account requirements](https://docs.microsoft.com/azure/azure-functions/functions-create-function-app-portal#storage-account-requirements).
1818

1919
The rest of this article helps you troubleshoot the following causes of this error, including how to identify and resolve each case.
2020

21-
+ [Storage account deleted](#storage-account-deleted)
22-
+ [Storage account application settings deleted](#storage-account-application-settings-deleted)
23-
+ [Storage account credentials invalid](#storage-account-credentials-invalid)
24-
+ [Storage account inaccessible](#storage-account-inaccessible)
25-
+ [Daily execution quota exceeded](#daily-execution-quota-full)
26-
+ [Your app is behind a firewall](#app-is-behind-a-firewall)
21+
## Storage account was deleted
2722

23+
Every function app requires a storage account to operate. If that account is deleted, your function won't work.
2824

29-
## Storage account deleted
25+
Start by looking up your storage account name in your application settings. Either `AzureWebJobsStorage` or `WEBSITE_CONTENTAZUREFILECONNECTIONSTRING` contains the name of your storage account wrapped up in a connection string. For more information, see [App settings reference for Azure Functions](https://docs.microsoft.com/azure/azure-functions/functions-app-settings#azurewebjobsstorage).
3026

31-
Every function app requires a storage account to operate. If that account is deleted your Function will not work.
27+
Search for your storage account in the Azure portal to see whether it still exists. If it has been deleted, re-create the storage account and replace your storage connection strings. Your function code is lost, and you need to redeploy it.
3228

33-
### How to find your storage account
29+
## Storage account application settings were deleted
3430

35-
Start by looking up your storage account name in your Application Settings. Either `AzureWebJobsStorage` or `WEBSITE_CONTENTAZUREFILECONNECTIONSTRING` will contain the name of your storage account wrapped up in a connection string. Read more specifics at the [application setting reference here](https://docs.microsoft.com/azure/azure-functions/functions-app-settings#azurewebjobsstorage).
36-
37-
Search for your storage account in the Azure portal to see if it still exists. If it has been deleted, you will need to recreate a storage account and replace your storage connection strings. Your function code is lost and you will need to redeploy it again.
38-
39-
## Storage account application settings deleted
40-
41-
In the previous step, if you did not have a storage account connection string it was likely deleted or overwritten. Deleting app settings is most commonly done when using deployment slots or Azure Resource Manager scripts to set application settings.
31+
In the preceding step, if you can't find a storage account connection string, it was likely deleted or overwritten. Deleting application settings most commonly happens when you're using deployment slots or Azure Resource Manager scripts to set application settings.
4232

4333
### Required application settings
4434

45-
* Required
35+
* Required:
4636
* [`AzureWebJobsStorage`](https://docs.microsoft.com/azure/azure-functions/functions-app-settings#azurewebjobsstorage)
47-
* Required for Consumption Plan Functions
37+
* Required for consumption plan functions:
4838
* [`WEBSITE_CONTENTAZUREFILECONNECTIONSTRING`](https://docs.microsoft.com/azure/azure-functions/functions-app-settings)
4939
* [`WEBSITE_CONTENTSHARE`](https://docs.microsoft.com/azure/azure-functions/functions-app-settings)
5040

51-
[Read about these application settings here](https://docs.microsoft.com/azure/azure-functions/functions-app-settings).
41+
For more information, see [App settings reference for Azure Functions](https://docs.microsoft.com/azure/azure-functions/functions-app-settings).
5242

5343
### Guidance
5444

55-
* Don't check "slot setting" for any of these settings. When you swap deployment slots the function app breaks.
45+
* Don't check "slot setting" for any of these settings. If you swap deployment slots, the function app breaks.
5646
* Don't modify these settings as part of automated deployments.
5747
* These settings must be provided and valid at creation time. An automated deployment that doesn't contain these settings results in a function app that won't run, even if the settings are added later.
5848

59-
## Storage account credentials invalid
49+
## Storage account credentials are invalid
6050

61-
The above Storage Account connection strings must be updated if you regenerate storage keys. [Read more about storage key management here](https://docs.microsoft.com/azure/storage/common/storage-create-storage-account).
51+
The previously discussed storage account connection strings must be updated if you regenerate storage keys. For more information about storage key management, see [Create an Azure Storage account](https://docs.microsoft.com/azure/storage/common/storage-create-storage-account).
6252

63-
## Storage account inaccessible
53+
## Storage account is inaccessible
6454

65-
Your function app must be able to access the storage account. Common issues that block a Functions access to a storage account are:
55+
Your function app must be able to access the storage account. Common issues that block a function app's access to a storage account are:
6656

67-
+ function apps deployed to App Service Environments (ASE) without the correct network rules to allow traffic to and from the storage account.
57+
* The function app is deployed to your App Service Environment without the correct network rules to allow traffic to and from the storage account.
6858

69-
+ The storage account firewall is enabled and not configured to allow traffic to and from functions. To learn more, see [Configure Azure Storage firewalls and virtual networks](../storage/common/storage-network-security.md).
59+
* The storage account firewall is enabled and not configured to allow traffic to and from functions. For more information, see [Configure Azure Storage firewalls and virtual networks](https://docs.microsoft.com/azure/storage/common/storage-network-security?toc=%2fazure%2fstorage%2ffiles%2ftoc.json).
7060

71-
## Daily execution quota full
61+
## Daily execution quota is full
7262

7363
If you have a daily execution quota configured, your function app is temporarily disabled, which causes many of the portal controls to become unavailable.
7464

75-
+ To verify in the [Azure portal](https://portal.azure.com), open **Platform Features** > **Function App Settings** in your function app. When you're over the **Daily Usage Quota** you set, you'll see the following message:
65+
To verify the quota in the [Azure portal](https://portal.azure.com), select **Platform Features** > **Function App Settings** in your function app. If you're over the **Daily Usage Quota** you've set, the following message is displayed:
7666

77-
`The function app has reached daily usage quota and has been stopped until the next 24 hours time frame.`
67+
> "The Function App has reached daily usage quota and has been stopped until the next 24 hours time frame."
7868
79-
+ To resolve this issue, remove or increase the daily quota and restart your app. Otherwise, execution of your app is blocked until the next day.
69+
To resolve this issue, remove or increase the daily quota, and then restart your app. Otherwise, the execution of your app is blocked until the next day.
8070

8171
## App is behind a firewall
8272

83-
Your function runtime will be unreachable if your function app is hosted in an [internally load balanced App Service Environment](../app-service/environment/create-ilb-ase.md) and is configured to block inbound internet traffic, or has [inbound IP restrictions](functions-networking-options.md#inbound-ip-restrictions) configured to block internet access. The Azure portal makes calls directly to the running app to fetch the list of functions and also makes HTTP calls to KUDU endpoint. Platform level settings under the `Platform Features` tab will still be available.
73+
Your function runtime might be unreachable for either of the following reasons:
74+
75+
* Your function app is hosted in an [internally load balanced App Service Environment](../app-service/environment/create-ilb-ase.md) and it's configured to block inbound internet traffic.
76+
77+
* Your function app has [inbound IP restrictions](functions-networking-options.md#inbound-ip-restrictions) that are configured to block internet access.
78+
79+
The Azure portal makes calls directly to the running app to fetch the list of functions, and it makes HTTP calls to the Kudu endpoint. Platform-level settings under the **Platform Features** tab are still available.
80+
81+
To verify your App Service Environment configuration:
82+
1. Go to the network security group (NSG) of the subnet where the App Service Environment resides.
83+
1. Validate the inbound rules to allow traffic that's coming from the public IP of the computer where you're accessing the application.
84+
85+
You can also use the portal from a computer that's connected to the virtual network that's running your app or to a virtual machine that's running in your virtual network.
8486

85-
To verify your ASE configuration, navigate to the NSG of the subnet where ASE resides and validate inbound rules to allow traffic coming from the public IP of the computer where you are accessing the application. You can also use the portal from a computer connected to the virtual network running your app or a virtual machine running in your virtual network. [Read more about inbound rule configuration here](../app-service/environment/network-info.md#network-security-groups)
87+
For more information about inbound rule configuration, see the "Network Security Groups" section of [Networking considerations for an App Service Environment](https://docs.microsoft.com/azure/app-service/environment/network-info#network-security-groups).
8688

87-
## Next Steps
89+
## Next steps
8890

8991
Learn about monitoring your function apps:
9092

0 commit comments

Comments
 (0)