Эврика и Консул - PullRequest
       110

Эврика и Консул

3 голосов
/ 07 октября 2019

Я внедряю обнаружение услуг и оцениваю два варианта: Eureka и Consul.

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

(новичок) Вопрос:

1) Как настроить каждый сервер Eureka для связи друг с другом? У меня есть один (с балансировкой нагрузки) URL. Я боюсь, что каждый сервер может стать десинхронизированным.

2) Я что-то упустил?

Ответы [ 2 ]

1 голос
/ 12 октября 2019

Вы правы, каждый из серверов Eureka должен общаться друг с другом. Вы также можете играть с регионами в зависимости от вашего подхода.

Чтобы заставить его работать (без зон), вы должны сконфигурировать свойство:

eureka.client.service-url.defaultZone: http://1st-eureka-server-ip-or-hostname:port/eureka/,http://2nd-eureka-server-hostname:porta/eureka/

Приведенная выше конфигурация принимает набор, разделенный запятымиIP / имя хоста всех серверов Eureka.

Если вы хотите иметь многозонную конфигурацию, я рекомендую вам прочитать это сообщение в блоге .

0 голосов
/ 16 октября 2019

Чтобы настроить каждый сервер Eureka для связи друг с другом, попробуйте сделать другую зону в ресурсе в папке.

application-zone1.yml

server.port: 8001
eureka:
  instance:
    hostname: localhost
    metadataMap.zone: zone1

application-zone2.yml

 server.port: 8002
eureka:
  instance:
    hostname: 127.0.0.1
    metadataMap.zone: zone2

application.yml

  client:
    register-with-eureka: false
    fetch-registry: false
    region: region-1
    service-url:
      zone1: http://localhost:8001/eureka/
      zone2: http://127.0.0.1:800/eureka/
    availability-zones:
      region-1: zone1,zone2
spring.profiles.active: zone1

Следуйте этому руководству

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...