Kubernetesホスト間curl cluster ip時不通
2264 ワード
一、問題現象1、テストは1つのサービスを配置し、2つのpodを含み、それぞれnode 1とnode 2にある.
2、node 1(またはnode 2)上のcurl 10.254.132.1190(cluster ip)は、ローカルpodに負荷された場合にのみ正常であり、curlは正常である.二、解決策
2.1、ホスト間で通信できますが、ローカルpodが正常ではありません.
2.2.上記ルーティング情報を削除し、以下のルーティング解決を追加する.
[root@k8s-master ~]# kubectl get svc -o wide
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
kubernetes 10.254.0.1 443/TCP 18d
mymysql 10.254.204.143 3306:30002/TCP 11d app=mymysql
mysql 10.254.137.129 3306:30004/TCP 11d app=mysql
nginx 10.254.132.190 80:30001/TCP 17d app=nginx
nginx1 10.254.158.154 80:30005/TCP 15d app=nginx1
redis 10.254.110.138 6379:30003/TCP 16d app=redis
tomcat 10.254.88.182 8080:30008/TCP 13d app=tomcat
[root@k8s-master ~]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE
centos-ssh-kp0zz 1/1 Running 0 8d 172.20.4.8 192.168.1.200
mymysql-q2v72 1/1 Running 0 5d 172.20.4.3 192.168.1.200
mysql-grml8 1/1 Running 0 11d 172.20.4.5 192.168.1.200
nginx-51l1m 1/1 Running 0 1h 172.20.66.20 192.168.1.201
nginx-gfpb7 1/1 Running 0 1h 172.20.4.12 192.168.1.200
nginx-tb5rb 1/1 Running 2 17d 172.20.66.4 192.168.1.201
nginx1-4101028372-zp4f8 1/1 Running 0 5m 172.20.66.5 192.168.1.201
nginx2-20kkr 1/1 Running 1 13d 172.20.66.8 192.168.1.201
php-apache-klbbq 1/1 Running 0 2d 172.20.4.11 192.168.1.200
redis-b440v 1/1 Running 1 16d 172.20.66.2 192.168.1.201
2、node 1(またはnode 2)上のcurl 10.254.132.1190(cluster ip)は、ローカルpodに負荷された場合にのみ正常であり、curlは正常である.二、解決策
ip route add 10.254.0.0/16 dev flannel0
2.1、ホスト間で通信できますが、ローカルpodが正常ではありません.
2.2.上記ルーティング情報を削除し、以下のルーティング解決を追加する.
ip route add 10.254.0.0/16 dev docker0