как подключить набор реплик mongodb, созданный с помощью рулевых диаграмм в кластере k8s - PullRequest
0 голосов
/ 29 апреля 2019

Я использую схему управления стабильным mongodb-replicaset для создания mongodb в моем кластере k8s, размещенном в Azure.У mongodb есть три реплики. Стабильный-mongodb-replicaset действует как подчиненная диаграмма.


мой выпуск называется скелет.я вижу, что мой репликатор mongodb запущен и работает.я попробовал соединение для него, и он также работает нормальноВ соответствии с документацией я пытался подключиться к этому репликасу с помощью служебного клиента, но он выдает ошибку.

URL-адрес, который я использую для подключения,

"mongodb://myuser:mydbpwd@skeleton-mongodb-replicaset-client:27001/skeleton?authSource=admin&replicaSet=rs0"

выход службы mongodb

enter image description here

[1;30m2019-04-28 14:34:34,483 [0;39m => [34mINFO [0;39m [ [32mlocalhost-startStop-1 [0;39m] [33mcom.mongodb.diagnostics.logging.SLF4JLogger [0;39m: Cluster created with settings {hosts=[skeleton-mongodb-replicaset-client:27001], mode=MULTIPLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
[1;30m2019-04-28 14:34:34,485 [0;39m => [34mINFO [0;39m [ [32mlocalhost-startStop-1 [0;39m] [33mcom.mongodb.diagnostics.logging.SLF4JLogger [0;39m: Adding discovered server skeleton-mongodb-replicaset-client:27001 to client view of cluster
[1;30m2019-04-28 14:34:34,984 [0;39m => [34mINFO [0;39m [ [32mcluster-ClusterId{value='5cc5b9fab13658000122961a', description='null'}-skeleton-mongodb-replicaset-client:27001 [0;39m] [33mcom.mongodb.diagnostics.logging.SLF4JLogger [0;39m: Exception in monitor thread while connecting to server skeleton-mongodb-replicaset-client:27001
com.mongodb.MongoSocketOpenException: Exception opening socket
        at com.mongodb.connection.netty.NettyStream$2.operationComplete(NettyStream.java:158)
        at com.mongodb.connection.netty.NettyStream$2.operationComplete(NettyStream.java:145)
        at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:511)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:504)
        at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:483)

мы используем драйвер org.mongodb: версия mongodb-driver-async 3.6.4, в то время как версия mongodb - 4.0

1 Ответ

2 голосов
/ 30 апреля 2019

Безголовая служба используется для управления сетевым доменом. При создании каждого модуля он получает соответствующий поддомен DNS в форме: $ (имя_подоба). $ (Управляющий домен службы) Поэтому для подключения к репликасу я считаю, что вам нужно использовать: «MongoDB: // MyUser: mydbpwd@skeleton-mongodb-replicaset-0.skeleton-mongodb-replicaset: 27001 каркасно-MongoDB-replicaset-1 .skeleton-MongoDB-replicaset : 27001 каркасно-MongoDB-replicaset-2 .skeleton-MongoDB-replicaset: 27001 / = админы авторизация источник и replicaSet = rs0"

И второй вопрос @ yanivoliver - почему нестандартный порт?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...