在kubernetes中我们经常会涉及到配置一些service,然后服务之间使用service进行访问。但是有没有同学遇到过这种问题,就是在访问service的时候,可以直接连接到service,但是很快被断开连接了,导致访问不了,达不到效果。
这个时候一般我们可以理解成后端转发出现了问题,举个例子,在某台服务器上安装一个nginx,这个nginx是可以连接的,访问的,没有任何问题,但是如果我们配置的proxy不存在或者配置错误,那是不是就无法直接访问服务了,达不到我们想要的效果?
所以当我们遇到上面的问题的时候,我们需要进行如下排查:
1、Pod是否正常工作?kubectl get pods 查看 Pod 的 restart count,并按照本文前面的步骤诊断一下 Pod 是否有问题 2、是否可以直接连接到 Pod ?kubectl get pods -o wide 可以获得 Pod 的IP地址,从任意一个节点上执行 ping <POD_IP> 命令,确认网络连接是否正常 3、应用程序是否正常地监听了端口?Kubernetes 不对网络端口做映射,如果您的应用程序监听 8080 端口,则您在 Service 中应该指定 containerPort 为 8080。在任意节点上执行命令 curl <POD_IP>:<containerPort> 可查看 Pod 中容器的端口是否正常。
还没有评论,来说两句吧...