Я пытаюсь настроить стек EFK с беглым битом в док-контейнерах. Несмотря на то, что я мог перемещать журналы от беглого к эластичному поиску, когда я пытался интегрировать бегло, я столкнулся с проблемами с этим. Это точное сообщение об ошибке:
непредвиденная ошибка error_class = Errno :: EADDRNOTAVAIL error = "Адрес не доступен - bind (2) для порта \" fluent-bit \ "24224"
Службы в моем файле docker-compose file
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:${TAG}
ports:
- '9200:9200'
- '9300:9300'
volumes:
- type: bind
source: ./config/elasticsearch.yml
target: /usr/share/elasticsearch/config/elasticsearch.yml
read_only: true
- type: volume
source: elasticsearch
target: /usr/share/elasticsearch/data
networks:
- efk_1
fluentd:
image: fluent/fluentd:${FLBV}
ports:
- '24224:24224'
volumes:
- type: bind
source: ./config/fluent.conf
target: /fluentd/etc/fluent.conf
read_only: true
networks:
- efk_1
depends_on:
- elasticsearch
fluent-bit:
image: fluent/fluent-bit:${FBITV}
ports:
- '2020:2020'
volumes:
- type: bind
source: ./config/fluent-bit.conf
target: /fluent-bit/etc/fluent-bit.conf
read_only: true
- type: bind
source: ./sample_logs
target: /var/log
networks:
- efk_1
depends_on:
- fluentd
Ранее я непосредственно передавал журналы из fluent-bit вasticsearch, как это, без использования конфигурации fluentd в любом месте:
[SERVICE]
Flush 2
Log_Level debug
[INPUT]
Name tail
Path /var/log/log.txt
[OUTPUT]
Name es
Match *
Host elasticsearch
Port 9200
Это успешно подтолкнуло логи кasticsearch, но теперь я добавил fluentd между ними, поэтому fluent-bit отправит логи в fluentd, который затем переместится наasticsearch.
fluent-bit conf:
[SERVICE]
Flush 2
Log_Level debug
[INPUT]
Name tail
Path /var/log/log.txt
[OUTPUT]
Name forward
Match *
Host fluentd
fluentd conf:
<source>
@type forward
bind fluent-bit
</source>
<match **>
@type stdout
</match>
Это дает мне ошибки, так как они не могут определить адрес, даже если они являются частью одной и той же сети докеров.
Вот ошибки, которые я получаю:
fluent-bit_1 |[2019/11/06 10:31:02] [ошибка] [io] Не удалось установить TCP-соединение: fluentd: 24224 (соединение отклонено)
и
fluentd_1 |2019-11-06 10:31:02 +0000 [error]: # 0 непредвиденная ошибка error_class = Errno :: EADDRNOTAVAIL error = "Адрес недоступен - bind (2) для порта \" fluent-bit \ "24224"
Может кто-нибудь помочь мне узнать, где я совершаю ошибку?