Kibana 服务器尚未准备就绪



我刚刚在RHEL 8上安装了Kibana 7.3。Kibana 服务处于活动状态(正在运行)。
当我蜷缩到 http://localhost:5601 时,我收到Kibana server is not ready yet消息。 我的 Elasticsearch 实例在另一台服务器上,它正在成功响应我的请求。我已经用它更新了 kibana.yml

elasticsearch.hosts:["http://EXTERNAL-IP-ADDRESS-OF-ES:9200"]

我可以从互联网上访问 Elasticsearch 并得到回应:

{
"name" : "ip-172-31-21-240.ec2.internal",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "y4UjlddiQimGRh29TVZoeA",
"version" : {
"number" : "7.3.1",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "4749ba6",
"build_date" : "2019-08-19T20:19:25.651794Z",
"build_snapshot" : false,
"lucene_version" : "8.1.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

sudo systemctl status kibana的结果:

● kibana.service - Kibana
Loaded: loaded (/etc/systemd/system/kibana.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-09-19 12:22:34 UTC; 24min ago
Main PID: 4912 (node)
Tasks: 21 (limit: 4998)
Memory: 368.8M
CGroup: /system.slice/kibana.service
└─4912 /usr/share/kibana/bin/../node/bin/node --no-warnings --max-http-header-size>
Sep 19 12:46:42 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0>
Sep 19 12:46:42 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0>
Sep 19 12:46:43 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0>
Sep 19 12:46:43 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0>
Sep 19 12:46:43 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0>
Sep 19 12:46:44 ip-172-31-88-39.ec2.internal kibana[4912]: {"type":"log","@timestamp":"2019-0

"须藤日记--木花单位"的结果

Sep 19 06:03:53 ip-172-31-88-39.ec2.internal kibana[1356]: {"type":"log","@timestamp":"2019-09-19T06:03:53Z","tags":["warning","elasticsearch","admin"],"pid":1356,"message":"Unable to revive >
Sep 19 06:03:53 ip-172-31-88-39.ec2.internal kibana[1356]: {"type":"log","@timestamp":"2019-09-19T06:03:53Z","tags":["warning","elasticsearch","admin"],"pid":1356,"message":"No living connect>
Sep 19 06:03:53 ip-172-31-88-39.ec2.internal kibana[1356]: {"type":"log","@timestamp":"2019-09-19T06:03:53Z","tags":["warning","task_manager"],"pid":1356,"message":"PollError No Living connec>
Sep 19 06:03:53 ip-172-31-88-39.ec2.internal kibana[1356]: {"type":"log","@timestamp":"2019-09-19T06:03:53Z","tags":["warning","elasticsearch","admin"],"pid":1356,"message":"Unable to revive >
Sep 19 06:03:53 ip-172-31-88-39.ec2.internal kibana[1356]: {"type":"log","@timestamp":"2019-09-19T06:03:53Z","tags":["warning","elasticsearch","admin"],"pid":1356,"message":"No living connect>

你知道问题出在哪里吗?

当我将Elasticsearch 从 v6 升级到 v7 时,我曾经遇到过同样的问题。

删除.kibana*索引解决了这个问题:

curl --request DELETE 'http://elastic-search-host:9200/.kibana*'

该错误可能与elastic.hosts设置有关。以下步骤对我有用:

  1. 打开/etc/elasticsearch/elasticsearch.yml文件并检查以下设置:

#network.host: localhost

2.打开/etc/kibana/kibana.yml文件并检查设置并检查:

#elasticsearch.hosts: ["http://localhost:9200"]

  1. 检查两行是否具有相同的设置。如果您为 elasticsearch 网络主机使用 IP 地址,则需要对 kibana 应用相同的 IP 地址。

问题是 kibana 无法在本地访问 elasticsearch。

可能不是这个问题的解决方案

就我而言,来自 kibana 和 elasticsearch 的版本不兼容
我如何使用 docker,我只是重新创建了两者,但使用相同的版本 (7.5.1)

https://www.elastic.co/support/matrix#matrix_compatibility

问题是 kibana 无法在本地访问 elasticsearch。 我认为您已经通过以下方式在 elasticsearch.yml 上启用了xpack.security插件 添加新行:

xpack.security.enabled : true

如果是这样,您需要在 Kibana.yml 上取消注释这两行:

elasticsearch.username = kibanaelasticsearch.password = your-password

之后保存更改 并重新启动 Kibana 服务:sudo systemctl restart kibana.service

exec that

curl -XDELETE http://localhost:9200/*kibana*

并重新启动 Kibana 服务

service kibana restart

就我而言,以下更改解决了问题:

<小时 />

/etc/elasticsearch/elasticsearch.yml

取消注释:

#network.host: localhost

而在

/etc/kibana/kibana.yml

取消注释

#elasticsearch.主机: ["http://localhost:9200"]

参考 Kibana unabe 上的讨论,以连接到 Windows 上的 elasticsearch

删除弹性上的.kibana_task_manager_1索引为我解决了这个问题!

这可能有多种原因。要尝试的几件事

  • 验证 Kibana 和 Elasticsearch 之间的版本兼容性,并确保它们根据 https://www.elastic.co/support/matrix#matrix_compatibility
  • 兼容
  • 验证 Kibana 是否未尝试加载某些未安装在主节点上的插件
  • 删除.kibana*Karthik 上面指出的索引

如果它们不起作用,请从kibana.yml打开详细日志记录并重新启动 kibana,以更深入地了解可能导致此问题的原因。

对我来说根本原因是我没有足够的磁盘空间,Kibana 日志有此错误

Action failed with '[index_not_green_timeout] Timeout waiting for the status of the [.kibana_task_manager_8.5.1_001] index to become 'green' Refer to https://www.elastic.co/guide/en/kibana/8.5/resolve-migrations-failures.html#_repeated_time_out_requests_that_eventually_fail for information on how to resolve the issue.

我去了错误中提到的链接 https://www.elastic.co/guide/en/kibana/8.5/resolve-migrations-failures.html#_repeated_time_out_requests_that_eventually_fail

并运行以下请求 https://localhost:9200/_cluster/allocation/explain

他的回应包含这个

"deciders": [
{
"decider": "disk_threshold",
"decision": "NO",
"explanation": "the node is above the low watermark cluster setting [cluster.routing.allocation.disk.watermark.low=85%], having less than the minimum required [21.1gb] free space, actual free: [17.1gb], actual used: [87.8%]"
}

原因可能是:

For Linux's docker hosts only. By default 
virtual memory is not enough so run the next command as root sysctl -w vm.max_map_count=262144

因此,如果您没有执行它,请执行:

sysctl -w vm.max_map_count=262144

如果有帮助,即使在 VM 重新加载后也要使用它,请检查此评论:https://stackoverflow.com/a/50371108/1151741

为了克服此事件,我删除并重新创建了这两个服务器。我已经安装了 ES 和 Kibana 7.4,此外,我还将 ES 服务器的 VM 大小从 t1.micro 增加到 t2.small。 一切都运作良好。在以前的 ES 实例中,实例有时会自行停止。VM RAM 是 1GB,因此我不得不限制 JVM 堆大小,也许这就是整个问题发生的原因。

我的方案最终遇到了同样的问题,但由于对 Elasticsearch 和 Kibana 使用了官方的 Docker 容器。特别是,Kibana 映像上的文档错误地假定您至少拥有一项关键知识。

就我而言,解决方案是确保:

  • 匹配的网络标记
  • 指向 Elasticsearch Docker 容器的链接使用:elasticsearch标记,而不是版本标记。

我犯了一个错误,使用了Elasticsearch容器版本标签。这是我需要的docker run命令的更正格式:

docker run -d --name {Kibana container name to set} --net {network name known to Elasticsearch container} --link {name of Elasticsearch container}:elasticsearch -p 5601:5601 kibana:7.10.1

考虑到上面的命令,如果我们替换...

  • lookeyHere作为 Kibana 容器名称
  • myNet作为网络名称
  • myPersistence作为 Elasticsearch 容器名称

然后我们得到以下内容:

docker run -d --name lookyHere --net myNet --link myPersistence:elasticsearch -p 5601:5601 kibana:7.10.1

:elasticsearch对于使其正常工作至关重要,因为它在/etc/kibana/kibana.yml文件中设置了#elasticsearch.hosts值......如果您使用的是官方 Docker 映像,您将无法轻松修改。@user8832381上面的回答给了我解决这个问题所需的方向。

希望这将为某人节省几个小时。

其中一个问题可能是您运行的 Kibana 版本与 elasticsearch 不兼容。

使用sudo tail /var/log/kibana/kibana.log检查日志文件的底部

我正在使用 Ubuntu。我可以在日志文件中看到以下消息:

{"type":"log","@timestamp":"2021-11-02T15:46:07+04:00","tags":["error","savedobjects-service"],"pid":3801445,"message":"This Kibana (v7.15.1) 版本与以下内容不兼容 集群中的 Elasticsearch 节点:v7.9.3 @ localhost/127.0.0.1:9200 (127.0.0.1)"}

现在你需要安装与 elasticsearch 相同版本的 Kibana。例如,您可以在我的系统中看到安装了 elasticsearch 7.9.3,但安装了 Kibana 7.15.1。

我是如何解决这个问题的?

  1. 使用sudo apt-get remove kibana移除了基巴纳
  2. 使用以下命令安装 kibana 7.9.3:

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.9.3-amd64.deb
shasum -a 512 kibana-7.9.3-amd64.deb
sudo dpkg -i kibana-7.9.3-amd64.deb
sudo service kibana start
curl --request DELETE 'http://localhost:9200/.kibana*'

修改/etc/kibana/kibana.yml 文件并在以下行取消注释:

server.port: 5601
server.host: "localhost"
elasticsearch.hosts: ["http://localhost:9200"]

并在浏览器中打开下面的网址: http://localhost:5601/app/home

类似地,您可以检查 elasticsearch 版本并安装相同版本的 kibana。

  • 在我的版本中,我更改了IP地址。 因为我使用 docker 来启动它们并使用桥接连接它们。 最后我更改了我的 IP 地址,然后重新启动 docker con。 它对我有用。

在我的情况下,服务器已更新,SELinux 正在阻止本地主机:9200 连接,并显示连接被拒绝消息。

您可以在/etc/selinux/config中检查它是否已启用。

转到 Kibana 目录,在 config 文件夹中找到 kibana.yml 文件。将属性更改为elasticsearch.hosts: ['https://localhost:9200']。那里写了一些IP地址,所以我们将其更改为localhost

在我的案例中,在/etc/kibana/kibana 中存在关于 ElasticS 和 Kibana 之间不兼容的明显错误.log

{"service":{"node":{"roles":["background_tasks","ui"]}},"ecs":{"version":"8.6.0"},"@timestamp":"2023-04-14T01:21:55.398+02:00","message":"This version of Kibana (v8.7.0) is incompatible with the following Elasticsearch nodes in your cluster: v7.17.9 @ 192.168.0.28:9200 (192.168.0.28)","log":{"level":"ERROR","logger":"elasticsearch-service"},"process":{"pid":118729},"trace":{"id":"66aaf063bef7d7a991c27883f4ad7e4a"},"transaction":{"id":"8f10d4e6d10975d0"}}

https://www.elastic.co/support/matrix#matrix_compatibility