интегрировать посланника с консулом для обнаружения службы

Изменить - возможно ли вообще этого достичь, или мне нужно заняться чем-то еще?

Как мне интегрировать envoy с consul для автоматического обнаружения и маршрутизации сервисов? У меня контейнеры работают в докере, и каждый контейнер регистрируется у консула во время выполнения.

Мой файл docker-compose выглядит так.

version: '3'

services:

  consul:
    image: consul:1.6
    container_name: consul
    ports:
      - 8300:8300
      - 8400:8400
      - 8500:8500

  envoy:
    container_name: envoy
    build:
      context: ./envoy
      dockerfile: Dockerfile
    ports:
      - 10000:10000

  user:
    container_name: user
    build:
      context: ./user
      dockerfile: Dockerfile

Допустим, пользователь зарегистрирован в консуле с помощью Идентификатор foo работает на порту 80 , а запрос к прокси-серверу envoy поступает как http: // localhost: 10000 / user


envoy / envoy.yaml

admin:
  access_log_path: /tmp/admin_access.log
  address:
    socket_address: { address: 0.0.0.0, port_value: 9901 }
0
задан 31 October 2019 в 21:08
1 ответ

Мы должны были решить альтернативу Nginx (с шаблоном консула) и также имели агента в нашем списке, но решили использовать Traefik.io вместо этого.

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

Мы не хотели представлять новый уровень абстракции только для Агента-> traefik это

0
ответ дан 5 December 2019 в 00:11