解决微服务注册到Eureka Server后,服务IP为127.0.0.1

10 篇文章 0 订阅
1 篇文章 0 订阅

现象为:

微服务注册到Eureka Server后,服务IP为127.0.0.1



查看服务环境


因为我没有配置spring.cloud.client.hostname变量,所以默认取操作系统的主机名,查看验证:

[ddh_tyqx@localhost apiservice]$ hostname
localhost.localdomain


果然如此!而此主机名有配置对应IP,如下:

[ddh_tyqx@localhost apiservice]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
所以,服务注册上去后,IP为127.0.0.1


解决办法:

修改主机名,我们将主机名改成CentOS

[ddh_tyqx@localhost apiservice]#sudo hostnamectl --static set-hostname CentOS

若主机名没有配置对应的IP地址,由会依次(可用网络设备)选择一个IP作为注册服务IP(可外部访问的IP),如果服务器上有多个可以外部访问的IP,可以配置:以指定选择网段或忽略网络设备的方式进行配置,方法:

配置优先选择网段方法:

spring.cloud.inetutils.preferredNetworks[0]: 10.176
spring.cloud.inetutils.preferredNetworks[1]: 192.168.1
spring.cloud.inetutils.preferredNetworks[2]: 192.168

忽略网络设置的方法

spring.cloud.inetutils=ignored-interfaces[0]=VirtualBox Host-Only Ethernet Adapter
spring.cloud.inetutils=ignored-interfaces[1]=VMware Virtual Ethernet Adapter for VMnet1
spring.cloud.inetutils=ignored-interfaces[2]=VMware Virtual Ethernet Adapter for VMnet8
spring.cloud.inetutils=ignored-interfaces[3]=TAP-Windows Adapter V9
spring.cloud.inetutils=ignored-interfaces[4]=TAP-Windows Adapter V9 #2
spring.cloud.inetutils=ignored-interfaces[5]=TAP-Windows Adapter V9 #2 #2
spring.cloud.inetutils=ignored-interfaces[6]=TAP-Windows Adapter V9 #1
spring.cloud.inetutils=ignored-interfaces[7]=VirtualBox Host-Only Ethernet Adapter #2
spring.cloud.inetutils=ignored-interfaces[8]=Microsoft Hosted Network Virtual Adapter
spring.cloud.inetutils=ignored-interfaces[9]=WAN Miniport(IKEv2)

自动解析主机名为IP及ID格式配置方法

eureka.instance=instance-id=${spring.cloud.client.ipAddress}:${spring.application.name}:${spring.application.instance_id:${server.port}}
eureka.instance=preferIpAddress=true


重启应用服务(重新注册),即可!


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值