我已经使用Helm和图表stable/mongodb-replicaset
在Kubernetes上部署了MongoDB ReplicaSet
在Kubernetes上,我可以使用某种连接字符串连接到MongoDB
mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?replicaSet=myRepl
如果我更改副本数,连接字符串也将更改,这也意味着连接到数据库的每个应用程序都需要更新。
有没有解决方法?
我想到创建一个服务,以便仅需更改它,但是连接字符串未通过正则表达式验证。
在这方面的任何帮助表示赞赏。
最佳答案
Helm图表stable/mongodb-replicaset
还部署了2个无头服务:
<release name>-mongodb-replicaset
<release name>-mongodb-replicaset-client
<release name>-mongodb-replicaset
的DNS记录返回所有副本的地址,因此,为了连接到副本集,连接字符串为"mongodb+srv://<release name>-mongodb-replicaset.namespace.svc.cluster.local/?tls=false&ssl=false"
请注意,默认情况下已将tls和ssl设置为false进行测试。
关于mongodb - 在Kubernetes上连接到MongoDB ReplicaSet,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61490287/