全部產品
Search
文件中心

Elasticsearch:升配叢集

更新時間:Jul 02, 2026

當Elasticsearch(ES)叢集的CPU、記憶體、磁碟等資源使用率持續處於高位,或查詢與寫入效能無法滿足業務需求時,可通過擴充節點數量、 提升節點規格、增加磁碟空間、新增節點類型等方式升級叢集配置,恢複服務穩定性。

升配前須知

重要

升配操作可能引發服務延遲、配置衝突及費用變更,請務必提前完整閱讀以下須知內容。

  • 服務穩定性

    • 叢集變更期間服務穩定性規則:

      叢集

      服務狀態

      應對措施

      正常負載+有副本

      正常負載:CPU≤60%、堆記憶體≤50% 、load<核心數

      持續服務,效能可能輕微下降

      無需額外操作

      高負載+無副本

      高負載:升配時高並發寫入或者查詢,CPU>60%、堆記憶體>50%

      偶發訪問逾時

      • 用戶端啟用重試機制

      • 升配前增加索引複本數

      高負載+狀態異常

      偶發訪問逾時或者抖動

      修複叢集狀態後再變更

    • 操作視窗:業務低峰期進行。

  • 容量規劃

    合理評估叢集所需容量

  • 配置約束

    • 升配不支援版本升級。

    • 一次升配操作僅支援變更一種類型的節點。

  • 成本影響

    提交升配訂單後,系統將按照更新後的配置單計費。計費規則請參見隨用隨付訂用帳戶

升配前檢查

重要

未完成以下檢查直接升配可能導致叢集崩潰、資料丟失或服務不可用,請逐項檢查驗證。

  • 叢集健康

    執行GET _cluster/health 確保叢集為狀態為GREEN。如遇叢集狀態不健康,請參照叢集變更報錯-叢集狀態不健康進行解決。

  • 負載安全

    執行GET _cat/nodes?v ,建議CPU ≤ 60%,如果超出,用戶端啟用重試機制,同時增加索引複本數。

  • 索引就緒

    • 執行GET /_cat/indices?v檢查是否存在狀態為CLOSE的索引。如果存在,需執行POST /<index_name>/_open臨時開啟這些索引,否則配置變更可能失敗,原因說明:

      • 存在CLOSE狀態的索引時,叢集狀態無法達到GREEN。ES在執行某些敏感配置變更(如分區分配規則調整)前會強制要求叢集狀態為GREEN。

      • 變更配置過程中叢集會重新分配分區:

        • 關閉索引的分區無法參與重分配。

        • 導致依賴GREEN狀態的操作失敗。

        • 導致叢集狀態無法達到GREEN(最高只能達到YELLOW)。

    • 執行GET _cat/indices?v檢查索引複本數是否至少為1。

      對於多可用性區域執行個體,在變更時需確保叢集中任意一個索引的副本數小於可用性區域數,建議副本數設定為1,變更完成後,手動增加副本數。

  • 分區均衡

    執行GET _cat/shards?v檢查是否存在不均衡的分區。

    重要

    升配前檢查分區分布是否均衡,是預防升配過程中或完成後叢集效能惡化甚至崩潰的關鍵措施。

    • prirep:副本分區(r)是否未分配(UNASSIGNED)。

    • state:是否存在長期遷移卡住(RELOCATING)。

    上述問題會阻止新節點正常接收分區,導致升配後叢集狀態持續YELLOW/RED,如存在上述問題,請參見叢集負載不均解決方案進行解決。

方式一:通過控制台升配

  1. 執行個體列表,單擊升配

    更多操作入口:在基本資料頁面,單擊配置變更 > 節點擴容

  2. 變配頁面,根據業務需要調整配置項參數。

    重要

    可調整的配置項參數因叢集類型和版本不同而有所出入,以升配頁面為準。

    • 可用性區域數量變更配置規則如下,如遇可用性區域規格庫存不足時,需遷移可用性區域下的節點後再升配。

      擴增:支援從 1 個可用性區域擴增至 2 個或 3 個可用性區域。

    • 支援節點規格(節點儲存類型)升級,按效能從低到高排序:

      1. 上一代雲端硬碟:雲端硬碟(普通雲端硬碟)-> 高效雲端硬碟->SSD雲端硬碟。

        說明

        已在部分地區及可用性區域逐步停止售賣,您在選擇雲端硬碟時,建議選用ESSD雲端硬碟。

      2. ESSD雲端硬碟:ESSD(Enterprise SSD)雲端硬碟結合25 GE網路和RDMA技術,為您提供單盤高達100萬的隨機讀寫能力和單路低時延效能。

      3. 本地碟。

        說明

        本地碟是ECS執行個體所在物理機上的本地硬碟裝置,為ECS執行個體提供本機存放區訪問能力,適用於對儲存I/O效能、海量儲存性價比有極高要求的業務情境。

      SSD 雲端硬碟升級為 ESSD 雲端硬碟

      當叢集磁碟 IOUtil 使用率較高且經常打滿時,建議將磁碟類型從 SSD 雲端硬碟升級為 ESSD 雲端硬碟,以提升 I/O 效能。

      組合變更注意事項:若需同時進行規格升配、磁碟類型變更及擴容,請注意修改磁碟類型不支援原地變更,僅支援藍綠變更。為避免多次資料移轉,建議分步操作:

      1. 先進行執行個體規格變更和擴容(可使用智能變更或原地變更),待服務恢複後再執行下一步。

      2. 單獨進行磁碟類型變更(藍綠變更)。藍綠變更僅在資料同步完成切換節點時可能有閃斷,對業務影響較小。

    • 智能變更(預設開啟):系統根據變更配置項自動選擇最優變更方式。可手動關閉並指定變更方式:

      變更方式

      原理

      耗時

      服務影響和使用情境

      藍綠變更

      添加新節點→拷貝資料→無縫切換

      較長

      • 節點IP會發生變化、叢集效能可能出現短暫波動。

      • 適用於對變更時間長度不敏感,對叢集可用性要求較高的情境。

      原地變更

      變換節點(無需資料拷貝)

      較短

      • 節點IP無變化、叢集效能可能出現短暫波動。

      • 適用於叢集遇到效能瓶頸,期望快速完成變更的情境。

        重要

        如果水位較高(如CPU>60%),謹慎選擇原地變更。

      說明

      原地變更並非所有操作都會觸發滾動重啟:

      • 節點規格變更(如升級 CPU、記憶體)會逐個重啟節點完成變更。

      • v3 執行個體擴容磁碟僅執行線上擴容,無需重啟節點。

    • 強制變更:跳過健全狀態檢查,但會觸發叢集強制重啟,可能導致服務長時間中斷(恢復取決於資料量),僅用於緊急擴容且叢集已不可用情境。

  3. 單擊查看产品服务协议服务等级协议,無異議後,單擊立即购买,系統按照付費方式收取費用。

    變更期間,叢集狀態變為生效中,叢集效能可能出現短暫波動,可能出現請求閃斷;變更完成後,叢集狀態更新為正常

