Клиентская служба Eureka недоступна на PCF Dev

Это мой первый микросервис, использующий PCF Dev. Я создал следующее приложение Eureka Server.

@EnableEurekaServer
@SpringBootApplication
public class EurekaServiceApplication {

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

Ниже приведены свойства службы eureka-server.

eureka-service.register-with-eureka=false
eureka-service.fetch-registry=false
eureka-service.defaultZone=http://eureka-service.local.pcfdev.io/
eureka-service.logging.level.com.netflix.eureka=OFF
eureka-service.logging.level.com.netflix.discovery=OFF

Ниже представлена ​​служба эврика-клиента

@EnableDiscoveryClient
@SpringBootApplication
public class EurekaClientApplication {

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

@RestController
class ServiceInstanceRestController {

    @Autowired
    private DiscoveryClient discoveryClient;

    @RequestMapping("/service-instances/{applicationName}")
    public List<ServiceInstance> serviceInstancesByApplicationName(@PathVariable String applicationName) {
        return this.discoveryClient.getInstances(applicationName);
    }
}

Ниже представлены свойства службы эврика-клиент.

eureka.client.register-with-eureka=true
eureka.client.fetch-registry=true
eureka.client.defaultZone=http://eureka-client.local.pcfdev.io/
eureka.client.logging.level.com.netflix.eureka=ON
eureka.client.logging.level.com.netflix.discovery=ON

Я развернул микросервисы на экземпляре PCF Dev, работающем на моем локальном компьютере.

Снимок разработчика PCF

Когда я запускаю сервер и клиент как приложения Java на своем локальном компьютере, я вижу ответ, исходящий от конечной точки service-instance / eureka-client. Но я получаю пустой массив, когда пытаюсь вызвать следующую конечную точку

http://eureka-client.local.pcfdev.io/service-instances/eureka-client

Когда я пытаюсь получить доступ к сервису эврика, используя URL-адрес

http://eureka-service.local.pcfdev.io/

Получаю такой ответ:

This site can’t be reached eureka-service.local.pcfdev.io refused to connect.
Search Google for eureka service local pcfdev io
ERR_CONNECTION_REFUSED

Заранее спасибо.

Редактировать-1:

Согласно комментарию @Barath, я изменил файл application.properties для клиентского приложения, как показано ниже, но проблема все еще не исчезла. Раньше я ошибочно ссылался на имя клиентского приложения в файле application.properties.

eureka-client.register-with-eureka=true
eureka-client.fetch-registry=true
eureka-client.serviceUrl.defaultZone=http://eureka-client.local.pcfdev.io/
eureka-client.logging.level.com.netflix.eureka=ON
eureka-client.logging.level.com.netflix.discovery=ON

Файл bootstrap.properties для клиента имеет следующую запись:

spring.application.name=eureka-client 

Файл bootstrap.properties для сервера имеет следующую запись:

spring.application.name=eureka-service

Редактировать-2

Сервер: https://github.com/abnig/eureka-service Клиент: https://github.com/abnig/eureka-client


person AbNig    schedule 20.10.2018    source источник
comment
свойство должно быть eureka.client.serviceUrl.defaultZone   -  person Barath    schedule 20.10.2018
comment
какой путь к коду?   -  person Barath    schedule 20.10.2018
comment
Сервер: github.com/abnig/eureka-service Клиент: github.com/abnig/eureka-client   -  person AbNig    schedule 20.10.2018
comment
Сведения о сервере eureka неверны. определить эти два свойства eureka.instance.hostname=eureka-service.local.pcfdev.io eureka.client.register-with-eureka=false   -  person Barath    schedule 20.10.2018
comment
FYR облачный . Посмотрите в профилях pcf на свойства, которые нужно установить   -  person Barath    schedule 20.10.2018


Ответы (1)


Свойства, которые должны быть определены на сервере и клиенте eureka, описаны ниже.

эврика-сервер

eureka:
  instance:
    hostname: eureka-service.local.pcfdev.io
  client:
    fetch-registry: false
    register-with-eureka: false

eureka-client

eureka:
  client:
    serviceUrl:
      defaultZone: https://eureka-service.local.pcfdev.io/eureka
    register-with-eureka: true
    fetch-registry: true

обратитесь к spring-cloud-native для справки

person Barath    schedule 20.10.2018
comment
Теперь я могу получить экземпляры службы. Но когда я нажимаю URL-адрес eureka-service.local.pcfdev.io/eureka Я все еще получаю ошибку ERR_CONNECTION_REFUSED, как и в моем вопросе. Спасибо за информацию. - person AbNig; 20.10.2018
comment
Когда вы пытаетесь в broswer, не включайте / eureka, это путь по умолчанию только для клиента. - person Barath; 20.10.2018
comment
Даже eureka-service.local.pcfdev.io дает мне ту же ошибку. Я вижу, что у моего хоста уже есть запись, как показано ниже, должно быть, было добавлено PCF Dev: 127.0.0.1 eureka-service.local.pcfdev.io - person AbNig; 20.10.2018