AWS Lambda - доступ к Интернету через NAT-шлюз приводит к превышению времени ожидания - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть функция AWS Lambda, которая:

  • проверяет экземпляр Redis Elasticache,
  • если элемент не найден в кеше, переходит в сервис Google Places API.

Экземпляр Redis находится в частной подсети ; поэтому, чтобы получить его, я добавил VPC и подсеть, в которой находится экземпляр. Я также указал группу безопасности, которая разрешает весь исходящий трафик. Сетевой ACL является списком по умолчанию, который предназначен для всего входящего и исходящего трафика.

При добавлении VPC к лямбда-функции, подобной этой, через консоль, она запрашивает:

Когда вы включите VPC, ваша лямбда-функция потеряет доступ в Интернет по умолчанию. Если вам требуется внешний доступ в Интернет для вашей функции, убедитесь, что ваша группа безопасности разрешает исходящие соединения и что у вашего VPC есть шлюз NAT.

Итак, в Route Table частной подсети я также добавил NAT gateway. Однако в тот момент, когда из службы Lambda выполняется вызов службы Google Places API, он всегда обречен на тайм-аут.

Короче говоря, я сомневаюсь, что шлюз NAT правильно разрешает доступ в Интернет для функции Lambda. Как я могу проверить, что с ним не так?

Шлюзы NAT регистрируют вызовы или попытки вызова через него как-то в CloudWatch и т. Д.?

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

Требуются следующие шаги

  1. Роль IAM с полным разрешением VPC, назначенная вашей лямбда-функции.
  2. VPC с публичной и частной подсетями
  3. при создании шлюза NAT а) подсеть должна быть публичной подсетью б) Эластичный IP создал новый или выделил один
  4. Создайте таблицу маршрутов и добавьте еще один маршрут с целью в качестве нашего шлюза NAT, который мы создали выше. И ваша лямбда должна быть счастлива сейчас
0 голосов
/ 04 сентября 2018

Проблема для моего случая оказалась в том, что я создал NAT-шлюз в частной подсети.

Убедитесь, что вы размещаете шлюзы NAT в общедоступной подсети .

Кстати, в CloudWatch для шлюза NAT есть метрики, но нет записей прямой регистрации.

...