Это мой первый микросервис, использующий 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, работающем на моем локальном компьютере.
Когда я запускаю сервер и клиент как приложения 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
eureka.client.serviceUrl.defaultZone
- person Barath   schedule 20.10.2018eureka.instance.hostname=eureka-service.local.pcfdev.io eureka.client.register-with-eureka=false
- person Barath   schedule 20.10.2018