• klj890K零S

    cici
    进入ingress pod里面,看下nginx的配置。找到代理ks-console的域名,找个pod,在里面curl/nslookup这个域名看看后端IP是不是ks-console的ip

    • cici 回复了此帖
      • klj890K零S

        cici 这是在哪里curl的?

        klj890 抱歉前面沒修改到回復 我後來檢查到這個10.233.127.31是ks-console pod IP

          • klj890K零S

            cici 但是端口看着不对啊。。。

            • cici 回复了此帖

              klj890 Ingress-controller pod 裡面curl 10.233.127.31:8000

              h00283@coverity-ms:~/kubesphere$ kubectl exec -it ingress-nginx-controller-79746f9d79-2j5b8 -n ingress-nginx -- curl -v http://10.233.127.31:8000
              *   Trying 10.233.127.31:8000...
              * connect to 10.233.127.31 port 8000 from 10.233.127.73 port 58146 failed: Operation timed out
              * Failed to connect to 10.233.127.31 port 8000 after 130821 ms: Could not connect to server
              * closing connection #0
              curl: (28) Failed to connect to 10.233.127.31 port 8000 after 130821 ms: Could not connect to server
              command terminated with exit code 28
              
              
              #改用80試看看
              h00283@coverity-ms:~/kubesphere$ kubectl exec -it ingress-nginx-controller-79746f9d79-2j5b8 -n ingress-nginx -- curl -v http://10.233.127.31:80
              *   Trying 10.233.127.31:80...
              * connect to 10.233.127.31 port 80 from 10.233.127.73 port 50282 failed: Operation timed out
              * Failed to connect to 10.233.127.31 port 80 after 130403 ms: Could not connect to server
              * closing connection #0
              curl: (28) Failed to connect to 10.233.127.31 port 80 after 130403 ms: Could not connect to server
              command terminated with exit code 28

              我用另一台一樣配置安裝的機器試了一下,確定是ks-console pod IP:8000 port ,curl 出來應該會是

              me2:~/kubesphere$ kubectl exec -it ingress-nginx-controller-d6f759d4d-8fflw -n ingress-nginx -- curl -v http://10.233.120.30:8000
              *   Trying 10.233.120.30:8000...
              * Connected to 10.233.120.30 (10.233.120.30) port 8000
              * using HTTP/1.x
              > GET / HTTP/1.1
              > Host: 10.233.120.30:8000
              > User-Agent: curl/8.11.1
              > Accept: */*
              >
              * Request completely sent off
              < HTTP/1.1 302 Found
              < Vary: Accept-Encoding
              < Location: /login
              < Content-Type: text/html; charset=utf-8
              < Content-Length: 43
              < Date: Tue, 11 Mar 2025 06:08:11 GMT
              < Connection: keep-alive
              < Keep-Alive: timeout=5
              <
              * Connection #0 to host 10.233.120.30 left intact
              Redirecting to <a href="/login">/login</a>.

              不過就不知道為什麼這台不行

              • klj890K零S

                是我错了。pod监听的就是8000端口,所以路由是对的

                那你还是检查ks-console pod本身的健康吧

                • klj890K零S

                  如果pod本身没有问题,检查你的网络。

                  • klj890K零S


                    可以问下AI

                      klj890 看起來確實是兩個pod互聯都time out,有可能因為我外部防火牆影響嗎

                        • klj890K零S

                          cici
                          怀疑它,证明它

                          • cici 回复了此帖

                            klj890 我進ks-console跟ingress的pod分別做了都time out

                            me:~/kubesphere$ kubectl exec -it ks-console-5675bf657b-kzplx -n kubesphere-system -- nc -zv 10.233.127.77 80
                            nc: 10.233.127.77 (10.233.127.77:80): Operation timed out
                            command terminated with exit code 1
                            me:~/kubesphere$ kubectl exec -it ingress-nginx-controller-d5c666948-8fg6h -n ingress-nginx -- nc -zv 10.233.127.31 8000
                            nc: 10.233.127.31 (10.233.127.31:8000): Operation timed out
                            command terminated with exit code 1