在 Docker 中使用 ELK Stack with docker-compose with x.pack auth 无法验证用户
Using ELK Stack in Docker with docker-compose with x.pack auth failed to authenticate the user
我想将 elk 堆栈与 docker 一起使用。
为此我创建了一个 docker-compose 文件。
只要我停用 X-Pack 一切正常。
但现在我想在 kibana 中登录 UI 因此我想使用 x-pack
我在elasticsearch和logstash的环境中定义了用户名和密码。
但我总是得到这个例外m
elasticsearch_1 | [2017-11-27T09:25:58,190][INFO
][o.e.x.s.a.AuthenticationService] [clEpqom] Authentication of
[elastic] was terminated by realm [reserved] - failed to authenticate
user [elastic]
有什么我做错的提示吗?
这是我的 docker-compose 文件:
version: '2'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-platinum:6.0.0
ports:
- "9200:9200"
- "9300:9300"
environment:
ELASTIC_USERNAME: "elastic"
ELASTIC_PASSWORD: "MyPw123"
http.cors.enabled: "true"
http.cors.allow-origin: "*"
networks:
- elk
logstash:
image: docker.elastic.co/logstash/logstash:6.0.0
environment:
xpack.monitoring.elasticsearch.url: "172.17.0.1:9200"
xpack.monitoring.elasticsearch.username: "elastic"
xpack.monitoring.elasticsearch.password: "MyPw123"
networks:
- elk
depends_on:
- elasticsearch
kibana:
image: docker.elastic.co/kibana/kibana:6.0.0
ports:
- "5601:5601"
networks:
- elk
depends_on:
- elasticsearch
networks:
elk:
driver: bridge
更新
使用默认密码 "changeme" 确实有效。
您可以使用以下方法更改集群中的弹性(管理员)密码:
curl -u elastic -XPUT 'localhost:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "supersecret"
}
默认密码为changme
。
如果您真的想在 docker-compose 中设置配置,我建议您查看 this 页面。我认为您不能将 elasticsearch 密码设置为 logstash 的环境变量(它们不在 env var 列表中)。您必须在配置文件中更改它或构建您自己的图像。 (恐怕 Kibana 也一样)。
我想将 elk 堆栈与 docker 一起使用。
为此我创建了一个 docker-compose 文件。 只要我停用 X-Pack 一切正常。
但现在我想在 kibana 中登录 UI 因此我想使用 x-pack
我在elasticsearch和logstash的环境中定义了用户名和密码。
但我总是得到这个例外m
elasticsearch_1 | [2017-11-27T09:25:58,190][INFO ][o.e.x.s.a.AuthenticationService] [clEpqom] Authentication of [elastic] was terminated by realm [reserved] - failed to authenticate user [elastic]
有什么我做错的提示吗? 这是我的 docker-compose 文件:
version: '2'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-platinum:6.0.0
ports:
- "9200:9200"
- "9300:9300"
environment:
ELASTIC_USERNAME: "elastic"
ELASTIC_PASSWORD: "MyPw123"
http.cors.enabled: "true"
http.cors.allow-origin: "*"
networks:
- elk
logstash:
image: docker.elastic.co/logstash/logstash:6.0.0
environment:
xpack.monitoring.elasticsearch.url: "172.17.0.1:9200"
xpack.monitoring.elasticsearch.username: "elastic"
xpack.monitoring.elasticsearch.password: "MyPw123"
networks:
- elk
depends_on:
- elasticsearch
kibana:
image: docker.elastic.co/kibana/kibana:6.0.0
ports:
- "5601:5601"
networks:
- elk
depends_on:
- elasticsearch
networks:
elk:
driver: bridge
更新 使用默认密码 "changeme" 确实有效。
您可以使用以下方法更改集群中的弹性(管理员)密码:
curl -u elastic -XPUT 'localhost:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "supersecret"
}
默认密码为changme
。
如果您真的想在 docker-compose 中设置配置,我建议您查看 this 页面。我认为您不能将 elasticsearch 密码设置为 logstash 的环境变量(它们不在 env var 列表中)。您必须在配置文件中更改它或构建您自己的图像。 (恐怕 Kibana 也一样)。