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
질문됨 2년 전433회 조회
1개 답변
0
수락된 답변

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
답변함 2년 전
  • Thank you so much Taylor! That verify_ssl flag was super useful.

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