Force Merge Force merge action can clean up docs.delete, make read preformace better and save more disks space for the snapshot. Please refer to ES Document https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-forcemerge.html Run Step 1. 警告 The response will be sent utils the forcemerge action is done. So you will usually encounter timeout on the production indices. After enter the request, you can skip to wait manually. POST qlog-b-202105-0521-000004/_forcemerge?max_num_segments=1 // Ctrl C? or waiting
Reindex Refer to https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-reindex.html Reindex: If you want to merge different concrete indices. Sometimes if the indices is not balance like too many tiny indices or can not shrink number of shards to suitable number. Brief introduction Create the new dest indices Call _reindex action Check reindex running status Recover the indices setting to the new dest indices Delete the old indices Example We want to merge qlog-fff-202105-000002, qlog-fff-202104-1 Run
Shrink the number of shards Brief introduction Move all indices data into the same data node and block writing Check data moving status util finish Call _shrink api and assign the new name and settings(included # of shards) Check the new indices creation status Set the replica back, and check the new one and old one whether the doc.count is the same or not. Delete old indices. (Be careful for
如何透過 ES Reindex API
以及 alias 搭配不停機 indices 合併?
首先,確保你的環境寫入是針對 Alias Target 做寫入,這樣就可以在後面隨便你搞不停機。
Elasticsearch 在日常維運中常常有需要透過 Kibana 提供的 RESTful API 來做一些叢集參數調整與處理。