Kibana 最常见的“启动报错”或“无法连接ES集群服务”的故障原因及解决方案汇总

这篇具有很好参考价值的文章主要介绍了Kibana 最常见的“启动报错”或“无法连接ES集群服务”的故障原因及解决方案汇总。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、引言

新手最常见的 Kibana 服务不可用的问题解答,此类问题如非有经验积累,可能耗费大量时间还不能解决,所以我特此整理了新手常见的 Kibana连不上集群或启动报错的问题及解决方案。

可能会有遗漏,如果你遇到的问题不在此列表,请私信提问,我会在此补充。

2、问题汇总

2.1 Kibana server is not ready yet

  • Kibana 服务正在启动中

    解决方案:Kibana 启动需要一定时间,耐心等待 Kibana服务启动完成,这是最常见的原因。

  • Kibana 和 Elasticsearch 的版本不兼容。

    问题描述,Kibana 和 Elasticsearch 需保证所用版本互相兼容。

    解决方案:检查版本兼容性,参考:兼容性列表。

  • Elasticsearch 的服务地址和 Kibana 中配置的 elasticsearch.hosts 不匹配
    kibana无法连接elasticsearch,Elastic Stack,elasticsearch

    问题描述:如下图所示,Kibana 配置文件中配置的服务列表和实际启动集群中节点信息不一致,这里可以少配置,但是不能错误配置

    解决方案:修改配置文件,保证配置文件中和集群服务的节点信息一致

  • Elasticsearch中禁止跨域访问

    解决方案:在 ES 的服务节点中加入以下两行配置

    http.cors.enabled: true
    http.cors.allow-origin: "*"
    
  • Elasticsearch服务所在㐏磁盘剩余空间不足85%

    问题描述:当服务器剩余磁盘空间不足 85% 的时候,ES会阻止数据的持续写入,可能会导致分片不可用。
    解决方案:清理磁盘空间,保证剩余使用空间大于 15%

  • ES 服务的健康状态异常
    健康状态

    绿色:所有分片都可用
    黄色:至少有一个副本不可用,但是所有主分片都可用
    红色:至少有一个主分片不可用,数据不完整

    健康值检查

    GET _cat/health
    GET _cluster/health
    
  • 节点未成功加入集群

    问题描述:这是最常见的 Kibana 连不上ES集群服务的原因,即:集群服务不可用,这种情况有可能单独访问每个节点都是没问题的,但是通过_cat/nodes输出集群节点信息就会报错。

    解决方案:删除每个节点的 data 目录(开发环境),重启每个节点

  • 开启security之后,登录角色未配置kibana user角色,注意kibana system不行

    问题描述:当开启 Serurity 之后,访问远程集群需要提供SSL证书,不管是集群之间通信还是客户端访问都是一样

    解决方案:给 Kibana 配置Security功能,配置账户名密码,账户需要具有kibana_user角色,而不是kibana_sysem或者kibana_admin

2.2 服务无法访问

kibana无法连接elasticsearch,Elastic Stack,elasticsearch

  • 防火墙阻止了指定端口的访问

    关闭本地防火墙(CentOS 7)

    //临时关闭
    systemctl stop firewalld
    //禁止开机启动
    systemctl disable firewalld
    

    云服务器关闭防火墙

    需要登录云服务器提供商后台管理系统,打开控制台,选择防火墙,开放指定端口

2.3 [.kibana] Action failed with ‘search_phase_execution_exception’. Retrying attempt 6 in 64 seconds.

解决方案:先检查集群状态是否正常,不仅仅是分片是否可用,还要检查集群是否选主成功。使用_cat/nodes查看每个节点是否的正常输出,如果不正常,课删除每个节点的data目录,重启每个节点服务。

2.4 Unable to retrieve version information from Elasticsearch nodes

报错是无法获取Elasticsearch集群的版本信息,原因有两种

  • 集群服务不可用
  • Kibana 权限不够
  • Kibana 中 ES 集群服务地址配置错误

2.5 unable to complete saved object migrations for the [.kibana_task_manager] index.

kibana无法连接elasticsearch,Elastic Stack,elasticsearch

