The health column is showing yellow for logstash index , even after deleting old ones they re recreated with yellow health. I have clusters for this setup and have checked shards using below.
GET _cluster/health :
{
"cluster_name" : "elasticsearch",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 2,
"number_of_data_nodes" : 2,
"active_primary_shards" : 12,
"active_shards" : 22,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 3,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 88.46153846153845
}
你知道怎么把它变成绿色吗?此外,由于这个问题,索引没有每天创建。
黄色健康状况表示已分配主碎片,但未分配副本。这可能是因为您的弹性体仅使用一个节点进行部署。Elastic不会在同一节点上分配主碎片和副本碎片,因为它没有任何用途。当您有多个节点和多个碎片时,弹性默认情况下会将主节点和副本分配给不同的节点。
从您提供的数据中可以看出,您有22个活动碎片,只有2个节点。未分配的碎片,即3,是导致黄色集群运行状况的问题。
为了解决这个问题,你可以做两件事。
- 如果您使用弹性测试,您可以用一个碎片(没有副本(启动服务器。在这种情况下,弹性服务中有一个节点
- 如果您在生产中,并且想要多个碎片(主+副本(,那么节点的数量应该等于碎片的总数。例如,如果您有1个主副本和2个副本,则使用3个节点启动服务器
请记住在启动弹性服务器时执行此操作。
黄色健康的危害是,如果你的主碎片坏了,你将失去服务和数据。