gpt4 book ai didi

networking - Kubernetes 暴露的 pod 连接被拒绝 - 有时有效,有时无效

转载 作者:行者123 更新时间:2023-12-03 16:41:09 24 4
gpt4 key购买 nike

我有一个带有主节点和 1 个节点的 kubernetes 安装。

它已配置并且一切正常。

$ kubectl get pods

NAME READY STATUS RESTARTS AGE
mantis-gfs 1/1 Running 1 22h
mongodb-gfs 1/1 Running 0 14h

我暴露了pod mongodb-gfs:
$ kubectl expose pod mongodb-gfs --port=27017 --external-ip=10.9.8.100 --name=mongodb --labels="env=development"

外部IP 10.9.8.100是kubernetes master节点的IP

服务创建成功。
$ kubectl get services

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
glusterfs-cluster ClusterIP 10.111.96.254 <none> 1/TCP 23d
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 29d
mongodb ClusterIP 10.100.149.90 10.9.8.100 27017/TCP 1m

现在我可以使用以下方法访问 mongo:
mongo 10.9.8.100:27017 

这就是问题所在。它有一段时间有效,但有一段时间没有。
我连接一次并获得 shell ,我第二次连接并获得:
$ mongo 10.9.8.100:27017

MongoDB shell version v3.4.17
connecting to: mongodb://10.9.8.100:27017/test
2018-11-01T09:27:23.524+0100 W NETWORK [thread1] Failed to connect to 10.9.8.100:27017, in(checking socket for error after poll), reason: Connection refused
2018-11-01T09:27:23.524+0100 E QUERY [thread1] Error: couldn't connect to server 10.9.8.100:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:240:13
@(connect):1:6
exception: connect failed

然后我再试一次,它有效,再试一次,它有效,再试一次,它不起作用......

任何可能导致问题的线索?

最佳答案

我找到了问题和解决方案。问题是,pod 定义。对于两个 pod:mongodb-gfs 和 mantis-gfs 我有相同的标签设置。然后我公开了具有相同标签=“env=development”的服务。在这种情况下,我希望始终流向一个 Pod 的流量被“负载平衡”到不同类型的一个或其他 Pod(它们具有相同的标签)。

更改 mongodb-gfs pod 定义中的标签解决了连接问题。

关于networking - Kubernetes 暴露的 pod 连接被拒绝 - 有时有效,有时无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53097601/

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