Lambda регулировалась при использовании Lambda Execution Role для настройки функции Lambda
Я использую API GATEWAY с Lambda для своего приложения. В одной из моих функций я неожиданно получаю 502 с этой ошибкой:
{"Сообщение": "Лямбда была ограничена при использовании Роли Лямбда-выполнения для настройки функции Лямбда.", "Тип": "Пользователь"}
Я проверил онлайн и не нашел ничего связанного с этой ошибкой.
Я проверил свои ConcurrentExecutions и не превысил лимит.
Мои лямбды используют VPC в каждой лямбде, и, может быть, есть связь?
Будем рады любой помощи. Спасибо
1 ответ
Чтобы включить функцию Lambda для доступа к ресурсам внутри вашего частного VPC, вы должны предоставить дополнительную информацию о конфигурации VPC, которая включает идентификаторы подсети VPC и идентификаторы групп безопасности.
AWS Lambda использует эту информацию для настройкипоследних сетевых интерфейсов (ENI), которые позволяют вашей функции безопасно подключаться к другим ресурсам в вашем частном VPC.
Если ваш VPC не имеет достаточного количества ENI или IP-адресов подсети, ваша лямбда-функция не будет масштабироваться по мере увеличения количества запросов, и вы увидите увеличение количества ошибок вызова с такими типами ошибок EC2, как EC2ThrottledException.
один из вариантов избежать этого исключения: вы можете указать несколько подсетей в каждой из зон доступности, ваша лямбда-функция может работать в другой зоне доступности, если одна из них выходит из строя или исчерпывает IP-адреса.
Эта ошибка означает, что ваш запрос был ограничен скоростью EC2 при подключении к вашему VPC.
Согласно лямбда-документации
"Поскольку Lambda зависит от Amazon EC2 в предоставлении эластичных сетевых интерфейсов для функций Lambda с поддержкой VPC, эти функции также подвержены ограничениям скорости Amazon EC2 по мере их масштабирования. Если ваши ограничения скорости Amazon EC2 не позволяют функциям с поддержкой VPC добавлять 500 одновременных вызовов в минуту, пожалуйста, запросите увеличение лимита, следуя инструкциям на странице AWS Lambda Limits.
Помимо этой скорости (т. Е. Для приложений, использующих преимущества полного немедленного увеличения параллелизма), ваше приложение должно обрабатывать регулирование Amazon EC2 (502 EC2ThrottledException) посредством повторных попыток и отката на стороне клиента. Дополнительные сведения см. В разделах "Повторение ошибок и экспоненциальный откат в AWS".
Ссылка: https://docs.aws.amazon.com/lambda/latest/dg/scaling.html