无法与Elasticsearch通信

py49o6xq  于 2022-11-22  发布在  ElasticSearch
关注(0)|答案(1)|浏览(179)

我正在尝试将节点应用程序日志发送到fluentd到elasticsearch到kibana,但在使用docker连接fluentd和elasticsearch时出现问题。我想停靠此efk堆栈。我已附加文件夹结构并共享相关文件。以下是文件夹结构:

错误

Could not communicate to Elasticsearch, resetting connection and trying again. Connection refused - connect(2) for 172.20.0.2:9200 (Errno::ECONNREFUSED)

流利.会议:

@type forward
  port 24224
  bind 0.0.0.0
</source>
<match *.**>
  @type copy
  <store>
    @type elasticsearch
    host elasticsearch
    port 9200
    user elastic
    password pass
  </store>
</match>

停靠文件

FROM fluent/fluentd:v1.15-1
USER root
RUN gem install elasticsearch -v 7.6.0
# RUN gem install fluent-plugin-elasticsearch -v 7.6.0
RUN gem install fluent-plugin-elasticsearch -v 4.1.1
RUN gem install fluent-plugin-rewrite-tag-filter
RUN gem install fluent-plugin-multi-format-parser
USER fluent

停靠-撰写.yml

version: '3'
services:
  fluentd:
    build: ./fluentd
    container_name: loggingFluent
    volumes:
      - ./fluentd/conf:/fluentd/etc
      # - ./fluentd/conf/fluent.conf:/fluentd/etc/fluent.conf
    ports:
      - "24224:24224"
      - "24224:24224/udp"
    links:
      - elasticsearch
    depends_on:
      - elasticsearch
      - kibana  
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.8.1
    container_name: elasticsearch-Logging
    ports:
      - 9200:9200
    expose:
      - 9200  
    environment:
      discovery.type: 'single-node'
      ES_JAVA_OPTS: '-Xms1024m -Xmx1024m'
      xpack.security.enabled: 'true'
      ELASTIC_PASSWORD: 'pass'
  kibana:
    image: docker.elastic.co/kibana/kibana:7.8.1
    container_name: kibana-Logging
    volumes:
      - ./kibana.yml:/usr/share/kibana/config/kibana.yml
    ports:
      - 5601:5601
    depends_on:
      - elasticsearch     
    links:
      - elasticsearch

也许我错过了一些与docker网络,因为我是第一次使用docker,我已经检查了由docker容器暴露的端口,他们是好的。我已经这样做了没有docker,并已使用相同的设置,但有一个问题,这样做与docker。期待看到你的回应。非常感谢。

ffdz8vbo

ffdz8vbo1#

在ElasticSearch环境中添加用户名解决了这个问题:

ElasticSearch环境

environment:
      discovery.type: 'single-node'
      ES_JAVA_OPTS: '-Xms1024m -Xmx1024m'
      xpack.security.enabled: 'true'
      ELASTIC_PASSWORD: 'pass'
      ELASTIC_USERNAME: 'elastic'

相关问题