请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

service只能访问到其中一个pod

创建好service后,再node上两个nginx只能访问到一个, 而且再master上使用service的cluster ip都不能访问到nginx。这个是什么原因呀

正在回答 回答被采纳积分+3

5回答

杰森110 2022-04-29 10:51:21

需要修改flannel的默认网卡,已经测试有效。参考文档

3 回复 有任何疑惑可以回复我~
清风 2022-01-18 11:39:25

是通过node1:80 进行访问哈。

0 回复 有任何疑惑可以回复我~
  • 是的呢。 看了日志 只有一个pod能看访问到.另一个没有日志输出。 没有定位的思路😥
    回复 有任何疑惑可以回复我~ 2022-01-18 11:42:30
  • kubectl describe service SERVICE_NAME 看看
    回复 有任何疑惑可以回复我~ 2022-01-18 11:46:00
  • 刚才查看了一下。service的endpoints值是2个pod的IP。 kubectl describe pod pod_name。 很奇怪 轮训的话 应该是一下通一下不通。但是通过 curl serviceip:端口执行 正常有时候三四次然后就不通了   不通的时候 curl有时候1次 或则三次就又通了。
    回复 有任何疑惑可以回复我~ 2022-01-18 11:55:45
清风 2022-01-17 17:10:52

你是如何验证的呢,默认是轮询访问

0 回复 有任何疑惑可以回复我~
  • 在worker机器上去curl service的IP。看到时好时坏。
    回复 有任何疑惑可以回复我~ 2022-01-17 17:17:09
燈火不見闌珊0 2022-01-17 16:46:38

同学,你定位到问题了吗

0 回复 有任何疑惑可以回复我~
清风 2021-06-13 16:07:12

怎么看出来只能访问一个?

列一下你的访问地址和方法

0 回复 有任何疑惑可以回复我~
  • 我也遇到一样的问题。
    1. master上面两个都无法访问
    2. 两个worknode上, 每个worknode可以访问其中一个nginx的地址
    使用deployment和service 毫无修改: 	6-2nginx-deplyment.yaml, 	6-2nginx-service.yaml
    
    以下是集群信息:
    kubectl get node
    NAME             STATUS   ROLES    AGE   VERSION
    vm-0-11-centos   Ready    <none>   22h   v1.19.3
    vm-8-15-centos   Ready    <none>   22h   v1.19.3
    vm-8-6-centos    Ready    master   23h   v1.19.3
    
    ssh到vm-8-6-centos上(master),执行:
    curl 10.244.1.2:80 hang住了。
    curl 10.244.2.6:80 hang住了。
    curl 10.244.1.2:80,10.244.2.6:80 都无法访问
    master上的信息:
    kubectl describe svc my-nginx
    Name:              my-nginx
    Namespace:         default
    Labels:            <none>
    Annotations:       <none>
    Selector:          run=my-nginx
    Type:              ClusterIP
    IP:                10.1.140.225
    Port:              <unset>  80/TCP
    TargetPort:        80/TCP
    Endpoints:         10.244.1.2:80,10.244.2.6:80
    Session Affinity:  None
    Events:            <none>
    
    ssh到vm-0-11-centos上,执行:
    curl 10.244.1.2:80 就hang住了
    curl 10.244.2.6:80 就hang住了。
    都无法访问
    
    ssh到vm-8-15-centos上,执行:
    curl 10.244.1.2:80 就hang住了。
    curl 10.244.2.6:80 可以成功
    回复 有任何疑惑可以回复我~ 2021-11-15 17:22:12
  • kubectl get pod
    NAME                        READY   STATUS    RESTARTS   AGE
    my-nginx-6d97ddfff5-5jxvg   1/1     Running   0          37m
    my-nginx-6d97ddfff5-h7qdz   1/1     Running   0          37m
    
    执行:kubectl exec -it my-nginx-6d97ddfff5-h7qdz sh
    结果:kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
    Error from server: error dialing backend: dial tcp 172.16.0.11:10250: i/o timeout
    
    执行:kubectl exec -it my-nginx-6d97ddfff5-5jxvg sh
    结果:kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
    Error from server: error dialing backend: dial tcp 10.0.8.15:10250: i/o timeout
    
    这是不是因为flannel的网络没有设置好? kubernetes-dashboard可以正常使用。第五章没有看,我直接来学习和添加ingress的。是不是有什么漏掉了?
    回复 有任何疑惑可以回复我~ 2021-11-15 17:36:47
  • 清风 回复 拧壶冲 #3
    看一下「加餐-Service 的域名解析」这个章节的内容
    回复 有任何疑惑可以回复我~ 2021-11-16 09:42:42
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信