Устранение проблем при создании, удалении или восстановлении приложений-функций Azure
В этой статье перечислены некоторые распространенные проблемы, которые могут возникнуть при создании, удалении или восстановлении приложений-функций Azure, а также о действиях по устранению проблем.
Создание приложений-функций
Приложения-функции Azure используют инфраструктуру Службы приложений Azure. Вы можете создать приложение-функцию Azure с помощью:
Вы также можете создать приложение при развертывании проекта функции из Visual Studio или Visual Studio Code.
Рекомендации по учетной записи служба хранилища Azure, используемой Функции Azure
При создании приложения-функции необходимо создать или привязать учетную запись хранения Azure общего назначения, поддерживающую хранилища BLOB-объектов, очередей и таблиц. Для внутренних операций, таких как управление триггерами и ведение журнала выполнения функций, Функции Azure используют службу хранилища Azure. Дополнительные сведения см. в статье Рекомендации по хранению для Функций Azure.
- Убедитесь в том, что у вас есть разрешения на создание учетной записи хранения и других ресурсов. Правила управления доступом на основе ролей (RBAC), политики и области не должны нарушаться.
- Используйте управляемое удостоверение в строке подключения к учетной записи хранения Azure (только для
AzureWebJobsStorage
). Дополнительные сведения см. в разделе Подключение к хранилищу узла с помощью удостоверения (предварительная версия).
Защита учетной записи служба хранилища Azure, используемой Функции Azure
Вы можете создать приложение-функцию Azure и новую учетную запись хранения, защищенную частными конечными точками. Размещение приложения-функции в плане поддержки интеграции виртуальной сети.
- Сведения о создании на портале см. в руководстве по сети.
- Чтобы использовать шаблоны Azure Resource Manager, перейдите по ссылке Azure/azure-quickstart-templates.
- Вы также можете обновить существующее приложение-функцию так, чтобы оно указывало на новую защищенную учетную запись хранения. Дополнительные сведения см. в разделе Ограничьте учетную запись хранения виртуальной сети.
Перенос приложения-функции Azure в разных планах размещения
В Windows можно использовать команды Azure CLI для переноса приложения-функции между планом "Потребление " и планом "Премиум" или наоборот. Подробнее см. в статье Планирование миграции.
- Прямая миграция между выделенным планом Службы приложений и планами "Потребление" или "Премиум" не поддерживается, так как функциональные возможности масштабирования на основе событий и бессерверных служб в этих планах размещения различаются.
Примечание.
Linux не поддерживает перенос планов размещения.
Ознакомьтесь с предлагаемыми планами размещения ("Потребление", "Премиум", "Выделенный"), включая возможности подключения виртуальных сетей, тайм-ауты, выставление счетов и так далее. Дополнительные сведения см. в разделе Варианты размещения Функций Azure.
Устраните ошибку "Этот регион имеет квоту 0 экземпляров для подписки. Попробуйте выбрать другой регион или SKU"
Если у вас постоянно возникают проблемы с созданием ресурсов в определенном регионе, попробуйте создать ресурс в географическом регионе, если это позволит вашей организации. Например, парными являются регионы Западная часть США 2 и Центрально-западная часть США. Восточная Азия (Гонконг САР) и Юго-Восточная Азия (Сингапур) также являются парными регионами.
Дополнительные сведения см. в разделе:
- Руководство по принятию решений по регионам Azure — Cloud Adoption Framework
- Репликация между регионами в Azure
Устранение ошибки "Ценовая категория не разрешена в этой группе ресурсов" или "SkuNotAllowedForResourceGroup"
Рекомендуется создать план в новой группе ресурсов. Для разных номеров SKU требуются уникальные компьютеры. Создаваемое в группе ресурсов приложение сопоставляется с пулом ресурсов и назначается ему. Если вы создаете в уже существующей группе ресурсов другой план, для которого сопоставленный пул не имеет необходимых ресурсов, возвращается ошибка.
Дополнительные сведения см. в разделе "Создание приложений-функций" в существующей группе ресурсов.
Создание общей папки содержимого приложения-функции завершается сбоем: "Удаленный сервер вернул ошибку: (403) Запрещено"
Для приложений-функций в плане потребления или плане Elastic Premium файловый ресурс создается в учетной записи хранения и ссылается на нее с помощью параметра WEBSITE_CONTENT_SHARE
приложения. Эта ошибка может возникать, так как у учетной записи хранения есть брандмауэр, частные конечные точки или другие ограничения безопасности виртуальной сети, такие как правила группы безопасности сети (NSG).
Чтобы устранить ошибку, заранее создайте общую папку в защищенной учетной записи хранения и задайте для нее значение WEBSITE_CONTENT_SHARE
. Дополнительные сведения см. в разделе Ограничьте учетную запись хранения виртуальной сети.
Альтернативные инструменты для создания
Вы можете использовать альтернативные инструменты, такие как Azure CLI, PowerShell и Az.Functions
. Обязательно используйте последние версии инструментов. Если при использовании одного из средств, таких как портал Azure, попробуйте использовать другой, например Azure CLI.
Указание версии среды выполнения функций для Windows и Linux
Для приложений Windows задайте версию среды выполнения в портал Azure (>версия параметров среды выполнения параметров>конфигурации конфигурации>) или создайте параметр FUNCTIONS_EXTENSION_VERSION
приложения и установите ее в основную версию среды выполнения, например ~4
целевую версию 4. Дополнительные сведения см. в статье Выбор целевых версий среды выполнения Функций Azure. Создайте закрепление к дополнительному номеру версии на основе выпусков узлов, присвоив параметру FUNCTIONS_EXTENSION_VERSION
значение дополнительной версии. См. также страницу Выпуски узла Функций Azure.
Сведения о приложениях для Linux см. в разделе Обновление версий вручную в Linux.
Устранение ошибок HTTP 429
Регулирование выполняется на двух уровнях: Azure Resource Manager и поставщик ресурсов (Microsoft.Web). Уровень зависит от типа подписки и плана размещения. Дополнительные сведения см. в разделе:
- Регулирование Azure Resource Manager
- Подписка Azure, границы, квоты и ограничения службы
- Ограничения служб приложение Azure
Примечание.
Если проблема нечасто, дождитесь и повторите попытку через некоторое время, чтобы узнать, устранена ли проблема. Если проблема возникает часто, вы можете приобрести другую подписку или обновить план размещения, чтобы устранить ошибку.
Удаление или восстановление приложений-функций
После публикации кода из Visual Studio и использования WEBSITE_RUN_FROM_PACKAGE
портал Azure задает функции только для чтения, чтобы предотвратить редактирование предварительно скомпилированных ресурсов на портале. Чтобы удалить функции в приложении-функции, удалите нежелательные функции из кода, включите параметр "Удалить дополнительные файлы" в параметрах назначения и повторно разверните код.
Восстановление приложений-функций Azure, размещенных в плане потребления или плане Elastic Premium, не поддерживается. Если у вас есть содержимое приложения-функции или вы можете получить доступ к учетной записи хранения, обновите параметры приложения или создайте новое приложение-функцию и используйте его. Вы можете восстановить приложения-функции Azure в плане службы выделенных приложений, если он не использует Файлы Azure для хранилища содержимого.
Дополнительные сведения см. в записи блога Восстановление (отмена удаления) удаленных веб-приложений.
Убедитесь, что у вас есть достаточные разрешения для удаления приложения-функции Azure. Правила управления доступом на основе ролей (RBAC), политики и области не должны нарушаться.
Сбор данных перед обращением в службу поддержки Майкрософт
Если создание или удаление приложения-функции завершается сбоем, соберите и поделитесь следующими данными при создании запроса в службу поддержки:
портал Azure. Воспроизвести проблему и записать трассировку браузера.
Azure CLI или Azure PowerShell: поделитесь командой, сообщающей об ошибке и подробном ведении журнала.
Для сбоев развертывания Azure Resource Manager найдите сообщение об ошибке в портал Azure:
- Выберите Группа ресурсов>Развертывания.
- Предоставление общего доступа к идентификатору корреляции неудачной задачи.
Свяжитесь с нами для получения помощи
Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.