有偿求解! K8S 环境下外部无法访问服务的问题

2023-01-11 12:10:10 +08:00
 ff1m80

现在有个 K8S 下的 NACOS 服务在 8848 端口下,在宿主机和 master 节点,均可以通过 容器 IP:8848 的方式访问到,port 和 targetPort 配置为 8848 ,nodePort 配置为 30066 。iptables 也有 30066 到 8848 的端口转发。但是,无法在外网通过 30066 端口访问到 nacos 页面。

请熟悉 K8S 的大佬联系我,有偿!。

+V: Zm9yMW04MA==

2749 次点击
所在节点    Kubernetes
17 条回复
retanoj
2023-01-11 12:11:48 +08:00
k8s node 是公有云的主机?
ff1m80
2023-01-11 12:13:24 +08:00
@retanoj 电信云的主机,深信服管理。我想 VPN 登录以后可以访问到 nacos 的页面。kuboard 访问正常,其他一些服务也正常,就是 nacos 访问不到。
EyebrowsWhite
2023-01-11 12:14:13 +08:00
是不是 service 没有配置 externalips 或者 hostname
zhoudaiyu
2023-01-11 12:15:05 +08:00
抓包吧还是
FabricPath
2023-01-11 12:15:58 +08:00
先看是 reset 还是 timeout ,timeout 大概率防火墙、iptables 没开; reset 只能细看了
retanoj
2023-01-11 12:22:09 +08:00
建议给一下具体 IP 地址
比如容器 IP 是多少,宿主机 IP 多少,连 VPN 后获得的 IP 是多少
ff1m80
2023-01-11 12:51:08 +08:00
@retanoj @FabricPath 容器 IP 是 10.100.33.254 ,宿主机是 192.168.0.2 ,vpn 后 IP 是 172.16.114.22 。通过 kuboard 代理也无法访问。
xzysaber
2023-01-11 13:34:18 +08:00
在集群节点内访问 nodePort 30066 ,是否成功?
节点的安全组有没有放开 30066 端口?
dadaslele
2023-01-11 13:41:28 +08:00
内网访节点访问 master 端口 30066 是否可以?如果不行就是 nodePort 设置的问题
VPN 到 master 节点网络是否能通?路由策略是否开启?
676529483
2023-01-11 13:45:54 +08:00
我提一个,电信云的安全组开了吗?
ff1m80
2023-01-11 13:45:57 +08:00
@xzysaber 集群内访问也不成功。开放了 30066 端口, kube-proxy 监听
xzysaber
2023-01-11 14:09:58 +08:00
@ff1m80
iptables -tnat -nvL |grep 30066
你可以在集群内访问 30066 时看下对应的规则的第一列匹配的包数量有没有增加。
server
2023-01-11 14:38:06 +08:00
mtu
bingfengfeifei
2023-01-11 14:39:21 +08:00
抓包排查啊,先确定哪个环节丢的包
1 、网卡抓包,看看进来没有
2 、容器接口抓包,看看 iptables DNAT 规则生效没有
3 、同 2 ,查看服务有没有回包


1 出问题排查云的防火墙
2 出问题,依次排查 iptables 的规则 命中等等,看看有没有干扰规则提前命中了,用 iptables -t nat -nvL 一点点排查命中数。
3 如果容器有回包,但是出不去,排查路由可能是回包路由出不去,是不是全局路由网段冲突,172.16 这个和 Docker 默认的网段已经很相近了。
vivisidea
2023-01-11 22:31:30 +08:00
从描述看其实不能确定 service 是正确配置的

kubectl get endpoints <service-name> 看下有没有预期的后端?
另外也可以试下在节点上 curl <service-ip>:<service-port> 看下服务是否正常
chris89
2023-01-12 12:22:25 +08:00
从别的 node 节点访问 30066 端口正常吗?
retanoj
2023-01-13 11:24:19 +08:00
好奇楼主排查进度如何

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/908109

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX