AWS SAM local invocation of lambda to access AWS Neptune over VPC

0

I need to be able to invoke a lambda locally which accesses AWS Neptune. I have setup SSH local forwarding via an EC2. How do I make this work inside lambda with sam local invoke?

Vivek
feita há 2 anos433 visualizações
1 Resposta
0
Resposta aceita

The solution here may depend on what OS you're using for your desktop and where you are running the SAM CLI. Docker behaves a bit differently in each OS. Running on MacOS, I can reach the SSH tunnel if I use 'wss://docker.for.mac.localhost:8182/gremlin' as my Neptune endpoint (just change gremlin to oc or sparql for the other languages). I believe this also works with host.docker.internal as a more generic host name that forwards back to localhost on your desktop OS.

The other thing you'll need to consider is SSL verification. Neptune no longer allows you to disable SSL on the cluster side. If you're just doing this for test/development, you can ignore SSL verification. For Gremlin specifically, you can do this by adding a verify_ssl=False parameter when creating the DriverRemoteConnection:

conn = DriverRemoteConnection(neptune_endpoint, 'g', pool_size=1, message_serializer=serializer.GraphSONSerializersV2d0(), verify_ssl=False)
g = traversal().withRemote(conn)
profile pictureAWS
respondido há 2 anos
  • Thank you so much Taylor! That verify_ssl flag was super useful.

Você não está conectado. Fazer login para postar uma resposta.

Uma boa resposta responde claramente à pergunta, dá feedback construtivo e incentiva o crescimento profissional de quem perguntou.

Diretrizes para responder a perguntas