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


Устранение исключительной ситуации ConstrainedAllocationFailed при развертывании облачной службы (классической) в Azure

Внимание

Облачные службы (классическая версия) теперь устарела для всех клиентов с 1 сентября 2024 года. Все существующие запущенные развертывания будут остановлены и завершены корпорацией Майкрософт, и данные будут окончательно потеряны начиная с октября 2024 года. Для новых развертываний следует использовать Облачные службы Azure с расширенной поддержкой. Это новая модель развертывания на основе Azure Resource Manager.

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

Когда вы развертываете экземпляры в облачной службе (классической) или добавляете новые экземпляры веб-узлов или рабочих ролей, служба Microsoft Azure выделяет вычислительные ресурсы.

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

Совет

Эта информация также может быть полезна при планировании развертывания служб.

Симптом

На портале Azure перейдите к облачной службе (классической) и на боковой панели выберите элемент Журнал операций (классический), чтобы просмотреть журналы.

На рисунке показана колонка

При проверке журналов облачной службы (классической) вы увидите следующее исключение:

Тип исключения Сообщение об ошибке
ConstrainedAllocationFailed Операция Azure "{Operation ID}" завершилась ошибкой с кодом Compute.ConstrainedAllocationFailed. Сведения: произошла ошибка выделения памяти; не удалось установить соответствие ограничениям в запросе. Запрошенное новое развертывание службы привязано к группе affinity, или оно предназначено для виртуальная сеть или существующего развертывания в этой размещенной службе. Любое из этих условий ограничивает новое развертывание использованием определенных ресурсов Azure. Повторите попытку позже или попробуйте уменьшить размер виртуальной машины или количество экземпляров ролей. Кроме того, при возможности удалите ограничения или попробуйте развернуть в другом регионе.

Причина

Когда первый экземпляр развертывается в облачной службе (в тестовой или рабочей области), эта облачная служба прикрепляется к кластеру.

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

Решение

Существующие облачные службы прикреплены к кластеру. Любые дальнейшие развертывания облачной службы (классической) происходят в одном кластере.

При возникновении ошибки выделения в этом сценарии рекомендуется выполнить повторное развертывание в новой облачной службе (классической) и обновить запись CNAME.

Совет

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

Примечание.

В этом случае время простоя должно быть нулевым.

  1. Разверните рабочую нагрузку в новой облачной службе (классической).

    Предупреждение

    Если вы не хотите терять IP-адрес, связанный с этим слотом развертывания, можно использовать Решение 3 — сохранить IP-адрес.

  2. Обновите запись CNAME или A таким образом, чтобы она направляла трафик в новую облачную службу (классическую).

  3. После того как трафик, направляемый на старый сайт, станет нулевым, старую облачную службу (классическую) можно будет удалить.

Дальнейшие действия по исправлению см. в разделе Устранение неполадок выделения облачной службы (классической) | Документация Майкрософт.

Следующие шаги

Дополнительные способы устранения сбоев при выделении и справочные данные см. в следующих статьях:

Если проблема Azure не устранена в этой статье, посетите форумы Azure в сети разработчиков Майкрософт (MSDN) и Stack Overflow. Вы можете опубликовать свой вопрос на этих форумах или опубликовать @AzureSupport на X. Вы также можете отправить запрос поддержка Azure. Чтобы отправить такой запрос, на странице поддержки Azure щелкните Получить поддержку.