VPC 및 피어 네트워킹을 사용할 때 Google Cloud Run에서 MongoDB Atlas에 어떻게 연결합니까?
VPC 및 피어 네트워킹을 사용하여 Google Cloud Run에서 MongoDB로 연결하려고하는데 연결을 설정할 수없는 것 같습니다. 목표는 특정 IP 범위 만 허용하면서 Cloud Run에서 Atlas로 연결할 수 있도록하는 것입니다.
내 설정은 다음과 같습니다.
- Google Cloud에서 실행되는 MongoDB Atlas.
- MongoDB atlas와 동일한 지역에서 NodeJS 서버를 실행하는 Google Cloud Run 컨테이너 (내가 말할 수있는 한 중요하지 않음).
다음 단계를 수행했습니다.
다음 지침에 따라 GCP 측에서 VPC를 만듭니다. https://cloud.google.com/vpc/docs/using-vpc.
내 VPC와 MongoDB Atlas VPC간에 네트워크 피어링을 설정합니다. https://docs.atlas.mongodb.com/security-vpc-peering/
커넥터를 사용하여 서버리스 VPC 액세스를 설정합니다. https://cloud.google.com/vpc/docs/configure-serverless-vpc-access
위의 커넥터를 사용하여 재배포 된 클라우드 실행 컨테이너 : https://cloud.google.com/run/docs/configuring/connecting-vpc
3 단계의 CIDR 범위를 MongoDB 아틀라스의 화이트리스트에 추가하고 이전 개방 범위 0.0.0.0/0을 제거했습니다.
모든 단계가 성공했지만 (녹색 점 등) 5 단계 이후 연결을 시도하면 연결이 실패합니다. 내가 무엇을 놓치고 있습니까?
답변
이 문제를 해결하여 내 질문에 답했습니다. 질문에 설명 된 접근 방식이 효과가 있음이 밝혀졌습니다. 두 가지가 누락되었습니다.
MongoDB 연결 문자열을 개인 연결 문자열로 변경해야합니다. MongoDB 대시 보드의 "클러스터"에서 "연결"을 클릭하여이를 검색 할 수 있습니다. 이것은 MongoDB 피어 네트워킹 가이드의 어느 곳에서도 문서화되지 않은 것으로 보입니다.
MongoDB Atlas 네트워크 설정에서 VPC 자체 (1 단계)의 CIDR 범위와 서버리스 커넥터 (3 단계)의 CIDR 범위를 허용 목록에 추가합니다.