【问题标题】:BadResponseCodeError, :error=>"Got response code '401' contacting Elasticsearch at URLBadResponseCodeError, :error=>"得到响应代码 '401' 通过 URL 联系 Elasticsearch
【发布时间】:2020-09-16 04:45:14
【问题描述】:

我通过 logstash:7.9.1 图像使用 logstash,当我启动 docker-compose 时出现此错误,我不知道该怎么办(我尝试使我的 logstash 配置错误并将其连接到错误的弹性端口但是我的 docker 仍然连接到 9200,所以我认为它不会从我的 logstash 配置中读取它的数据)请帮助 meeeee !!! 我的错误:

[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:


我的 logstash 配置:

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

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

【问题讨论】:

    标签: elasticsearch docker-compose logstash


    【解决方案1】:

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

    无论如何你得到 401 意味着未经授权的访问,你可以阅读更多关于它here

    由于您不是从源代码运行 ES 代码,建议您按照this 线程中提到的步骤更改密码,并且当您在 docker 中运行它时,您需要通过@987654327 进入 docker 容器@ 然后运行线程中提到的命令来设置你自己的密码。

    【讨论】:

      猜你喜欢
      • 2020-09-07
      • 1970-01-01
      • 2015-12-07
      • 1970-01-01
      • 2023-02-01
      • 2019-10-07
      • 1970-01-01
      • 2020-04-28
      • 1970-01-01
      相关资源
      最近更新 更多