局部点阵+尤里卡无法正确解析主机



我正在尝试在本地点阵设置中部署SpringCloud配置+ Netflix Eureka服务器。不幸的是,Eureka对等体不能相互引用,因为我的Lattice安装的主机IP不能在单元上解析。

我将在我们的AWS Lattice设置中尝试它,但我真的想让它在本地工作以用于开发/测试目的。

任何建议吗?

FWIW应用程序自己启动了,我在我的日志中看到了很多这样的情况:

22 May 13:29 [APP|0] 2015-05-22 19:29:08.849  INFO 4 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8888 (http)
22 May 13:29 [APP|0] 2015-05-22 19:29:08.855  INFO 4 --- [           main] com.example.config.ConfigServer          : Started ConfigServer in 18.594 seconds (JVM running for 19.859)
22 May 13:29 [APP|0] 2015-05-22 19:29:08.859  INFO 4 --- [       Thread-4] c.n.eureka.PeerAwareInstanceRegistry     : Updating the replica nodes as they seem to have changed from [] to [http://eureka2.192.168.11.11.xip.io/eureka/] 
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [APP|0] 2015-05-22 19:29:11.397  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - Re-registering apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:11.397  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io: registering service...
22 May 13:29 [APP|0] 2015-05-22 19:29:11.429  WARN 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Action: Register  => returned status of 404 from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:11.431 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Can't get a response from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] Can't contact any eureka nodes - possibly a security group issue?
.22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [APP|0] 2015-05-22 19:29:11.431 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - registration failedBad status: 404
22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [APP|0] 2015-05-22 19:29:13.687  WARN 4 --- [cTaskExecutor-1] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it. Exception summary: org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused
22 May 13:29 [APP|0] 2015-05-22 19:29:13.687  INFO 4 --- [cTaskExecutor-1] o.s.a.r.l.SimpleMessageListenerContainer : Restarting Consumer: tags=[{}], channel=null, acknowledgeMode=AUTO local queue size=0
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [APP|0] 2015-05-22 19:29:14.435  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - Re-registering apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:14.435  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io: registering service...
.22 May 13:29 [APP|0] 2015-05-22 19:29:14.447  WARN 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Action: Register  => returned status of 404 from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:14.451 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Can't get a response from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] Can't contact any eureka nodes - possibly a security group issue?
22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [APP|0] 2015-05-22 19:29:14.451 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - registration failedBad status: 404
22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [APP|0] 2015-05-22 19:29:17.456  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - Re-registering apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:17.456  INFO 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io: registering service...
.22 May 13:29 [APP|0] 2015-05-22 19:29:17.472  WARN 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Action: Register  => returned status of 404 from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] 2015-05-22 19:29:17.474 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : Can't get a response from http://eureka2.192.168.11.11.xip.io/eureka/apps/DEMO-CONFIG-SERVICE
22 May 13:29 [APP|0] Can't contact any eureka nodes - possibly a security group issue?
22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [APP|0] 2015-05-22 19:29:17.482 ERROR 4 --- [pool-8-thread-1] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_DEMO-CONFIG-SERVICE/192.168.11.11.xip.io - registration failedBad status: 404
22 May 13:29 [APP|0] java.lang.RuntimeException: Bad status: 404
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1155)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.makeRemoteCall(DiscoveryClient.java:1060)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient.register(DiscoveryClient.java:606)
22 May 13:29 [APP|0]    at com.netflix.discovery.DiscoveryClient$HeartbeatThread.run(DiscoveryClient.java:1596)
22 May 13:29 [APP|0]    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
22 May 13:29 [APP|0]    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
22 May 13:29 [APP|0]    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
22 May 13:29 [APP|0]    at java.lang.Thread.run(Thread.java:745)
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1
.22 May 13:29 [HEALTH|0] healthcheck failed
22 May 13:29 [HEALTH|0] Exit status 1

如果url返回404,那么这是一个更好的信号,因为它可能只是路由表还没有更新。如果你能从receptor.192.168.11.11.xip.io的容器内击中受体url,那么击中尤里卡服务器应该没有什么不同,对吧?

该解决方案在部署时实际上是相当超前的,因为它们将能够解析大脑的IP。你只需要在[bootstrap|application].yml配置中明确指定你的主机名&ltc create命令。

<标题>配置设置:
eureka:
  instance:
    hostname: ${INSTANCE_HOST:localhost}

格子创建命令:

启动Eureka Peer 1:

APPNAME="eureka1"
TARGET=`ltc target | grep Target | cut -d':' -f2 | sed -e 's/[^0-9a-zA-Z.]//g'`
LATTICE_CLI_TIMEOUT=180 ltc create $APPNAME distributedspring/config-server --memory-mb=0 -e 
  EUREKA_PEER=http://eureka2.$TARGET/eureka/ 
  -e RABBIT_HOST=rabbit-5672.$TARGET 
  -e INSTANCE_HOST=$APPNAME.$TARGET 
  -e INSTANCE_ID=$APPNAME 
  -e PREFER_IP=false 
  --no-monitor

启动Eureka Peer 2

APPNAME=eureka2
TARGET=`ltc target | grep Target | cut -d':' -f2 | sed -e 's/[^0-9a-zA-Z.]//g'`
LATTICE_CLI_TIMEOUT=180 ltc create $APPNAME distributedspring/config-server --memory-mb=0 
  -e EUREKA_PEER=http://eureka1.$TARGET/eureka/ 
  -e RABBIT_HOST=rabbit-5672.$TARGET 
  -e INSTANCE_HOST=$APPNAME.$TARGET 
  -e INSTANCE_ID=$APPNAME 
  -e PREFER_IP=false 
  --no-monitor  

最新更新