由于Kibana的一些索引也是需要保存在ES集群中给的,造成此报错的原因大概率是 Kibana 无法将数据保存至急群中,可能的原因有以下几种

  • Kibana 当前运行实例登录的账号没有写入权限

    解决办法:检查登录账号是否包含 kibana_user 的角色。或者是否通过 RBAC 限制了写入权限。此原因为小概率发生的事件

  • Elastc 集群健康状况异常,导致索引数据无法写入。

    解决办法:首先检查集群健康状态,

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CvXV4YEA-1650954718829)(/Users/wulei/Library/Application Support/typora-user-images/image-20220426134809076.png)]

    可通过 _cat/health_cluster/health 检查,如果集群中包含未分配状态的分片,

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IVGYvl38-1650954718830)(/Users/wulei/Library/Application Support/typora-user-images/image-20220426134737460.png)]

    可通过``GET _cluster/allocation/explain`查分片未分配原因

3、生产和开发环境的不同处理策略

针对开发环境删除data目录解决ES服务无法启动的方法,如遇生产环境如何解决?

提问

前提条件:已搭建好的es集群:
node1为主节点,node2是从节点,两者都没有设置node. roles角色,且在集群已存在数据分片

现象

现在修改集群配置node2为初始主节点
,并配置node1 node. roles为data和master,node2的角色为master,重启集群node1启动成功,node2节点启动时报错不允许启动,原因是已存在数据分片但又没有data角色,删除node2的数据后node2能启动成功
此时的问题是按配置node2为主节点没有问题,但是检查集群节点状况就只有一个node2,并为主节点,node1并没有加入到集群成为从节点,是什么原因呢?
解决:删除了node1的数据后重启node1,node1成功加入集群,但是生产应该不能这么操作,该怎么解决?

解答

首先生产环境是有严格的上线步骤的,不允许你随意启动和关闭服务以及随意修改配置文件,就比如你一开始啥都不配置启动集群,然后一个节点一个节点的修改配置文件单个节点重启这种行为肯定是不允许的。生产环境在对集群的任何修改之前都有详细的计划,包括数据的备份迁移以及事故发生后如何回滚。

一但生产环境出现上述问题,首先node1因为有旧的集群状态信息而导致无法加入集群,那么就需要登录node1所在集群删除其冲突数据,并做好业务数据的备份工作,然后重新启动节点加入新集群。集群状态信息有单独的索引保存,文章来源地址https://www.toymoban.com/news/detail-786079.html

到了这里,关于Kibana 最常见的“启动报错”或“无法连接ES集群服务”的故障原因及解决方案汇总的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • RocketMQ主从集群broker无法启动,日志报错

    使用vmWare安装的centOS7.9虚拟机,RocketMQ5.1.3 在rocketMQ的bin目录里使用相对路径的方式启动broker,jps查询显示没有启动,日志报错如下 排查配置文件没有问题,nameServer也已经正常启动 更换绝对路径,启动broker,就可以正常启动  

    2024年02月16日
    浏览(34)
  • kettle连接MySql启动报错常见错误解决

    连接MySql数据库 报错一 报错原因:这个报错的原因是因为当前的kettle目录下没有需要连接的数据库驱动,所以我们需要下载一个驱动放到他的lib包里重新启动即可,我创建的是mysql连接所以需要mysql连接驱动 解决方法: maven仓库下载合适的启动jar包,我选择的是下载人数最多

    2024年02月08日
    浏览(40)
  • FileZilla无法连接服务器的常见问题

    FileZilla是一款免费的TFP软件,具备大部分FTP的功能,界面操作简单,适合所有阶段的用户。FTP是英文File Transfer Protocol的缩写,也就是文件传输协议的意思。所以,FileZilla一般用于连接服务器,管理站点文件传输等作用。这款软件有客户端版和服务器版两个。在使用时需要在本

    2023年04月25日
    浏览(36)
  • 启动Oculus应用报“无法连接Oculus服务”

    解决方案是需要修改hosts 首先来到以下路径: C:WindowsSystem32driversetc 这个时候可以看到hosts 打开方式用记事本打开,并且在下面添加如下内容: 157.240.11.49 graph.oculus.com 157.240.11.49 www2.oculus.com 157.240.11.49 scontent.oculuscdn.com 157.240.11.49 securecdn.oculus.com 157.240.19.49 graph.oculus.com 157

    2024年02月08日
    浏览(20)
  • 错误记录——mysql5.7连接失败,服务无法启动

    上周安装完mysql后,成功新建了数据库,一切都是正常的,于是就先搁置一旁。今天周一过来,却突然发现无法连接mysql了。 第一反应是服务没有启动,毕竟重启了电脑,说不定是服务没有自动启动,于是打开了服务管理器,却发现没有mysql对应的服务。既然没有,那我就自己

    2024年02月08日
    浏览(27)
  • SSH连接问题解决方案:服务器无法启动SSH服务

    在处理服务器管理和远程连接时,SSH(Secure Shell)是一个常用的工具。然而,有时候我们可能会遇到SSH启动失败的问题,导致无法通过SSH连接到服务器。本文将介绍一些解决SSH启动失败的常见方法。 检查SSH服务状态 首先,我们需要确认SSH服务的状态。可以通过以下命令检查

    2024年02月04日
    浏览(42)
  • Kibana配置ES集群(版本号8.3.3)

    注意kibana只支持非root启动,我没有新建用户,还是用的elasticsearch101

    2024年02月11日
    浏览(24)
  • ElasticStack日志分析平台-ES 集群、Kibana与Kafka

    Elasticsearch 是一个开源的分布式搜索和分析引擎,Logstash 和 Beats 收集的数据可以存储在 Elasticsearch 中进行搜索和分析。 Elasticsearch为所有类型的数据提供近乎实时的搜索和分析:一旦数据被索引,它就可以立即被搜索和分析,这种实时性使得用户能够即时获取最新数据的搜索

    2024年02月04日
    浏览(27)
  • navcat连接服务器sql server报错常见问题

    今天在服务器部署sql server,想用我电脑的Navcat来连接,结果报错,各种方法,找了几个小时,真无语。。。其实就是一些很常见的问题,可以检查以下这些问题。 报错信息如下: 翻译翻译: 目前大多数的服务器提供商基本都加了端口的限制。如果是用的腾讯、或者阿里之类

    2024年02月06日
    浏览(36)
  • MySQL报错——Windows无法启动MySQL服务(位于本地计算机上)。错误⒉系统找不到指定的文件。、windows无法启动MySQL服务出现1053错误解决方法

    今天想使用MySQL,想在命令行窗口启动MySQL, 于是执行了如下命令: 结果报错了,如下图所示: 然后又去服务里面手动启动  结果不出所料的还是报错了,错误提示如下图所示:  看到错误提示上写有:“系统找不到指定的文件” 于是我就去看了一下路径, 我寻着路

    2024年02月06日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包