在服务器上部署微服务的时候,框架是eureka,feign,zuul2等,出现一下错误信息:

Caused by: feign.RetryableException: Connection refused (Connection refused) executing GET http://xxx-server/api/v1/cunchu/bucket/exist?bame=server-abc

 

 

搜索网上教程:

https://github.com/spring-cloud/spring-cloud-netflix/issues/730

说是这样配置:

eureka.instance.prefer-ip-address=true
eureka.instance.instance-id=${spring.cloud.client.ip-address}:${server.port}
eureka.instance.hostname=${spring.cloud.client.ip-address}

 

但是,配置了下,还是没有效果,同事最终找了半天,发现是服务器多网卡的问题,网卡绑定的ip不能寻找到服务了

spring.cloud.inetutils.ignored-interfaces=eth0 

这样屏蔽掉不需要的网卡,问题解决了。

多网卡配置的相关知识:

1、直接添加忽略某张网卡的配置:

spring.cloud.inetutils.ignored-interfaces[0]=eth0 # 忽略eth0, 支持正则表达式
正则:

spring.cloud.inetutils.ignored-interfaces=eth.*
2、指定默认IP:

spring.cloud.inetutils.preferred-networks=192.168.20.123 #可以是IP段:192.168.20

ignored-interfaces和preferred-networks这两个配置。这两个配置决定了spring cloud应用在启动的时候所使用的网卡和IP地址。ignored-interfaces接收一个正则表达式数组,配置名字虽然是ignored-interfaces,忽略的网卡,但是因为其接收的是正则表达式,所以我们可以任意的选择和反选本机的网卡。preferred-networks是指倾向于使用的IP地址,接收一个正则表达式数组,用于选择Spring Cloud应用使用的本机的IP地址。

 

 

 

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