方式二:調用API升配

叢集升配API文檔:UpdateInstance

進度監控與升配後驗證

  • 升配開始後查看進度:通過控制台->Elasticsearch執行個體->執行個體基本資料,單擊展開詳情

  • 升配完成後通過叢集基本資料頁確認配置是否生效:

    • 叢集狀態恢複為正常表示配置已生效。

    • 可用性區域是否與預期一致。

    • 節點數和儲存規格:確認新節點已加入叢集、儲存規格是否正確。

    • 分區均衡:GET _cat/allocation?v 檢查分區分布,如遇分區不均衡,請參考叢集負載不均解決方案進行解決。

常見問題

升配與效能指標

Q:升配一定能解決我的ES叢集效能問題嗎?

A:不一定。升配(增加CPU、記憶體、磁碟等資源)並非萬能解決方案。在決定升配前,請先分析具體瓶頸:

  • CPU瓶頸:持續長時間超過80%的CPU使用率(非短暫峰值)

  • 記憶體瓶頸:頻繁出現GC時間過長、記憶體交換(swap)或OOM錯誤

  • 磁碟瓶頸:關注實際I/O輸送量而非僅看%util指標(詳見下文)

  • 網路瓶頸:網路頻寬持續打滿,延遲明顯增加

升配前請先確認實際瓶頸所在,避免不必要的資源浪費。有時通過索引最佳化、查詢最佳化或調整配置可能比單純升配更有效。

Q:為什麼我的%util指標經常達到100%,但系統似乎運行正常?

A:iostat中的%util指標表示裝置有I/O(即非空閑)的時間比率,不考慮I/O請求量有多少,只考慮有沒有I/O活動。由於現代硬碟裝置具備平行處理多個I/O請求的能力,即使%util達到100%,也不意味著裝置已飽和:

  • 例如:某硬碟處理單個I/O需要0.1秒,有能力同時處理10個I/O請求

    • 當10個I/O請求依次提交時,需要1秒完成,此時%util為100%

    • 若10個I/O請求一次性提交,0.1秒就完成,此時%util只有10%

重要提示:%util指標在現代儲存系統中已基本失去參考意義,不應僅憑此指標判斷是否需要升配。

Q:應該關注哪些指標來判斷磁碟效能瓶頸?

A:應重點關注以下指標而非僅看%util:

  1. I/O輸送量:實際讀寫資料的速率(MB/s),與您的業務需求對比

  2. 回應時間:I/O請求的延遲時間,直接影響查詢效能

  3. IOPS:每秒I/O運算元量,與業務模式比對

  4. 隊列深度:反映I/O請求等待情況

建議:非長時間(持續數小時)達到100%的%util指標無需特別關注。真正的效能瓶頸應通過fio等專業工具進行壓測,擷取實際的極限頻寬和IOPS值來判斷。

Q:如何正確評估磁碟是否達到效能瓶頸?

A:請按以下步驟進行評估:

  1. 分析業務模式:瞭解您的讀寫比例、I/O大小等特徵

  2. 關注實際輸送量:與業務需求對比,而非僅看%util

  3. 使用專業工具測試:通過fio等工具類比實際業務負載,測試磁碟在真實情境下的效能

  4. 評估查詢延遲:ES查詢回應時間是否滿足業務要求

  5. 監控關鍵計量:如indexing latency、search latency等ES內部指標

如需確認是否需要升配,請提供完整的效能監控資料,包括但不限於:CPU使用率、記憶體使用量情況、I/O輸送量、查詢延遲等,而非僅基於單一指標做決策。

升配操作影響

Q:升配叢集支付後是否立即觸發重啟?能否指定重啟時間?

A:變更配置(如升配、擴節點)在提交並支付後,系統將立即觸發變更與重啟流程,無法指定具體的重啟時間。如果希望在特定時間點(如業務低峰期淩晨 3 點)執行重啟,需在該時間點手動完成支付和提交操作。

Q:增加資料節點後是否需要重建索引?

A:不需要。增加資料節點是線上操作,叢集會自動處理資料的重新分配(Rebalance),現有的索引、資料和業務查詢都不會中斷。

其他問題