正常情況下,elasticsearch 希望你的資料被完全的複製和均衡的分布。如果你手動關閉了乙個節點,集群會立刻發現節點的丟失並開始再平衡。如果節點的維護是短期工作的話,這一點就很煩人了,因為大型分片的再平衡需要花費相當的時間(想想嘗試複製 1tb 的資料——即便在高速網路上也是不一般的事情了)。
我們需要的是,告訴 elasticsearch 推遲再平衡,因為對外部因子影響下的集群狀態,我們自己更了解。操作流程如下:
可能的話,停止索引新的資料。雖然不是每次都能真的做到,但是這一步可以幫助提高恢復速度。
禁止分片分配。這一步阻止 elasticsearch 再平衡缺失的分片,直到你告訴它可以進行了。如果你知道維護視窗會很短,這個主意棒極了。你可以像下面這樣禁止分配:
put /_cluster/settings關閉單個節點。}
執行維護/公升級。
重啟節點,然後確認它加入到集群了。
用如下命令重啟分片分配:
put /_cluster/settings分片再平衡會花一些時間。一直等到集群變成}
綠色
狀態後再繼續。
重複第 2 到 6 步操作剩餘節點。
到這步你可以安全的恢復索引了(如果你之前停止了的話),不過等待集群完全均衡後再恢復索引,也會有助於提高處理速度
ES 深度分頁 滾動搜尋
深度分頁其實就是搜尋的深淺度,比如第1頁,第2頁,第10頁,第20頁,是比較淺的 第10000頁,第20000頁就是很深了。使用如下操作 from 9990,size 10 from 9999,size 10 我們在獲取第9999條到10009條資料的時候,其實每個分片都會拿到10009條資料,然後...
nginx重啟 平滑重啟
進入 ngiinx sbin目錄下 nginx c usr local nginx conf nginx.conf c引數指定了要載入的nginx配置檔案路徑 停止操作 停止操作是通過向nginx程序傳送訊號來進行的 步驟1 查詢nginx主程序號 ps ef grep nginx在程序列表裡 面找...
nginx重啟 平滑重啟
進入 ngiinx sbin目錄下 nginx c usr local nginx conf nginx.conf c引數指定了要載入的nginx配置檔案路徑 停止操作 停止操作是通過向nginx程序傳送訊號來進行的 步驟1 查詢nginx主程序號 ps ef grep nginx 在程序列表裡 面...