kibana第一次连接elasticsearch问题2:Unable to retrieve version information from Elasticsearch nodes.
2025-06-24 12:37:55
来源:新华网
问题描述。
通过最后一篇文章 “kibana第一次连接elasticsearch问题1” 操作后,重新运行kibana容器,发现kibana的相应链接仍然无法打开,这次直接显示网络错误。
通过docker 命令查看kibana日志:
docker。logs kibana。
显示错误:[elasticsearch-service] Unable to retrieve version information from Elasticsearch nodes. security_exception Root causes: security_exception: missing authentication credentials for REST request。
问题原因。
这个错误表示 Kibana 无法从 Elasticsearch 节点检索版信息,原因是缺乏身份验证证据。Elasticsearch 需要身份验证 REST 请求,但 Kibana 没有有效的身份验证信息。
解决过程。
kibana似乎可以通过两种方式进行身份认证:
- 验证用户身份。:如果 Elasticsearch 使用用户名和密码认证,将相应的用户名和密码添加到kibana的配置文件中(elasticsearch创建)
- 为 Kibana 配置证书认证#xff1a; 如果 Elasticsearch 使用证书认证而不是用户名和密码,则需要在 Kibana 在配置中提供适当的证书和密钥。
方案二在上一篇文章中 “kibana第一次连接elasticsearch问题1” 问题,因此,解决方案一的选择。
我记得 elasticsearch 专门用于连接kibana的内置用户。
方案2过程:
- 进入 Elasticsearch 容器。
docker。exec。-it。elasticsearch /bin/bash。
- 内置用户手动操作 kibana_system 设置密码可以使用 --interactive 参数,它提示输入并确认新密码。
bin/elasticsearch-reset-password。 -u。kibana_system。 --interactive。
- 退出容器。
exit。
- 在 Kibana 在配置文件中添加凭证打开 Kibana 容器的 kibana.yml 配置文件通常位于 /usr/share/kibana/config/kibana.yml。
cat。>>/usr/share/kibana/config/kibana.yml。
- 添加以下内容:
elasticsearch.username:。 "kibana_system"elasticsearch.password:。 "your_kibana_system_password"
- 退出容器,重启kibana容器。
exit。docker。restart kibana。