J'ai une fonction AWS Lambda
qui utilise un cluster ElastiCache Redis
. Étant donné que le cluster Redis
est «verrouillé» dans un VPC
, la fonction Lambda
doit également se trouver dans cette zone .AWS Lambda - utilise Kinesis sous VPC
Pour une raison quelconque, si le Lambda
est attribué un IP
d'un public subnet
, qui a une Internet gateway
- il ne peut toujours pas faire des liens vers l'extérieur (Internet), rendant ainsi impossible l'utilisation Kinesis
.
Pour cela, ils suggèrent d'utiliser une passerelle NAT
qui permet au Lambda
de se connecter à l'extérieur. Fondamentalement, cela fonctionne pour moi - mais mon problème est l'argent. Cette solution est coûteuse pour une grande quantité de transferts de données et je cherche un moyen de le rendre moins cher.
Pour un petit POC
que j'ai fait, j'ai payé ~$10
.
C'est trop pour ~30GB
que mon pipeline de production se déroulera sur des centaines de gigabytes
/mois.
Comment suggérez-vous que la fonction Lambda
connecte l'extérieur (en particulier Kinesis
) sans utiliser de passerelle NAT
?
Merci!
Pour que Lambda se connecte à l'extérieur d'Internet à partir d'un VPC avec IGW, vous devez ajouter à la fois les ACL réseau entrantes et sortantes pour autoriser le trafic HTTP. Êtes-vous sûr d'avoir ajouté une liste de contrôle d'accès sortante à Lambda? – error2007s
@ error2007s ce n'est pas tout à fait correct. Il nécessite toujours une passerelle NAT. –
Ou une instance NAT * * @ MarkB. –