连接到kubernets上的主副本集mongo

时间:2019-06-25 14:12:27

标签: mongodb kubernetes

我已经在kubernets上配置了两个副本的mongodb: * mongo-0 * mongo-1 我还有另一个带mongo-express的吊舱 * mongo-express

问题是,我想将mongo-express连接到主要mongo副本,但是kubernets正在进行负载平衡,因此,有时它会以主要连接,而次要以次要连接

我该如何解决?

谢谢

3 个答案:

答案 0 :(得分:0)

您应该为您的任何mongo创建服务。这意味着您应该为3个吊舱提供3个服务。 通过一项服务,您将无法做到这一点。

答案 1 :(得分:0)

您可以创建MongoDB的集群。但是对于MongoDB-express副本,您可以创建服务并将其连接到其他副本可能无法正常工作。

答案 2 :(得分:0)

如果要安装带头盔的mongodb集群,则mongodb图表将以这种方式进行模板化,从而使您可以在服务级别定义(带有标签选择器)上选择应针对的特定副本-主副本或辅助副本。请记住,使用图表值进行用户自定义并不是一件容易的事,因此需要“硬”更改。至少它应该使您了解如何轻松实现您的需求。

这是清单文件示例:

# Source: mongodb/templates/svc-primary-rs.yaml
apiVersion: v1
kind: Service
metadata:
  name: my-mongo-mongodb
  labels:
    app: mongodb
    chart: mongodb-5.3.0
    release: "my-mongo"
    heritage: "Tiller"
spec:
  type: ClusterIP
  ports:
  - name: mongodb
    port: 27017
    targetPort: mongodb
  selector:
    app: mongodb
    release: "my-mongo"
    component: secondary  <---