J'ai fini par faire 2 modifications pour que cela fonctionne. Le premier changement est une exigence précise qui me manquait. Je ne sais pas encore si un deuxième changement est absolument nécessaire.
1) J'ai dû créer un nouveau cluster GCP, et dans celui-ci, le VPC natif (activer l'alias IP) était activé par défaut. Dans mon ancien cluster, ce paramètre était désactivé et je ne pouvais pas le modifier pour un cluster en cours d'exécution. Ce paramètre doit absolument être activé pour résoudre le problème.
2) Bien que j'utilise le pilote Mongo Java 3.11.1, j'ai couplé nslookup
commandes et j'ai pensé qu'il était plus sûr d'utiliser la chaîne URI de connexion de style ancien pilote (c'est-à-dire 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
), depuis nslookup
a en fait donné une adresse IP réelle pour l'ancien style mais pas pour le nouveau.
nslookup
commandes qui ont aidé :
>> 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