Docker-compose проблема с подключением файла к logstash - PullRequest
0 голосов
/ 02 мая 2018

Я использую logstash и filebeat внутри отдельного docker-compose.yml. Но filebeat не может подключиться к logstash. Я могу правильно подключиться к logstash telnet 127.0.0.1 5044 после ожидания запуска конвейеров logstash.

Filebeat не может создать соединение. Я получаю эту ошибку. ERROR pipeline/output.go:74 Failed to connect: dial tcp 127.0.0.1:5044: getsockopt: connection refused

Это мой docker-compose для filebeat.

version: '2'

services:
  filebeat:
    image: docker.elastic.co/beats/filebeat:6.2.3
    container_name: filebeat
    user: root
    volumes:
      - flask-sync:/home/flask/app/web:ro
      - ./filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro

volumes:
  flask-sync:
    external: true

Это мой файл bebe.yml

filebeat.prospectors:
- type: log
  enabled: true
  paths:
    - /home/flask/app/web/tmp/log

output.logstash:
  hosts: ["127.0.0.1:5044"]

Это мой docker-compose для logstash

version: '2'

services:
  logstash:
    image: docker.elastic.co/logstash/logstash:6.2.4
    container_name: logstash
    ports:
      - "5044:5044"
    volumes:
      - ./logstash/logstash.conf:/usr/share/logstash/logstash.conf:ro
      - ./logstash/config/:/usr/share/logstash/config/:ro
    command: bin/logstash -f logstash.conf --config.reload.automatic

Это мой logstash.conf

input { 
  beats {
    port => 5044
  }
}

filter {
}


output {
  stdout { codec => rubydebug }
}

1 Ответ

0 голосов
/ 24 января 2019

У меня были такие же проблемы: Проверьте экспорт порта 5044 в docker-compose.yml

    build:
      context: logstash/
    volumes:
      - ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro
      - ./logstash/pipeline:/usr/share/logstash/pipeline:ro
      - /datos/sna/log:/datos/sna/log
    ports:
      - "5000:5000"
      - "5044:5044"
    environment:
      LS_JAVA_OPTS: "-Xmx256m -Xms256m"
    networks:
      - elk
    depends_on:
      - elasticsearch
...