У меня есть некоторые лямбда-функции в VPC, некоторым из них для работы нужен Интернет, поэтому я добавил экземпляр NAT (t2.micro), и проблема в том, что у меня некоторые функции иногда работают, а иногда и таймаут. Например, функция, которая вызывает FB API 80% времени, работает и 20% времени ожидания. Другая функция использует boto3 для создания спотового экземпляра 50% тайм-аута, и журналы дают мне.
2018-07-16T06: 35: 55.909Z 421f98dd-88c2-11e8-913a-63c8d6f276f3 Время ожидания задачи истекло через 100,10 секунды
Всякий раз, когда я повторно развертываю бессерверный проект, я сталкиваюсь с этой проблемой.
Я увеличил предел времени ожидания и объем памяти, но у меня та же проблема. Я уверен, что есть доступ к Интернету, но время ожидания некоторых лямбда-функций.
Как вы думаете, в чем проблема? Спасибо
извините за это, я отредактировал свой пост спасибо
Итак, ваша проблема в том, что он достигает предела тайм-аута лямбда, это правильно? Вы исследовали, что занимает время в функции? Например, вызывает ли внешнюю службу и ожидает ответа? Или это требует больших вычислений, отнимающих время? Если бы вы поэкспериментировали, увеличив тайм-аут до 5 минут, все ли они завершились правильно? Используете ли вы нужно для функций подключения к VPC, потому что альтернативой является нет, подключите их к VPC, и тогда они могут получить доступ в Интернет напрямую без экземпляра NAT.
Это также может произойти, если вы настроили функцию Lambda для работы в VPC а также в нескольких подсетях а также, в одной из подсетей неправильно настроена таблица маршрутов.
@ Michael-sqlbot большое спасибо, что это была моя ошибка
Моя проблема была такой же, как у @BacemMehri. Может быть, комментарий Майкла можно превратить в ответ
Благодаря @ Michael-sqlbot - я думаю, что мы обнаружили проблему с тайм-аутом / ошибкой, которая заключалась не в том, что таблица маршрутов нашей подсети была неправильно настроена, а в том, что у нас была только 1 подсеть NAT на лямбде. Мы добавили еще 2, следуя этой сути, и теперь можем работать без тайм-аута. gist.github.com/reggi/dc5f2620b7b4f515e68e46255ac042a7





У меня было это, когда я использую Lambda в VPC (и для этого есть шлюз NAT и Интернет-шлюз).
Я случайно выбрал все подсети (включая общедоступную) для запуска Lambda, тогда как у него будет доступ к Интернету только из частных подсетей.
Отмените выбор общедоступной подсети и сохраните, и вы должны решить свою проблему.
Вот ссылка на статью из базы знаний, которую я использовал - https://aws.amazon.com/premiumsupport/knowledge-center/internet-access-lambda-function/
Измените свой вопрос, указав больше подробностей, чем «функции не работают». Что содержится в журнале? Какие сообщения об ошибках вы получаете? Одни и те же функции постоянно работают / не работают, иногда они работают, а иногда нет? Пожалуйста, поподробнее!