Az Function Elastic Premium — среда выполнения функций Azure недоступна
У меня есть функция Azure, которую мне нужно запустить в плане Elastic Premium. После развертывания я вижу следующую ошибку:
Среда выполнения функций Azure недоступна
Я пытался решить эту проблему в соответствии с документацией Microsoft, но безуспешно.
Вот некоторые мысли о моих попытках:
Мы проверили, что учетная запись хранения создана
В подсети функции уже есть конечная точка службы для учетной записи хранения.
Интеграция с виртуальной сетью уже включена в функции, и она (подсеть) уже добавлена в брандмауэр хранилища.
В настройках Функции мы добавили необходимые свойства:
- WEBSITE_CONTENTAZUREFILECONNECTIONSTRING = создается динамически (строка подключения к учетной записи хранения)
- ВЕБ-САЙТ_CONTENTOVERVNET = 1
- WEBSITE_CONTENTSHARE = создано динамически
- ВЕБ-САЙТ_VNET_ROUTE_ALL = 1
Вот ссылка на документацию.
https://learn.microsoft.com/en-us/azure/azure-functions/functions-recover-storage-account
Все работало нормально, когда я использовал Premium (P1v2), и ошибка начинается, когда я перешел на Elastic (EP1).
Я развертываю его с помощью Terraform.
Вот пример кода TF, который мы используем для развертывания
2 ответа
При использовании функции с типом плана Elastic Premium с интеграцией виртуальной сети необходимо добавить еще одно свойство с именем vnet_route_all_enabled , чтобы включить исходящий маршрут из вашей функции Azure. Также вам необходимо сначала создать файл в своей учетной записи хранения, имя этого файла будет содержимым этой переменной WEBSITE_CONTENTSHARE в настройках вашего приложения. Ниже мое предложение кода:
Вы можете проверить этот документ, чтобы быть уверенным: https://learn.microsoft.com/en-us/azure/azure-functions/functions-create-vnet
Ниже моего кода предложения:
AFAIk, не существует какой-либо конкретной причины, по которой среда выполнения функции Azure недоступна. Пожалуйста, проверьте приведенный ниже обходной путь, чтобы решить вышеуказанную проблему.
Мы попытались создать функциональное приложение, используя премиальный план Elastic, и с нашей стороны оно отлично работает ,
- Убедитесь, что вы правильно настроили
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
значение такое же, какAzureWebJobsStorage
тогда попробуйSTOP/START
приложение функции.
- Также попробуйте установить
pre_warmed_instance_count=1 instead of 2
как указано в этой ДОКУМЕНТАЦИИ MICROSOFT:-
Количество предварительно прогретых экземпляров по умолчанию равно 1, и для большинства сценариев это значение должно оставаться равным 1.
Для получения дополнительной информации, пожалуйста, обратитесь к этой СТАТЬЕ |AZURE LESSONS — ВРЕМЯ ВЫПОЛНЕНИЯ ФУНКЦИЙ AZURE НЕДОСТУПНО .