gpt4 book ai didi

elasticsearch - 如何运行需要Elasticsearch进行身份验证的Beat容器

转载 作者:行者123 更新时间:2023-12-03 01:11:27 25 4
gpt4 key购买 nike

主要目的:我想使用Logstash收集依赖于远程服务器的日志文件。
我的ELK堆栈是使用docker-compose.yml创建的

version: '3.3'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.1
ports:
- "9200:9200"
- "9300:9300"
volumes:
- '/share/elk/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro'
environment:
ES_JAVA_OPTS: "-Xmx512m -Xms256m"
ELASTIC_PASSWORD: changeme
discovery.type: single-node
networks:
- elk
deploy:
mode: replicated
replicas: 1
logstash:
image: docker.elastic.co/logstash/logstash:7.5.1
ports:
- "5000:5000"
- "9600:9600"
volumes:
- '/share/elk/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro'
- '/share/elk/logstash/pipeline/logstash.conf:/usr/share/logstash/pipeline/logstash.conf:ro'
environment:
LS_JAVA_OPTS: "-Xmx512m -Xms256m"
networks:
- elk
deploy:
mode: replicated
replicas: 1

kibana:
image: docker.elastic.co/kibana/kibana:7.5.1
ports:
- "5601:5601"
volumes:
- '/share/elk/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml:ro'
networks:
- elk
deploy:
mode: replicated
replicas: 1

networks:
elk:
driver: overlay
然后我想在目标主机上安装filebeat以便将日志发送到ELK主机。
docker run docker.elastic.co/beats/filebeat-oss:7.5.1 setup \
-E setup.kibana.host=x.x.x.x:5601 \
-E ELASTIC_PASSWORD="changeme" \
-E output.elasticsearch.hosts=["x.x.x.x:9200"]
但是一旦按下回车键,就会发生错误
Exiting: Couldn't connect to any of the configured Elasticsearch hosts. Errors: [Error connection to Elasticsearch http://x.x.x.x:9200: 401 Unauthorized: {"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}}],"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}},"status":401}]
还尝试过 -E ELASTICS_USERNAME="elastic",错误仍然存​​在

最佳答案

您应该禁用基本的x-pack安全性,该安全性在Elasticsearch 7.X版本中默认启用(在下面提到的ES docker镜像的环境变量下),并启动ES docker容器。

xpack.security.enabled : false
此后,无需传递 ES凭据,您还可以从ES环境中删除以下内容。 var:
ELASTIC_PASSWORD: changeme

关于elasticsearch - 如何运行需要Elasticsearch进行身份验证的Beat容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64149663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com