Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сводка
В этой статье рассматривается устранение проблем, вызванных ошибками "429 Too Many Requests" в кластерах Службы Kubernetes в Microsoft Azure (или в кластерах, использующих другую реализацию Kubernetes в Azure).
Симптомы
Вы получаете ошибки, похожие на следующий текст:
Служба вернула ошибку.
Status=429
Code="OperationNotAllowed"
Message="Сервер отклонил запрос, так как для этой подписки было получено слишком много запросов".
Details=[{
"code":"TooManyRequests",
"message":"{
\"operationGroup\":\"HighCostGetVMScaleSet30Min\",
\"startTime\":\"2026-05-20T07:13:55.2177346+00:00\",
\"endTime\":\"2026-05-20T07:28:55.2177346+00:00\",
\"разрешенноеКоличествоЗапросов\":1800,
\"число измеренных запросов\":2208
}",
"target":"HighCostGetVMScaleSet30Min"
}]InnerError={"internalErrorCode":"Слишком много запросов получено"}"
Причина: Чрезмерные объемы вызовов приводят к ограничению вашей подписки в Azure.
Кластер Kubernetes в Azure (с AKS или без AKS), который часто масштабируется вверх или вниз или использует автомасштабирование, может привести к большому объему HTTP-вызовов. Объем вызовов может привести к сбою, если он превышает назначенную квоту вашей подписки Azure.
Дополнительные сведения об этих ошибках см. в разделе Регулирование запросов Azure Resource Manager и устранение ошибок регулирования API. Сведения о том, как анализировать и определять причину этих ошибок и получать рекомендации по их устранению, см. в статье "Анализ и выявление ошибок с помощью AKS Диагностики и решения проблем".
Решение 1: Увеличьте интервал сканирования автомасштабировщика
Если вы обнаружите, что диагностические отчеты выявили регулирование, вызванное автоматическим масштабированием кластера, можно попытаться увеличить интервал сканирования автомасштабировщика, чтобы уменьшить количество вызовов, выполняемых автомасштабировщиком кластера, к масштабируемым наборам виртуальных машин (VMSS).
Решение 2. Перенастройка сторонних приложений для меньшего количества вызовов
При фильтрации по агентам пользователей в диагностике "Просмотр частоты запросов и сведений о регулировании" при поиске сторонних приложений (таких как приложения мониторинга), которые делают чрезмерное количество запросов GET, измените параметры этих приложений, чтобы уменьшить частоту вызовов GET. Кроме того, убедитесь, что клиенты приложений используют экспоненциальный откат при вызове API Azure.
Решение 3. Разделение кластеров на разные подписки или регионы
Если существует множество кластеров и пулов узлов, использующих масштабируемые наборы виртуальных машин, попробуйте разделить кластеры на разные подписки или регионы (в одной подписке). Большинство ограничений API Azure являются общими ограничениями на уровне региона подписки. Например, все кластеры и клиенты в субрегионе 1 и регионе "Восточная часть США" делят лимит для API GET наборов масштабируемых виртуальных машин. Таким образом, вы можете увеличить или перенести новые кластеры AKS в другом регионе и избавиться от ограничений API Azure. Этот метод помогает, если вы ожидаете высокой активности кластеров (например, если у вас включён активный автомасштабировщик кластеров). Это также помогает, если у вас много клиентов (таких как Ранчер, Terraform и т. д.). Так как все кластеры отличаются в их эластичности и количестве клиентов, опрошенных API Azure, нет универсальных рекомендаций по количеству кластеров, которые можно запускать на уровне региона подписки. Для конкретных рекомендаций можно создать запрос в службу поддержки.
Анализ и идентификация ошибок с помощью диагностики и устранения проблем AKS
Для кластера AKS можно использовать AKS Диагностику и решение проблем для анализа и выявления причины этих ошибок и получения рекомендаций по их устранению. Войдите на портал Azure и перейдите к вашему кластеру, затем выберите Диагностика и устранение проблем в левой области навигации, чтобы открыть AKS Диагностика и устранение проблем. Выполните поиск и откройте ограничение запросов ресурсов Azure, где можно получить отчет с рядом диагностик. Эта диагностика может показать, испытывает ли кластер ограничение скорости запросов (ответы 429) со стороны Azure Resource Manager (ARM) или поставщика ресурсов (RP) и определить источник этого ограничения. Например:
Обнаружено регулирование частоты запросов для вашего кластера: данная диагностика предоставляет некоторые общие рекомендации, если ограничение скорости запросов обнаружено в текущем кластере AKS.
Обнаружено ограничение автомасштабирования кластера: эта диагностика показывает, обнаружено ли ограничение и оно возникло из автомасштабирования кластера.
Чтобы уменьшить объем запросов от кластерного автомасштабировщика, используйте следующие методы:
- Увеличьте интервал сканирования автомасштабировщика, чтобы уменьшить количество вызовов от автомасштабировщика кластера к наборам масштабирования виртуальных машин. Этот метод может оказать негативное влияние на задержку и время, затрачиваемое на масштабирование вверх, поскольку автомасштабировщик кластера ожидает дольше, прежде чем обратиться к поставщику вычислительных ресурсов Azure (CRP) для приобретения новой виртуальной машины.
Регулирование — Azure Resource Manager: данная диагностика отражает количество ограниченных запросов в указанном диапазоне времени в кластере AKS.
Частота запросов — Azure Resource Manager: эта диагностика показывает общее количество запросов в указанном диапазоне времени в кластере AKS.
Просмотр сведений о частоте запросов и ограничениях. Это средство диагностики содержит несколько диаграмм для определения сведений об ограничениях, включая регулированные запросы и общее количество запросов. Вы также можете отфильтровать результаты с помощью следующих измерений:
- Хост: сервер, на котором обнаружены ответы HTTP 429. Регулирование Azure Resource Manager происходит из
management.azure.com; что-либо другое является поставщиком ресурсов более низкого уровня. - Агент пользователя: запросы с указанным агентом пользователя, которые ограничивались.
- Операция: операции, в которых зафиксированы ответы с кодом состояния HTTP 429.
- Хост: сервер, на котором обнаружены ответы HTTP 429. Регулирование Azure Resource Manager происходит из
Регулирование запросов может быть вызвано сочетанием нескольких кластеров в этой подписке, а не только скоростью запросов для одного кластера.
Пример 1. Регулирование автомасштабирования кластера
В этом примере рассматривается анализ замедления, вызванного автоскалированием кластера.
Если вы обнаружили регулирование запроса авто-масштабирования кластера в AKS Диагностика и решение проблем>Известные проблемы, доступность и производительность>Регулирование запроса ресурсов Azure, это указывает на то, что запросы, отправленные авто-масштабером кластера, были ограничены.
Вы можете найти количество запросов, для которых применена квота, и время, когда эти запросы ограничиваются, в диагностическом отчете Throttling - Azure Resource Manager.
Число всех запросов ARM можно найти в один и тот же период времени.
Чтобы найти данные о запросах и деталях ограничения, можно проверить диагностическую функцию Частота запросов и детали ограничения. Выберите 429s по агенту пользователя в раскрывающемся списке "Выбор фильтра", и вы увидите, что запросы автомасштабирования регулируются с 15:00 до 16:00.
Вы также можете найти общее количество ограниченных запросов для автоматического масштабирования кластера и других пользовательских агентов.
Можно также фильтровать регулирование по операциям. Операция удаления набора виртуальных машин VMSS ограничивается в данной ситуации.
Вы можете найти количество ограниченных запросов и всех запросов, сгруппированных по операциям.
Затем вы можете следовать рекомендациям в рекомендуемых действиях, чтобы уменьшить ограничение пропускной способности.
Пример 2. Ограничение поставщика облачных служб
В этом примере приводятся ограничения, вызванные поставщиком облачных служб. Часто возникают проблемы с эксплуатацией ресурсов в крупных кластерах, например, настройка балансировщика нагрузки Azure в кластере с более чем 500 узлами.
Если вы заметите ограничение в вашем кластере, вы сможете увидеть подробности об ограничении в диагностическом разделе Скорость запросов и сведения об ограничении. Выберите 429s по user-agent из раскрывающегося списка "Выбор фильтра", и вы увидите, что запросы поставщика облачных услуг ограничивались с 03:00 до 06:00.
Вы также можете отфильтровать по операциям, чтобы узнать, что ограниченная операция — "Network/loadBalancers/read".
Используйте балансировщик нагрузки на основе IP-адресов узлов, чтобы снизить это ограничение.