Я пытаюсь включить функцию лямбда VPC для ElasticCache для доступа к DynamoDB. Я знаю, для этого мне нужно настроить NAT-шлюз. Однако я не могу заставить его работать. Моя приватная подсеть находится в 172.31. . область.Как подключить функцию AWS Lambda внутри VPC к общественным ресурсам, таким как DynamoDB?
Эти шаги я следующие:
- Создать подсеть с диапазоном внутрибрюшинно в 10.0.0.0.
- Создайте публичный VPC в том же диапазоне IP, о котором говорилось выше.
- Создание общедоступного интернет-шлюза в публичном VPC.
- Создайте общедоступную таблицу маршрутов, которая не является основной таблицей маршрутов и прикрепляет к ней публичную подсеть. Затем добавьте маршрут для 0.0.0.0/0 к общедоступному интернет-шлюзу, созданному выше.
- Создайте NAT-шлюз в общедоступной подсети. Этот NAT получает Elastic IP и частный IP в 10. .. * Область.
Теперь у меня есть 3 таблицы маршрутов, два для моих публичных подсетей (10.0.0.0) и один существующих для моей частной подсети (172.31.0.0), которая является частью моей личной VPC.
У моей частной таблицы маршрутов есть маршрут для 0.0.0.0/0 для моего частного интернет-шлюза.
Мне кажется, мне нужно изменить этот маршрут, чтобы указать на мой публичный шлюз NAT, однако я не могу этого сделать, поскольку частный IP-адрес моего NAT лежит в диапазоне 10.0.0.0. Я смущен в этом вопросе о том, как действовать. Я попытался создать NAT-шлюз в частной подсети и перенаправить маршрут к нему, но он тоже не работает. Что я упускаю?
Ваш маршрут по вашей частной подсети должен указывать на [Идентификатор шлюза NAT] (http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-nat-gateway.html#nat-gateway-create- маршрут), а не Интернет-шлюз. –
Как я уже упоминал, моя личная подсеть не показывает мой NAT в списке опций для пересылки. – Adi
Просто не используйте ElastiCache вместе с DynamoDB, пока Amazon не выпустит хорошее решение для этого, так как невероятно болезненно настроить его правильно прямо сейчас. Мы закончили тем, что использовали redislabs.com для наших лямбдов. –