Я пытаюсь настроить zipkin, elasticsearch, prometheus и grafana с помощью docker-compose.yml. Когда я запускаю докеры, вижу в журнале:
dependencies_zipkin | 19/09/30 14:37:09 ОШИБКА NetworkClient: Ошибка узла [172.28.0.2:9200] (java.net.ConnectException: соединение отклонено (соединение отклонено)); других узлов не осталось - прерывание ...
Я использую MacOS X с докером 2.1.0.3
содержимое моего docker-compose.yml таково:
version: '3.7'
services:
storage:
image: openzipkin/zipkin-elasticsearch7
container_name: elasticsearch
ports:
- "9200:9200"
environment:
- "xpack.security.enabled=false"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
restart: unless-stopped
prometheus:
image: prom/prometheus:latest
container_name: prometheus
volumes:
- $PWD/prometheus:/etc/prometheus/
- /tmp/prometheus:/prometheus/data:rw
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
- '--web.console.templates=/usr/share/prometheus/consoles'
ports:
- "9090:9090"
restart: unless-stopped
zipkin:
image: openzipkin/zipkin
container_name: zipkin
depends_on:
- dependencies
- storage
environment:
- "STORAGE_TYPE=elasticsearch"
- "ES_HOSTS=storage"
ports:
- "9411:9411"
restart: unless-stopped
grafana:
image: grafana/grafana
container_name: grafana
ports:
- "3000:3000"
restart: unless-stopped
dependencies:
image: openzipkin/zipkin-dependencies
container_name: dependencies_zipkin
depends_on:
- storage
environment:
- "STORAGE_TYPE=elasticsearch"
- "ES_HOSTS=storage"
Когда я подключаюсь к localhost: 9200, я вижу, что elasticsearch работает нормально, а на порту 9411 развернут zipkin, но у меня есть ошибка:
ОШИБКА: невозможно загрузить имена служб: ошибка сервера (служба недоступна) (из-за сетевой ошибки
В журнале есть такая информация:
105 ^ [[35mdependencies_zipkin | ^ [[0m 19/09/30 14:45:20 ERROR NetworkClient: Узел [172.28.0.2:9200] не удалось] (java.net.ConnectException: соединение отклонено (соединение отклонено)); других узлов не осталось - прерывание ...
и этот
^ [[31mzipkin | ^ [[0m java.lang.IllegalStateException: не удалось подключиться ни к одной из [конечной точки {хранилище: 80, ipAddr = 172.28.0.2, вес = 1000}]
Любая идея?
ОБНОВЛЕНИЕ с использованием mysql работает нормально, поэтому проблема находится на уровне эластичного поиска. Я пробовал также, используя
"STORAGE_PORT_9200_TCP_ADDR = 127.0.0.1"
но проблема все еще возникает.
ОБНОВЛЕНИЕ Как упоминалось, решение, данное Брайаном, я должен использовать:
ES_HOSTS = http://storage:9300
ключ находится на порту, я использовал порт 9200
Ошибка исчезает между zipkin и es, но все еще возникает между es и zipkin-зависимостями.