我在同一个kubernetes集群中部署了mongodb复制集和很少的Python微服务,
mongo-0 - PRIMARY - pod name
mongo-1 - SECONDARY - pod name
mongo-2 - SECONDARY - pod name我的微服务不使用mongodb来创建客户端,而是使用荚名称(Ex:mongo-0)。来自微服务的连接字符串是mongodb://mongo-0:27017/,其中mongo-0是我的主要节点。
我的问题是,如果mongo-0崩溃,PyMongo是否可以自动创建客户端,即使我没有在连接字符串中指定mongo-1和mongo-2,还是必须指定
mongodb://mongo-0:27017,mongo-1:27017,mongo-2:27017/注意:在连接URI中,由于微服务也在集群中存在,所以在连接URI中,我不使用的ip任何地方,而使用pod名称。
发布于 2022-01-26 05:51:25
不不是的。连接字符串必须如下所示:
mongodb://mongo-0:27017,mongo-1:27017,mongo-2:27017/?replicaSet=yourRepSetName然后,它将连接到主节点(不管哪个节点当前是主节点)。
https://stackoverflow.com/questions/70858398
复制相似问题