如何将mongo容器暴露在覆盖网络之外?

55ooxyrt  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(249)

我在mesos集群中运行一个mongodb副本集作为容器(我的问题也适用于k8s/swarm)。可以使用dns或容器IP初始化副本集。但是,dns或容器ip都只能在mesos集群的覆盖网络中访问。现在,用户想要从mesos/k8s集群外部访问mongo副本集,他们如何通过entres/lb实现这一点?
这里不考虑hostport,因为只有入口/lb节点暴露于公共网络。

vdgimpew

vdgimpew1#

入口控制器正在使用 HTTP 它不支持 TCP . mongodb需要定期 TCP/IP 插座。
实现这一点还有两种方法:
你可以用 NodePort 或者 Loadbalancer 服务。如果它在云上运行,那么您可以使用loadbalancer,否则使用loadbalancer NodePort . 更多关于服务的信息可以在这里找到。
或者,您可以使用nginx入口控制器
这两种解决方案都将在mongodb教程中解释

相关问题