Skip to content

Conversation

@jimersylee
Copy link

@jimersylee jimersylee commented Jun 22, 2022

k8s部署时,k8s服务会自动给容器添加一条hosts,这个hostname在其他服务中是无法访问的,如10.42.1.182 deveureka-7f68f7c7fd-z87nf,因此使用服务的ip作为hostname,不会有问题;否则会出现网关转发给服务请求时,会去解析eureka的hostname,无法解析,或者服务间feigin调用的时候,也用这个错误的hostname,无法调用

错误例子:

java.net.UnknownHostException: Failed to resolve 'deveureka-dfb56fcc5-wgp8f' after 4 queries 
        at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1047)
        Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: 

访问eureka的接口,http://ip/eureka/apps,hostName为eureka的hostname,此时服务间无法正常调用

<name>SOME-APP</name>
<instance>
<instanceId>some-app-549c48cd4d-ngmpz:some-app:18205</instanceId>
<hostName>deveureka-dfb56fcc5-wgp8f</hostName>
<app>SOME-APP</app>
<ipAddr>192.168.0.145</ipAddr>

修改代码后访问eureka的接口 ip/eureka/apps,hostName与ipAddr一致,可以正常使用

<name>SOME-APP</name>
<instance>
<instanceId>some-app-549c48cd4d-ngmpz:some-app:18205</instanceId>
<hostName>192.168.0.145</hostName>
<app>SOME-APP</app>
<ipAddr>192.168.0.145</ipAddr>

…ame的问题

k8s部署时,k8s服务会自动给容器添加一条hosts,这个hostname在其他服务中是无法访问的,如10.42.1.182     deveureka-7f68f7c7fd-z87nf,因此使用服务的ip作为hostname,不会有问题
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant