Kubernetes版本信息
Client Version: version.Info{Major:“1”, Minor:“21”, GitVersion:“v1.21.5”, GitCommit:“aea7bbadd2fc0cd689de94a54e5b7b758869d691”, GitTreeState:“clean”, BuildDate:“2021-09-15T21:10:45Z”, GoVersion:“go1.16.8”, Compiler:“gc”, Platform:“linux/amd64”}
Server Version: version.Info{Major:“1”, Minor:“21”, GitVersion:“v1.21.5”, GitCommit:“aea7bbadd2fc0cd689de94a54e5b7b758869d691”, GitTreeState:“clean”, BuildDate:“2021-09-15T21:04:16Z”, GoVersion:“go1.16.8”, Compiler:“gc”, Platform:“linux/amd64”}
容器运行时
docker version
20.10.9
KubeSphere版本信息
v3.2.1 离线安装(你们官网的离线安装教程,漏洞百出,自己根据报错日志慢慢琢磨出来的,按下不表)
master:centos7.9 内核:5.4.123-1.el7.elrepo.x86_64
node1/node2/node3 : ubuntu18.04 内核 4.15.0-106-generic
问题是什么
问题非常简单。我部署了某个微服务,假设这个服务叫做driver微服务,暴露端口6002–>3xxxx端口。
然后通过在自己的windows电脑上使用postman(接口工具)访问这个服务的某个功能,比如get:
http://13.99.25.99:31806/v1/testpath/v2x-edges?offset=1&limit=10 这样访问,没有任何问题。
重点来了
但是如果在master或者node节点上通过 curl命令访问 curl “http://13.99.25.99:31806/v1/testpath/v2x-edges?offset=1&limit=10 ” 则报错“curl: (56) Recv failure: Connection reset by peer” ,我看了pod日志,实际微服务已经响应了,就是外面的主机没有拿到数据。然后我把url改成
http://13.99.25.99:31806/v1/testpath/v2x-edges?offset=1&limit=1 ,这样数据量就变小了 就能获得正常的返回了,太奇怪了,ip改成节点的ip效果一样。但是假设这个服务部署在node1,则使用curl “http://node1IP:31806/v1/testpath/v2x-edges?offset=1&limit=10” 访问就正常了 。这个问题太奇怪了
希望获得官网的参考 感谢