ES 集群調整、升級 最佳實踐


日常應用中我們會經常對es 集群做一些參數調整或者升級版本,但是每次關閉節點再打開 其中的數據同步的痛苦估計有很多人領悟過(有可能出現IO或者網絡擁堵導致惡性循環)官網有套方案可以嘗試一下:

1.關掉集群 分片 自動分配設置

PUT /_cluster/settings
{
  "transient": {
    "cluster.routing.allocation.enable": "none"
  }
}

2.停掉不必要的索引維護 讓碎片恢復的更快

POST /_flush/synced

3.停掉需要升級的節點,配置或者升級,推薦覆蓋 之前的elasticsearch.yml 配置文件,記得copy data 文件夾 。

4.啟動升級好的節點 查看狀態

GET _cat/nodes

5.重新開啟集群 分片 自動分配

PUT /_cluster/settings
{
  "transient": {
    "cluster.routing.allocation.enable": "all"
  }
}

6.等待節點恢復

GET _cat/health

如果沒有第二部操作,那估計得需要比較多的時間恢復,用下面api查詢恢復狀態,當然我推薦插件 kopf

GET _cat/recovery

7. 重復上面步驟來升級所有需要升級的節點

PS : 千萬注意 數據只能從 低版本到高版本,不能逆向~ 切記

參考官網
https://www.elastic.co/guide/en/elasticsearch/reference/2.2/rolling-upgrades.html#_step_2_stop_non_essential_indexing_and_perform_a_synced_flush_optional


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM