elasticsearch BadResponseCodeError,:error=>&引用;获取响应代码';401和x27;通过URL联系Elasticsearch,elasticsearch,docker-compose,logstash,elasticsearch,Docker Compose,Logstash" /> elasticsearch BadResponseCodeError,:error=>&引用;获取响应代码';401和x27;通过URL联系Elasticsearch,elasticsearch,docker-compose,logstash,elasticsearch,Docker Compose,Logstash" />

elasticsearch BadResponseCodeError,:error=>&引用;获取响应代码';401和x27;通过URL联系Elasticsearch

elasticsearch BadResponseCodeError,:error=>&引用;获取响应代码';401和x27;通过URL联系Elasticsearch,elasticsearch,docker-compose,logstash,elasticsearch,Docker Compose,Logstash,我使用logstash by logstash:7.9.1图像,当我启动docker compose时出现此错误,我不知道该怎么办(我试图使我的logstash配置出错,并将其连接到错误的弹性端口,但我的docker仍连接到9200,因此我认为它没有从我的logstash配置读取数据)请帮助Meeee!!!! 我的错误: [logstash.licensechecker.licensereader] Attempted to resurrect connection to dead ES ins

我使用logstash by logstash:7.9.1图像,当我启动docker compose时出现此错误,我不知道该怎么办(我试图使我的logstash配置出错,并将其连接到错误的弹性端口,但我的docker仍连接到9200,因此我认为它没有从我的logstash配置读取数据)请帮助Meeee!!!! 我的错误:

[logstash.licensechecker.licensereader] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>"http://elasticsearch:9200/", :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::BadResponseCodeError, :error=>"Got response code '401' contacting Elasticsearch at URL 'http://elasticsearch:9200/'"}
我的码头工人:

  zookeeper:
    image: wurstmeister/zookeeper:3.4.6
    container_name: zookeeper
    ports:
      - 2181:2181
    networks:
      - bardz


  kafka:

    image: wurstmeister/kafka:2.11-1.1.0
    container_name: kafka
    depends_on:
      - zookeeper
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka
      KAFKA_CREATE_TOPICS: logs-topic:1:1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181

    ports:
      - 9092:9092
    volumes:
      - kofka-volume:/var/run/docker.sock
    networks:
      - bardz

  elasticsearch:
    build:
      context: elk/elasticsearch/
      args:
        ELK_VERSION: "7.9.1"
    volumes:
      - type: bind
        source: ./elk/elasticsearch/config/elasticsearch.yml
        target: /usr/share/elasticsearch/config/elasticsearch.yml
        read_only: true
      - type: volume
        source: elasticsearch
        target: /usr/share/elasticsearch/data
    ports:
      - "9200:9200"
      - "9300:9300"
    environment:
      ES_JAVA_OPTS: "-Xmx256m -Xms256m"
      ELASTIC_PASSWORD: changeme
      # Use single node discovery in order to disable production mode and avoid bootstrap checks
      # see https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
      discovery.type: single-node
    networks:
      - bardz


  logstash:
    image: logstash:7.9.1
    restart: on-failure
    ports:
      - "5000:5000/tcp"
      - "5000:5000/udp"
      - "9600:9600"
    volumes:
      - logstash_data:/bitnami
      - ./elk/logstash/logstash-kafka.conf:/opt/bitnami/logstash/config/logstash-kafka.conf
    environment:
      LOGSTASH_CONF_FILENAME: logstash-kafka.conf
    networks:
      - bardz
    depends_on:
      - elasticsearch


networks:
  bardz:
    external: true
    driver: bridge


volumes:
  elasticsearch:
  zipkin-volume:
  kofka-volume:
  logstash_data:


我的日志存储配置:

input {
    kafka {
        bootstrap_servers => "kafka:9092"
        topics => ["logs-topic"]
    }
}

output {
    elasticsearch {
        hosts => ["elasticsearch:9200"]
        user => elastic
        password => changeme
        index => "logs-topic"
        workers => 1
    }
}


您在7.9中使用了错误的
elastic
user密码,该密码从
changeme
更改为
password
,如中所示,但我尝试了,这似乎只有在从源代码运行ES时才起作用

不管怎样,你获得401意味着未经授权访问,你可以阅读更多关于它的信息


由于您不是从源代码运行ES代码,建议您按照线程中提到的步骤更改密码,并且在docker中运行密码,您需要通过
docker exec-it/bin/bash进入docker conatainer,然后运行线程中提到的命令来设置您自己的密码。

您使用了7.9中
elastic
用户的错误密码,该密码从
changeme
更改为
password
,如所示,但我试过了,这似乎只有在从源代码运行ES时才起作用

不管怎样,你获得401意味着未经授权访问,你可以阅读更多关于它的信息

由于您不是从源代码运行ES代码,建议您按照线程中提到的步骤更改密码,并且在docker中运行密码时,您需要通过
docker exec-it/bin/bash
进入docker conatainer,然后运行线程中提到的命令设置您自己的密码