Подключитесь к серверу Консул, работающему с openshift, к клиенту Консул, работающему на локальном хосте - PullRequest
1 голос
/ 31 мая 2019

Когда я запускаю консул на своем локальном компьютере и клиент весенней загрузки со следующими свойствами в bootstrap.properties, я вижу, что он подключается, обнаруживает службы и может подключаться от одного сервиса к другому с помощью обнаружения сервисов.Bootstrap.properties:

spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id=consul-service2
spring.application.name=consul-service2
server.port=8083

Но теперь я установил консул на openshift при условии, что маршрут к нему.Я могу перейти к интерфейсу консула и увидеть, что служба консула зарегистрировалась.Но когда я пытаюсь подключить клиент, работающий на локальном хосте, к консулу, работающему на openshift, я получаю сообщение об ошибке.

com.ecwid.consul.transport.TransportException: org.apache.http.conn.ConnectTimeoutException: Connect to consul-uservices-template.f-az.uk.paas.intranet.db.com:8500 [consul-uservices-template.hju-azh.uk.paas.intranet.sdf.com/10.248.36.85] failed: connect timed out
        at com.ecwid.consul.transport.AbstractHttpTransport.executeRequest(AbstractHttpTransport.java:77) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.transport.AbstractHttpTransport.makePutRequest(AbstractHttpTransport.java:41) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.ConsulRawClient.makePutRequest(ConsulRawClient.java:135) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.agent.AgentConsulClient.agentServiceRegister(AgentConsulClient.java:273) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.ConsulClient.agentServiceRegister(ConsulClient.java:309) ~[consul-api-1.4.1.jar:na]

Мои bootstrap.properties:

spring.cloud.consul.host=consul-uservices-template.hju-azh.uk.paas.intranet.sdf.com
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id consul-service2
spring.application.name=consul-service2
server.port=8083

Что я делаю, так это предоставление маршрутакак хозяин, я тут не прав?Я вижу, что он пытается подключиться к consul-uservices-template.hju-azh.uk.paas.intranet.sdf.com:8500 и время ожидания истекло.Я получаю 404 даже в браузере, когда пытаюсь попасть по этому URL.Это не должно быть доступ с номером порта.Как я могу это сделать?

1 Ответ

1 голос
/ 31 мая 2019

Он не должен иметь доступ с номером порта.

Поскольку маршрут предоставляется через OpenShift (и вы также можете получить к нему доступ через веб-интерфейс), я предполагаю, что он доступен через порт80.

В этом случае вы можете указать пружинную загрузку для доступа к консулу через порт 80, изменив следующие свойства

spring.cloud.consul.port=80
...