Поделиться через


Устранение проблем при создании, удалении или восстановлении приложений-функций Azure

В этой статье перечислены некоторые распространенные проблемы, которые могут возникнуть при создании, удалении или восстановлении приложений-функций Azure, а также о действиях по устранению проблем.

Создание приложений-функций

Приложения-функции Azure используют инфраструктуру Службы приложений Azure. Вы можете создать приложение-функцию Azure с помощью:

Вы также можете создать приложение при развертывании проекта функции из Visual Studio или Visual Studio Code.

Рекомендации по учетной записи служба хранилища Azure, используемой Функции Azure

При создании приложения-функции необходимо создать или привязать учетную запись хранения Azure общего назначения, поддерживающую хранилища BLOB-объектов, очередей и таблиц. Для внутренних операций, таких как управление триггерами и ведение журнала выполнения функций, Функции Azure используют службу хранилища Azure. Дополнительные сведения см. в статье Рекомендации по хранению для Функций Azure.

  • Убедитесь в том, что у вас есть разрешения на создание учетной записи хранения и других ресурсов. Правила управления доступом на основе ролей (RBAC), политики и области не должны нарушаться.
  • Используйте управляемое удостоверение в строке подключения к учетной записи хранения Azure (только для AzureWebJobsStorage). Дополнительные сведения см. в разделе Подключение к хранилищу узла с помощью удостоверения (предварительная версия).

Защита учетной записи служба хранилища Azure, используемой Функции Azure

Вы можете создать приложение-функцию Azure и новую учетную запись хранения, защищенную частными конечными точками. Размещение приложения-функции в плане поддержки интеграции виртуальной сети.

Перенос приложения-функции Azure в разных планах размещения

В Windows можно использовать команды Azure CLI для переноса приложения-функции между планом "Потребление " и планом "Премиум" или наоборот. Подробнее см. в статье Планирование миграции.

  • Прямая миграция между выделенным планом Службы приложений и планами "Потребление" или "Премиум" не поддерживается, так как функциональные возможности масштабирования на основе событий и бессерверных служб в этих планах размещения различаются.

Примечание.

Linux не поддерживает перенос планов размещения.

Ознакомьтесь с предлагаемыми планами размещения ("Потребление", "Премиум", "Выделенный"), включая возможности подключения виртуальных сетей, тайм-ауты, выставление счетов и так далее. Дополнительные сведения см. в разделе Варианты размещения Функций Azure.

Устраните ошибку "Этот регион имеет квоту 0 экземпляров для подписки. Попробуйте выбрать другой регион или SKU"

Если у вас постоянно возникают проблемы с созданием ресурсов в определенном регионе, попробуйте создать ресурс в географическом регионе, если это позволит вашей организации. Например, парными являются регионы Западная часть США 2 и Центрально-западная часть США. Восточная Азия (Гонконг САР) и Юго-Восточная Азия (Сингапур) также являются парными регионами.

Дополнительные сведения см. в разделе:

Устранение ошибки "Ценовая категория не разрешена в этой группе ресурсов" или "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). Уровень зависит от типа подписки и плана размещения. Дополнительные сведения см. в разделе:

Примечание.

Если проблема нечасто, дождитесь и повторите попытку через некоторое время, чтобы узнать, устранена ли проблема. Если проблема возникает часто, вы можете приобрести другую подписку или обновить план размещения, чтобы устранить ошибку.

Удаление или восстановление приложений-функций

После публикации кода из Visual Studio и использования WEBSITE_RUN_FROM_PACKAGEпортал Azure задает функции только для чтения, чтобы предотвратить редактирование предварительно скомпилированных ресурсов на портале. Чтобы удалить функции в приложении-функции, удалите нежелательные функции из кода, включите параметр "Удалить дополнительные файлы" в параметрах назначения и повторно разверните код.

Восстановление приложений-функций Azure, размещенных в плане потребления или плане Elastic Premium, не поддерживается. Если у вас есть содержимое приложения-функции или вы можете получить доступ к учетной записи хранения, обновите параметры приложения или создайте новое приложение-функцию и используйте его. Вы можете восстановить приложения-функции Azure в плане службы выделенных приложений, если он не использует Файлы Azure для хранилища содержимого.

Дополнительные сведения см. в записи блога Восстановление (отмена удаления) удаленных веб-приложений.

Убедитесь, что у вас есть достаточные разрешения для удаления приложения-функции Azure. Правила управления доступом на основе ролей (RBAC), политики и области не должны нарушаться.

Сбор данных перед обращением в службу поддержки Майкрософт

Если создание или удаление приложения-функции завершается сбоем, соберите и поделитесь следующими данными при создании запроса в службу поддержки:

  • портал Azure. Воспроизвести проблему и записать трассировку браузера.

  • Azure CLI или Azure PowerShell: поделитесь командой, сообщающей об ошибке и подробном ведении журнала.

  • Для сбоев развертывания Azure Resource Manager найдите сообщение об ошибке в портал Azure:

    1. Выберите Группа ресурсов>Развертывания.
    2. Предоставление общего доступа к идентификатору корреляции неудачной задачи.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.