私はそれを機能させるために2つの変更を加えることになりました。最初の変更は、私が見逃していた明確な要件です。 2回目の変更が絶対に必要かどうかはまだわかりません。
1)新しいGCPクラスターを作成する必要があり、その中でVPCネイティブ(IPエイリアスを有効にする)がデフォルトで有効になっています。以前のクラスターでは、この設定が無効になっていて、実行中のクラスター用に変更できませんでした。問題を解決するには、この設定を必ずオンにする必要があります。
2)Mongo Javaドライバー3.11.1を使用していますが、nslookup
をいくつか使用しました。 コマンドを実行し、古いドライバースタイルの接続URI文字列を使用する方が安全であると考えました(例: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
)、nslookup
以降 実際には、古いスタイルには実際のIPアドレスを与えましたが、新しいスタイルには与えませんでした。
nslookup
役に立ったコマンド:
>> 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