引子
绿色:主分片和副本都可用。
黄色:所有主分片可用,部分副本 不可用。
红色:至少一个主分片分配失败。
如何解决集群健康黄色问题
首先确定一下,你是否是在单节点测试ES,如果你只有一个节点,那么副本分片不可用是正常的。
副本分片只有在集群中才有意义,单节点的副本,如果节点挂掉了,主分片和副本分片同时over,所以,如果你是单节点分片,那么不用管它是不是黄色,主分片能够正常工作,没问题的。
如果你看黄色这个颜色不顺眼,你喜欢绿油油的颜色。
你在创建索引库的时候,指定一下副本分片为0,就可以看到你喜欢的绿色了。
如何解决集群健康红色问题
第一步:查日志
最常见的报错信息为:集群服务连接超时
具体原因为:某个节点的主分片没有分配。
第二步:问题解决
思路要明确,为什么这个主分片没有分配到某个节点呢?
别的都可以,为什么你不可以,是不是你有毛病,毛病在哪里?
明确一下master分配node的工作流程。
每一个主分片和它本身的副本分片都不会在同一个node里,鸡蛋不会放在同一个篮子里。
包括该主分片的副本,也不会在同一个node里。
这就说明master分配分片是有一定规则的,是有一定条件的。
如果不满足这个条件,这个分片就会没地方放,就会red。
集群节点数量>=集群所有索引的副本最大值+1。
这个公式举个例子,
你有十个节点,这十个节点中最大索引副本数量只能是9个,这九个副本在另外九个节点中,一个节点存一个,满足了master分配分片的原则。
那么如何处理呢,节点不够分配了,两种方法:
1、新增节点。
2、删除副本。