无法打开 Kibana 仪表板

Unable to open the Kibana dashboard

我刚刚安装了 kiban (docker pull docker.elastic.co/kibana/kibana:6.0.1) 作为 docker 图像,我使用下面的命令 运行 linux 上的图像服务。

  docker run -d -p 5061:5061 --name kibana <ImageName>

它使服务正常运行 运行ning,我刚打开浏览器并点击 Kibana 服务,但它显示以下错误消息:

Login is currently disabled. Administrators should consult the Kibana logs for more details.

我只是用谷歌搜索并观察到我需要对 kibana.yaml 文件进行一些更改,但不确定在哪里可以找到该文件。

我使用 find 命令搜索文件夹或文件,但没有找到。

搜索:

find kibana

输出:

No matches found.

Kibana 日志:

{"type":"log","@timestamp":"2019-08-21T18:18:46Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"No living connections"}
{"type":"log","@timestamp":"2019-08-21T18:18:49Z","tags":["warning","elasticsearch","admin"],"pid":1,"message":"Unable to revive connection: http://elasticsearch:9200/"}

谁能帮我解决这个问题?

您可以禁用 xpack.security.enabled ,因此尝试 运行 您的 container 像这样:

docker run -d -p 5061:5061 -e  "XPACK_SECURITY_ENABLED=false" --name kibana <IMAGE>

请重新访问您的 IPv4 地址,可能是您的 IPv4 已更改,这可能会导致此问题。

docker run -p 5601:5601 -e ELASTICSEARCH_URL=http://[IP where elasticsearch is running]:9200 docker.elastic.co/kibana/kibana:6.2.2

如果 Elasticsearch 的许可证已过期,则会发生此错误。

如果您配置了 Kibana,请在 Elasticsearch URL 中进行连接,例如(Docker 示例):

 kibana:
   image: docker.elastic.co/kibana/kibana:6.0.0
   container_name: kibana_ms
   environment:
      - "ELASTICSEARCH_URL=http://elasticsearch:9200"

Elasticsearch 上的预期错误与许可证过期有关,这会阻止第三方工具从 Elasticsearch 访问监控数据:

elasticsearch_ms | [2020-05-21T15:05:29,911][ERROR][o.e.x.s.a.f.SecurityActionFilter] [wcr8rMd] blocking [cluster:monitor/stats] operation due to expired license. Cluster health, cluster stats and indices stats 
elasticsearch_ms | operations are blocked on license expiration. All data operations (read and write) continue to work. 
elasticsearch_ms | If you have a new license, please update it. Otherwise, please reach out to your support contact

这会阻止 Kibana 连接到 Elasticsearch,并且这(以某种方式)使 Kibana 要求登录以访问仪表板。您会发现类似的错误,在相同的情况下,尝试制作另一个 Web 管理工具(如 Cerebro,即 returns 403)。

解决方案

您可以禁用 de XPACK:

xpack.security.enabled=false

在 Docker,您可以:

 elasticsearch:
   image: docker.elastic.co/elasticsearch/elasticsearch:6.0.0
   container_name: elasticsearch_ms
   environment:
      - "xpack.security.enabled=false"