之间一直使用的都是自建的K8S集群,由于升级困难,维护成本高,所有把自建的集群迁移到阿里云托管集群内
集群使用的是Flannel网络.Ingress做分发.
迁移过程一切顺利,上线之后发现一个比较诡异的问题:
在集群内部,使用JAVA自带的 URL类访问集群内项目的url,会出现超时.
比如: 网站有一个url是 www.a.com/a , 使用URL类在集群外部可以直接访问该url,但是在集群内部就无法访问,且该url对应的项目是部署在集群内的.但是在集群内用 URL 类访问百度之类的url是没问题的 .
解决方案:
修改Ingress:
Ingress-Service
externaltrafficpolicy: Cluster
metadata:
annotations:
service.beta.kubernetes.io/backend-type: eni
Ingress-Deployment
dnsPolicy: ClusterFirstWithHostNet
hostNetwork: true
网友评论