elasticsearch的status一直是red的解决方案

1、使用curl -XGET 'http://192.168.88.2:9200/_cluster/health?pretty'查看索引的状态发现:

{
    
    
  "cluster_name" : "my-application",
  "status" : "red",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 0,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 10,
  "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" : 0.0
}

其中status显示red,解决方式如下:
输入:curl -XGET 'HTTP://192.168.88.2:9200/_cat/indices?v'指令查看es下面所有索引的信息,显示如下:

health status index    uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   student  ss8sT5QQTLyyt944uJ0Ssg   1   2                                                  
red    open   es       6eEFQgP6Rz-bEc_d2NfAew   1   1                                                  
yellow open   stut     Z3Mg3_P-QeOPvibDGufm1g   1   1                                                  
red    open   es_index eOTnZs4vS2ecKHg_79qt9A   1   2                                                  

其中索引es和es_index的健康状态为red,student和stut的健康状态为yellow,接下啦删除健康状态为red的索引即可。
输入以下指令:

curl -XDELETE 'http://192.168.88.2:9200/es'
curl -XDELETE 'http://192.168.88.2:9200/es_index'

执行指令后,再次查看索引状态,显示yellow!red问题解决!

curl -XGET 'http://192.168.88.2:9200/_cluster/health?pretty'
{
    
    
  "cluster_name" : "my-application",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 0,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 5,
  "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" : 0.0
}

猜你喜欢

转载自blog.csdn.net/weixin_43365615/article/details/112607164