Elastic实战: 集群报黄如何处理

简介: 集群的有三种状态:绿色:正常状态,表示主副分片都正常黄色:主分片正常,至少一个副本分片不可用,该状态下仍然可以正常查询红色:至少一个主分片不可用,可以查询到部分数据,但是数据不具备完整性

0、引言

今天群里有小伙伴讨论公司集群报黄的问题,特此记录,以供后续的同学参考

1、原因

集群的有三种状态:
绿色:正常状态,表示主副分片都正常
黄色:主分片正常,至少一个副本分片不可用,该状态下仍然可以正常查询
红色:至少一个主分片不可用,可以查询到部分数据,但是数据不具备完整性

2、解决

由上述表示可知,集群报黄归根结底是一个原因,至少一个副本分片不可用。但是造成这个情况的形式不止一种,目前已知的有:

2.1 副本分片数过大

主副分片是不允许在同一节点上的,如果副本分片数设置的过大,导致副本分片无节点可分配的话就会导致这个问题。而这里的过大也是相对于集群节点数而言的,如果是单节点集群,副本分片数即使为1也是过大,因为肯定会和主分片处在同一个节点上。

可以通过以下指令排查

# 查询分片状态,观察哪些索引是yellow
GET _cat/shards?v
# 找到yellow 索引,查询settings
GET <index>/_settings

解决

1、手动设置副本分片数,将其调整为0或者一个合适值:

PUT /cs_indexs/_settings
{
  "number_of_replicas": 0
}

需要注意的是,副本分片的作用是主分片的备份,所以如果设置为0的话就意味着没有备份了。

2、增加节点数量也可解决此类问题

2.2 磁盘占用数超85%

官方文档中有记录,默认是不会将分片分配给磁盘占用率超85%的节点的,所以检查下你服务器的磁盘占用量
在这里插入图片描述
可以通过df -h指令查看磁盘占用量
在这里插入图片描述

解决

1、拓展磁盘空间
2、删除无用索引数据

2.3 网络问题

节点无法连接到集群,自然会使节点无法分配分片,也会导致报黄设置报红。当集群出现一会报黄一会正常的情况,就要考虑下是否是某部分节点存在网络波动或者其他问题导致连接不稳定

如果上述两种情况都不满足的话,排查一下是否是网络的问题。

用docker安装的集群,要重点排查下这种情况

如果你还遇到其他的情况,请留言告诉我

目录
相关文章
|
SQL 存储 关系型数据库
异构数据库、异构数据源、分布式数据库三者的辨析区别
异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。
|
Kubernetes 安全 Linux
使用kubeadm快速部署一个k8s集群
使用kubeadm快速部署一个k8s集群
|
canal SQL JSON
Elastic: canal数据同步到ES配置常见报错
所有报错均为博主在实操过程中遇到的错误和解决办法,如果有其他报错或者不同的解决办法,请留言告诉我 安装canal过程中遇到问题,先在本文中查询是否有相同报错,将会为你节约大量排错时间
1322 0
Elastic: canal数据同步到ES配置常见报错
|
10月前
|
设计模式 Java Go
【再谈设计模式】状态模式~对象行为的状态驱动者
状态模式属于行为型设计模式。它将对象的行为封装在不同的状态类中,使得对象在不同的状态下表现出不同的行为。上下文(Context):这是一个包含状态对象的类,它定义了客户感兴趣的接口,并维护一个具体状态对象的引用。上下文将操作委托给当前的状态对象来处理。抽象状态(State):这是一个抽象类或者接口,它定义了一个特定状态下的行为接口。所有具体的状态类都实现这个接口。具体状态(Concrete State):这些是实现抽象状态接口的类,每个具体状态类实现了与该状态相关的行为。
372 18
|
canal 消息中间件 关系型数据库
Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
【9月更文挑战第1天】Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
1805 4
|
安全 Linux 网络安全
Linux端的ssh如何升级?
Linux端的ssh如何升级?
1081 59
PowerShell快速修改多个文件的名称
【8月更文挑战第28天】在PowerShell中批量重命名文件可通过以下方法实现:1)使用`Rename-Item`命令逐一重命名;2)通过循环批量处理特定模式的文件名更改;3)利用正则表达式进行复杂模式匹配与替换。操作前请确保验证命令并备份文件。
1045 1
|
IDE 开发者 iOS开发
京东开源的 JD-Hotkey:高效热键管理的技术巅峰
【10月更文挑战第5天】在快节奏的工作与学习中,提高操作效率是每位技术爱好者不懈追求的目标。今天,我们将深入探讨京东开源的 JD-Hotkey 项目,它不仅是一个强大的热键管理工具,更是我们在日常工作中提升生产力的秘密武器。通过本文,你将了解到 JD-Hotkey 的核心功能、技术亮点以及在实际应用中的卓越表现,一同感受其带来的高效与便捷。
725 4
Elasticsearch 查看磁盘占用 查看指定索引磁盘占用
【7月更文挑战第2天】Elasticsearch 查看磁盘占用 查看指定索引磁盘占用
|
canal 存储 NoSQL
mysql进阶:canal搭建主从|集群架构
之前我们讲解过canal的各种应用,但是对于生产环境来讲,服务高可用是必须保证的。因此canal单节点是不能满足我们的需求的。就需要搭建canal集群。
1565 2
mysql进阶:canal搭建主从|集群架构

热门文章

最新文章