微服务多网卡部署(eureka显示IP不为服务IP的地址)解决办法
生活随笔
收集整理的這篇文章主要介紹了
微服务多网卡部署(eureka显示IP不为服务IP的地址)解决办法
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
- 這幾天遇到一個(gè)bug,我們微服務(wù)組90%都是部署在linux環(huán)境中,只有一個(gè)XX微服務(wù)是部署在Windows環(huán)境中,并且服務(wù)都是分布式部署,并沒有全部部署在同一臺(tái)服務(wù)器上。這時(shí),問題就出現(xiàn)了~微服務(wù)向eureka注冊(cè)中心注冊(cè)時(shí),顯示的IP地址不正常全部是localhost或者主機(jī)名稱。(正常情況下,應(yīng)該顯示的為微服務(wù)所在服務(wù)器的IP地址)
- 然后我們查了一下問題原因,由于服務(wù)器配備了多網(wǎng)卡的原因,導(dǎo)致eureka在發(fā)現(xiàn)微服務(wù)時(shí),無法確定微服務(wù)所注冊(cè)的是哪張網(wǎng)卡,所以會(huì)默認(rèn)顯示為localhost或者主機(jī)名稱。
- 解決辦法:
在你微服務(wù)的application.properties文件中加入如下幾行代碼:
spring.application.name=robot-base server.port=8002 spring.cloud.client.address=192.168.5.120#以IP地址的方式向eureka進(jìn)行注冊(cè) eureka.instance.prefer-ip-address=true#Npcap Loopback Adapter:為忽略的網(wǎng)卡名稱 spring.cloud.inetutils.ignored-interfaces[0]=Npcap Loopback Adapter#${spring.cloud.client.address}:為微服務(wù)所在服務(wù)器的IP地址 #${spring.application.name}:為微服務(wù)的名稱 #${server.port}:為微服務(wù)端口號(hào) eureka.instance.instance-id=${spring.cloud.client.address}:${spring.application.name}:${server.port}注意:忽略的網(wǎng)卡名稱就是微服務(wù)不使用那張網(wǎng)卡向注冊(cè)中心注冊(cè)。
完美解決!
總結(jié)
以上是生活随笔為你收集整理的微服务多网卡部署(eureka显示IP不为服务IP的地址)解决办法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Direct3D 12 尝鲜: 基本呈现
- 下一篇: tcpdump显示IP