Как настроить VPC, который позволяет Lambdas общаться друг с другом и RDS? - PullRequest
0 голосов
/ 15 декабря 2018

Итак, я разрабатывал проект в .NET Core с AWS, который представляет собой довольно простое веб-приложение, выполняющее грубые операции с базой данных.В настоящее время я застрял, так как не могу заставить лямбду вызывать другую лямбду в пределах того же VPC, и в то же время разрешаю обеим лямбдам доступ к одному и тому же экземпляру RDS.

VPC_A = 3 подсети, все связанные с таблицами маршрутизации вigw RDS = связан со всеми 3 подсетями, упомянутыми выше в VPC_A Lambda_A = связан с VPC_A и всеми 3 подсетями, способен подключаться к RDS, но НЕ Lambda_B Lambda_B = связан с VPC_A и всеми 3 подсетями, способен подключаться к RDS

Я пытаюсь, чтобы Lambda_A вызывал Lambda_B, но обе лямбды нуждаются в доступе к экземпляру RDS.

Если я правильно понимаю проблему, при попытке лямбды вызвать другую лямбду с помощью AmazonLambdaClient соединение не удаетсяпоскольку он не может выйти из частной сети виртуального частного процессора.

Я предполагаю, что мой вопрос сводится к тому, как бы выглядела сеть в AWS, которая позволяла бы лямбдам на одном и том же VPC общаться друг с другом, а такжеЭкземпляр RDS.

1 Ответ

0 голосов
/ 15 декабря 2018

Лямбда-функции не общаются напрямую друг с другом.

Когда одна функция Lambda вызывает другую функцию Lambda, это делается путем обращения к API службы Lambda через Интернет.

Это означает, что для доступа необходим шлюз NAT.Без этого функции Lambda внутри VPC не имеют доступа к чему-либо в Интернете, включая API службы Lambda для вызова других функций.

См. https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html для диаграмм развертывания шлюза NAT.

...