gpt4 book ai didi

mongodb - 尝试连接到有状态集 Mongodb Kubernetes 部署时没有连接错误

转载 作者:可可西里 更新时间:2023-11-01 10:00:03 25 4
gpt4 key购买 nike

我有以下服务...

apiVersion: v1
kind: Service
metadata:
name: mongo
labels:
app: mongo
spec:
ports:
- name: mongo
port: 27017
clusterIP: None
selector:
app: mongo

还有下面的状态集……

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mongo
spec:
serviceName: mongo
selector:
matchLabels:
app: mongo
replicas: 3
template:
metadata:
labels:
app: mongo
spec:
terminationGracePeriodSeconds: 10
containers:
- name: mongo
image: mongo
command:
- mongod
- "--replSet"
- rs0
- "--smallfiles"
- "--noprealloc"
ports:
- name: mongo
containerPort: 27017
- name: mongo-sidecar
image: cvallance/mongo-k8s-sidecar
env:
- name: "VERSION"
value: "2"
- name: MONGO_SIDECAR_POD_LABELS
value: "role=mongo"

但是,我的代码无法使用 url mongo:27017 建立连接。我已经尝试连接到 mongomongo-0.mongo:27017 以及许多其他的。如果我执行到容器中并运行 $ nslookup mongo 我得到...

Name:      mongo
Address 1: 10.1.0.80 mongo-0.mongo.default.svc.cluster.local
Address 2: 10.1.0.81 mongo-1.mongo.default.svc.cluster.local
Address 3: 10.1.0.82 mongo-2.mongo.default.svc.cluster.local

点击 $ curl mongo:27017$ telnet mongo 27017 给我一个连接被拒绝的错误。

最佳答案

bind_ip 添加到命令中:

      command:
- mongod
- "--replSet"
- rs0
- "--smallfiles"
- "--noprealloc"
- "--bind_ip"
- "0.0.0.0"

option告诉 mongodb 守护进程监听所有 IPv4 地址,而不是默认的 localhost

关于mongodb - 尝试连接到有状态集 Mongodb Kubernetes 部署时没有连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49359514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com