sql >> Databasteknik >  >> NoSQL >> MongoDB

Kan inte ansluta till Mongo Atlas med VPC-peering från GCP-kluster

Det slutade med att jag gjorde 2 ändringar för att få det att fungera. Första förändringen är ett klart krav som jag saknade. Inte säker än om den andra ändringen är absolut nödvändig.

1)Jag var tvungen att skapa ett nytt GCP-kluster, och i det var VPC-native (aktivera IP-alias) aktiverat som standard. I mitt gamla kluster var den här inställningen inaktiverad och jag kunde inte ändra den för ett körande kluster. Den här inställningen måste definitivt aktiveras för att åtgärda problemet.

2) Även om jag använder Mongo Java-drivrutin 3.11.1, har jag kopplat nslookup kommandon och tänkte att det är säkrare att använda den äldre drivrutinsanslutnings-URI-strängen (dvs. mongodb://<username>:<password>@<cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net:27017,<cluster_name>-shard-00-01-pri.crum0.gcp.mongodb.net:27017,<cluster_name>-shard-00-02-pri.crum0.gcp.mongodb.net:27017/itls?ssl=true&replicaSet=<cluster_name>-shard-0&authSource=admin&retryWrites=true&w=majority ), eftersom nslookup gav faktiskt riktig IP-adress för den gamla stilen men inte den nya.

nslookup kommandon som hjälpte:

>> nslookup <cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   <cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net
Address: 192.168.248.2
>> nslookup <cluster_name>-pri.crum0.gcp.mongodb.net
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
*** Can't find <cluster_name>-pri.crum0.gcp.mongodb.net: No answer


  1. MongoDB:Inte auktoriserad på admin att utföra kommandot

  2. Visar bilder i Angular.js från MongoDB

  3. ställ in standardvärden till mongoose-arrayer i node js

  4. Återställ redis-data från slav till master