目的:尝试修复触发bug的ES集群,先升级再降级。
因为无法完全模拟客户环境(bug触发状态),仅作恢复故障集群的参考。
一、初始环境 ES 版本7.3.2,建立模拟数据。
建立4个索引,插入数据,删除两个索引。在graveyard中可观察到被删除索引。
POST test/_doc
{ "test":"test"}
POST test1/_doc
{ "test":"test"}
POST test2/_doc
{ "test":"test"}
POST test3/_doc
{ "test":"test"}
DELETE test,test1
GET _cat/indices?v
GET _cluster/state?filter_path=*.*yard
二、升级elasticsearch到7.6版本。
1. 关闭7.3.2集群,用7.6版本软件打开7.3.2集群。
2. 关闭7.6集群。
3. 清理graveyard
elasticsearch-node remove-customs index-graveyard
4. 用7.3.2 中的bin/elasticsearch-node 降级
5. 再用7.3.2 打开
6. 检查数据还在,graveyard已经空了