Java – The Spring-Boot-Admin server could not register clients from the Eureka registry

The Spring-Boot-Admin server could not register clients from the Eureka registry… here is a solution to the problem.

The Spring-Boot-Admin server could not register clients from the Eureka registry

I just created a new Spring-Boot-Admin project from Initializr and followed the instructions here: http://codecentric.github.io/spring-boot-admin/2.0.0/

This is my class:

@Configuration
@EnableAutoConfiguration
@EnableDiscoveryClient
@EnableAdminServer
public class ServiceAdminApplication {

public static void main(String[] args) {
        SpringApplication.run(ServiceAdminApplication.class, args);
    }
}

Here is my properties file:

eureka.instance.leaseRenewalIntervalInSeconds=10
eureka.instance.health-check-url-path=/actuator/health
eureka.client.registryFetchIntervalSeconds=5
eureka.client.serviceUrl.defaultZone=http://my.eureka.url:8580/eureka/

management.endpoints.web.exposure.include=*  
management.endpoint.health.show-details=ALWAYS

I have a valid Eureka registry with a number of Spring-Boot applications registered. I know this works because they are able to find each other and communicate via the Eureka registry.

When I launch my new SBA app, I can see that it registers itself in the Eureka registry, so it’s looking for Eureka. However, when I open the SBA UI, it is empty and only says “No applications registered”. On my console, I can see the following stack trace over and over again.

java.io.IOException: An established connection was aborted by the
software in your host machine at
sun.nio.ch.SocketDispatcher.write0(Native Method) ~[na:1.8.0_151] at
sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51)
~[na:1.8.0_151] at
sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
~[na:1.8.0_151] at sun.nio.ch.IOUtil.write(IOUtil.java:65)
~[na:1.8.0_151] at
sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
~[na:1.8.0_151] at
org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:134)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:101)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:157)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.doWrite(NioEndpoint.java:1276)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.SocketWrapperBase.doWrite(SocketWrapperBase.java:670)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.SocketWrapperBase.flushBlocking(SocketWrapperBase.java:607)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.tomcat.util.net.SocketWrapperBase.flush(SocketWrapperBase.java:597)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.http11.Http11OutputBuffer$SocketOutputBuffer.flush(Http11OutputBuffer.java:646)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.http11.filters.ChunkedOutputFilter.flush(ChunkedOutputFilter.java:169)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.http11.Http11OutputBuffer.flush(Http11OutputBuffer.java:252)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.http11.Http11Processor.flush(Http11Processor.java:1564)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.AbstractProcessor.action(AbstractProcessor.java:352)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.coyote.Response.action(Response.java:173)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:317)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:284)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.java:118)
~[tomcat-embed-core-8.5.31.jar:8.5.31] at
sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297)
~[na:1.8.0_151] at
sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141) ~[na:1.8.0_151]
at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229)
~[na:1.8.0_151] at
org.springframework.util.StreamUtils.copy(StreamUtils.java:121)
~[spring-core-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:103)
~[spring-web-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:43)
~[spring-web-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:224)
~[spring-web-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitterReturnValueHandler$HttpMessageConvertingHandler.sendInternal( ResponseBodyEmitterReturnValueHandler.java:199)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitterReturnValueHandler$HttpMessageConvertingHandler.send( ResponseBodyEmitterReturnValueHandler.java:189)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitter.sendInternal(ResponseBodyEmitter.java:189)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitter.send(ResponseBodyEmitter.java:183)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.SseEmitter.send(SseEmitter.java:133)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler$SseEmitterSubscriber.send(ReactiveTypeHandler.java:341)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
org.springframework.web.servlet.mvc.method.annotation.ReactiveTypeHandler$AbstractEmitterSubscriber.run(ReactiveTypeHandler.java:283)
~[spring-webmvc-5.0.6.RELEASE.jar:5.0.6.RELEASE] at
java.lang.Thread.run(Thread.java:748) [na:1.8.0_151]

Solution

2.0.0 does not include cloud capabilities. Please use 2.0.1 (currently only snpashhots is available).

Related Problems and Solutions