오류 해결: "Azure Functions 런타임에 연결할 수 없습니다."Troubleshoot error: "Azure Functions Runtime is unreachable"

이 문서는 Azure Portal에 표시 되는 다음과 같은 오류 문자열의 문제를 해결 하는 데 도움이 됩니다.This article helps you troubleshoot the following error string that appears in the Azure portal:

"오류: Azure Functions 런타임에 연결할 수 없습니다."Error: Azure Functions Runtime is unreachable. 저장소 구성에 대 한 자세한 내용을 보려면 여기를 클릭 하십시오. "Click here for details on storage configuration."

Azure Functions 런타임를 시작할 수 없는 경우이 문제가 발생 합니다.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. 자세한 내용은 Storage 계정 요구 사항을 참조 하세요.For more information, see Storage account requirements.

이 문서의 나머지 부분에서는 각 사례를 식별 하 고 해결 하는 방법을 비롯 하 여이 오류의 다음 원인을 해결 하는 데 도움이 됩니다.The rest of this article helps you troubleshoot the following causes of this error, including how to identify and resolve each case.

저장소 계정이 삭제 됨Storage account was deleted

모든 함수 앱은 스토리지 계정이 있어야 작동합니다.Every function app requires a storage account to operate. 해당 계정이 삭제 되 면 함수가 작동 하지 않습니다.If that account is deleted, your function won't work.

응용 프로그램 설정에서 저장소 계정 이름을 조회 하 여 시작 합니다.Start by looking up your storage account name in your application settings. AzureWebJobsStorage 또는 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING에는 연결 문자열에서 래핑된 저장소 계정의 이름이 포함 됩니다.Either AzureWebJobsStorage or WEBSITE_CONTENTAZUREFILECONNECTIONSTRING contains the name of your storage account wrapped up in a connection string. 자세한 내용은 Azure Functions에 대 한 앱 설정 참조를 참조 하세요.For more information, see App settings reference for Azure Functions.

Azure Portal에서 저장소 계정을 검색 하 여 여전히 존재 하는지 확인 합니다.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.

저장소 계정 응용 프로그램 설정이 삭제 되었습니다.Storage account application settings were deleted

이전 단계에서 저장소 계정 연결 문자열을 찾을 수 없는 경우 삭제 되거나 덮어쓴 것일 수 있습니다.In the preceding step, if you can't find a storage account connection string, it was likely deleted or overwritten. 응용 프로그램 설정을 삭제 하는 것은 응용 프로그램 설정을 설정 하기 위해 배포 슬롯 또는 Azure Resource Manager 스크립트를 사용 하는 경우 가장 일반적으로 발생 합니다.Deleting application settings most commonly happens when you're using deployment slots or Azure Resource Manager scripts to set application settings.

필수 애플리케이션 설정Required application settings

자세한 내용은 Azure Functions에 대 한 앱 설정 참조를 참조 하세요.For more information, see App settings reference for Azure Functions.

지침Guidance

  • 이러한 설정에 대해 "슬롯 설정"을 선택 하지 마세요.Don't check "slot setting" for any of these settings. 배포 슬롯을 교환 하는 경우 함수 앱이 중단 됩니다.If you swap deployment slots, the function app breaks.
  • 이러한 설정은 자동 배포의 일부로 수정 하지 마십시오.Don't modify these settings as part of automated deployments.
  • 이러한 설정은 생성 시에 제공되어야 하며 유효한 상태여야 합니다.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.

저장소 계정 자격 증명이 잘못 되었습니다.Storage account credentials are invalid

저장소 키를 다시 생성 하는 경우 앞에서 설명한 저장소 계정 연결 문자열을 업데이트 해야 합니다.The previously discussed storage account connection strings must be updated if you regenerate storage keys. 저장소 키 관리에 대 한 자세한 내용은 Azure Storage 계정 만들기를 참조 하세요.For more information about storage key management, see Create an Azure Storage account.

저장소 계정에 액세스할 수 없습니다.Storage account is inaccessible

함수 앱은 저장소 계정에 액세스할 수 있어야 합니다.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:

  • 함수 앱은 저장소 계정에 대 한 트래픽을 허용 하는 올바른 네트워크 규칙 없이 App Service Environment에 배포 됩니다.The function app is deployed to your App Service Environment without the correct network rules to allow traffic to and from the storage account.

  • 저장소 계정 방화벽이 사용 하도록 설정 되어 있고 기능에서 들어오고 나가는 트래픽을 허용 하도록 구성 되어 있지 않습니다.The storage account firewall is enabled and not configured to allow traffic to and from functions. 자세한 내용은 Azure Storage 방화벽 및 가상 네트워크 구성을 참조하세요.For more information, see Configure Azure Storage firewalls and virtual networks.

일일 실행 할당량이 꽉 찼습니다.Daily execution quota is full

매일 실행 할당량이 구성 된 경우 함수 앱을 일시적으로 사용 하지 않도록 설정 하 여 많은 포털 컨트롤을 사용할 수 없게 됩니다.If you have a daily execution quota configured, your function app is temporarily disabled, which causes many of the portal controls to become unavailable.

Azure Portal의 할당량을 확인 하려면 함수 앱에서 플랫폼 기능 > 함수 앱 설정 을 선택 합니다.To verify the quota in the Azure portal, 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:

"함수 앱가 일일 사용 할당량에 도달 하 여 다음 24 시간 프레임까지 중지 되었습니다.""The Function App has reached daily usage quota and has been stopped until the next 24 hours time frame."

이 문제를 해결 하려면 일일 할당량을 제거 하거나 늘리고 앱을 다시 시작 합니다.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.

앱이 방화벽 뒤에 있습니다.App is behind a firewall

다음 이유 중 하나로 인해 함수 런타임에 접근할 수 없습니다.Your function runtime might be unreachable for either of the following reasons:

Azure Portal는 실행 중인 앱을 직접 호출 하 여 함수 목록을 가져오고 Kudu 끝점에 대 한 HTTP 호출을 수행 합니다.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.

App Service Environment 구성을 확인 하려면:To verify your App Service Environment configuration:

  1. App Service Environment 있는 서브넷의 NSG (네트워크 보안 그룹)로 이동 합니다.Go to the network security group (NSG) of the subnet where the App Service Environment resides.
  2. 인바운드 규칙의 유효성을 검사 하 여 응용 프로그램에 액세스 하는 컴퓨터의 공용 IP에서 들어오는 트래픽을 허용 합니다.Validate the inbound rules to allow traffic that's coming from the public IP of the computer where you're accessing the application.

앱을 실행 하는 가상 네트워크에 연결 된 컴퓨터 또는 가상 네트워크에서 실행 되는 가상 컴퓨터에서 포털을 사용할 수도 있습니다.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.

인바운드 규칙 구성에 대 한 자세한 내용은 App Service Environment에 대 한 네트워킹 고려 사항의 "네트워크 보안 그룹" 섹션을 참조 하세요.For more information about inbound rule configuration, see the "Network Security Groups" section of Networking considerations for an App Service Environment.

다음 단계Next steps

함수 앱 모니터링에 대해 알아봅니다.Learn about monitoring your function apps: