本文主要是介绍(20201218已解决)Kibana server is not ready yet||如何登录Kibana,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
问题描述
Elasticsearch 设置密码保护之后就出现如题错误,Kibana server is not ready yet.
网上有些解决方案说修改
Kibana.yml
里的elasticsearch.hosts: [ "http://elasticsearch:9200" ]
,此方案只对于ElasticSearch尚未设置密码保护的情况会起作用。本例中无效。 -
解决方案
From Configure Kibana doc, If your Elasticsearch is protected with basic authentication, these setting provide the username and password that the Kibana server uses to perform maintenance on the Kibana index at startup. Kibana users still need to authenticate with Elasticsearch, which is proxied through the Kibana server.
上面这段话是关键。梳理一下问题本源,
-
Configuring security in Elasticsearch
将ELasticsearch的配置文件
elasticsearch.yml
里xpack.security.enabled
设置为true
,实现Elasticsearch的密码保护。这里提到的密码保护,首先是针对内置用户而言。内置用户有不可见的初始密码,首次设定密码是通过Elasticsearch下
path/bin/elasticsearch-setup-passwords interactive
命令实现的。在这里,官方文档写的有问题,文档上是先提到了修改
xpack.security.enabled
为true
,之后才提到path/bin/elasticsearch-setup-passwords interactive
设置内置用户密码,修改xpack.security.enabled
为true
之后先重启ElasticSearch,才能生效 -
path/bin/elasticsearch-setup-passwords interactive
此命令是给内置用户(Built-in users)设置密码。
Built-in users
包括elastic
,kibana_system
,logstash_system
,apm_system
,remote_monitoring_user
.执行
path/bin/elasticsearch-setup-passwords interactive
会提示你为每一个用户设置独立密码。此处我们只需要关心
elastic
和kibana_system
两个就可以。elastic
就相当于其他软件的admin
,在ElasticSearch体系里称为superuser
。这里需要搞明白,
surperuser
是一个role
,elastic
是被赋予superuser
这个role
的一个user
。kibana_system
是Kibana需要用的一个user
。 -
修改Kibana的
kibana.yml
server.name: kibana server.host: "0" elasticsearch.hosts: [ "http://ip:9200" ] # elasticsearch的ip,有时候localhost不行 monitoring.ui.container.elasticsearch.enabled: true elasticsearch.username: "kibana_system" # 刚才提到的Kibana用的built-in user elasticsearch.password: "111111" # 第二步里自己设置的密码
如此,便可连接。
这里有个小细节,
elasticsearch.username
和elasticsearch.password
后面跟的值需要用""
-
-
题外话
默认启动的Kibana连接的是未设置security configure的Elasticsearch,此时两者都不需要登录账户密码,Docs中提到的一些items比如Stack Management>Security>Users/Roles等是看不到的.
只有通过Kibana登录
elastic
这个superuser
之后,才能看到Kibana下的所有项目.
这篇关于(20201218已解决)Kibana server is not ready yet||如何登录Kibana的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!