關於調整執行個體容量

本頁面說明 Memorystore for Valkey 執行個體在資源調度期間的行為。

您可以透過下列方式調整執行個體的容量:

  • 您可以變更執行個體的區塊數量。這就是水平調度資源能力。您可以透過下列任一方式將執行個體縮放至水平方向:

    • 水平擴展:增加執行個體的容量,讓執行個體擁有更多記憶體和處理能力,以便處理更多資料或流量。執行個體的容量取決於執行個體中的分片數量。

      擴充執行個體後,應用程式就能處理需求增加的問題,且不會影響效能。如要擴充執行個體,請在執行個體中新增分片。

    • 縮減:減少執行個體的容量,藉此降低處理能力和可用於儲存資料的記憶體量。當應用程式的資料需求減少,且您需要降低資源用量以節省成本時,就會發生這種情況。如要縮放執行個體,請減少執行個體中的資料分割數量。

  • 您可以變更執行個體的節點類型。這就是垂直資源調度。您可以透過下列任一方式垂直縮放執行個體:

    • 向上擴充:增加執行個體的容量。執行個體的容量取決於執行個體的節點類型。如要擴大執行個體,請將節點類型變更為較大的節點類型。舉例來說,您可以將執行個體從 standard-small 節點類型擴充至 highmem-medium 節點類型。
    • 縮減資源:降低執行個體的容量。如要縮小執行個體,請將節點類型變更為較小的節點類型。舉例來說,您可以將執行個體從 highmem-medium 節點類型縮減為 standard-small 節點類型。

縮放的影響

在資源調度作業期間,執行個體的運作情形不會受到影響。不過,如果您變更執行個體中的分割區數量,Memorystore for Valkey 會重新平衡執行個體的鍵空間。這可能會導致在調整作業期間的延遲時間增加。

此外,透過變更節點類型來垂直擴充執行個體的影響,與維護作業的影響類似。

失敗情況

如果在調整作業期間發生錯誤,可能是因為下列其中一種情況:

  • 您想更新執行個體的分片數量,但執行個體的 shared-core-nano 節點類型沒有足夠的可用記憶體。

    如要解決這個問題,您可以擴充執行個體,或是釋放執行個體節點的記憶體。如要釋出記憶體空間,請按照下列步驟操作:

    1. 連線至 Memorystore for Valkey 執行個體
    2. 如要取得執行個體的詳細資料 (包括 IP 位址和連接埠號碼),請使用 gcloud memorystore instances describe 指令。
    3. 記下執行個體的 IP 位址和通訊埠號碼。
    4. 如要取得執行個體節點的相關資訊,請使用下列指令:

      valkey-cli -h IP_ADDRESS -p PORT_NUMBER cluster nodes
      

      IP_ADDRESSPORT_NUMBER 換成您在上一個步驟中記下的值。

    5. 記下沒有足夠可用空間的節點的 IP 位址和通訊埠編號。這個節點的 ID 與錯誤中顯示的 ID 相符。

    6. 如要連線至這個節點,請使用下列指令:

      valkey-cli -h IP_ADDRESS -p PORT_NUMBER
      

      IP_ADDRESSPORT_NUMBER 換成您在上一個步驟中記下的值。

    7. 在提示中輸入 info memory 指令。

      輸出內容會顯示 used_memorymaxmemory 參數的值。used_memory 是節點使用的記憶體量,maxmemory 是節點可用的記憶體量。

    8. used_memory 參數的值除以 maxmemory 參數的值,並確認商大於 98%。

    9. 如要釋出節點的空間,請刪除部分節點的鍵

    10. 再次輸入 info memory 指令。在輸出內容中,used_memory 參數的值較小。

    11. used_memory 參數的值除以 maxmemory 參數的值,並確認除以後的值現在小於 98%。如果不是,請刪除更多鍵。

    12. 如果其他節點的可用空間不足,請重複執行本程序的步驟 4 至 11。

  • 您縮減了分片數量,但這會導致 Memorystore for Valkey 無法在原始執行個體中儲存所有鍵。如要解決這個問題,請將分割區數量調整為可容納所有已儲存索引鍵的數量。如要進一步瞭解如何增加執行個體的分片數量,請參閱「調度分片數量」。

  • 您縮減至較小的節點類型,但該類型無法容納 Memorystore for Valkey 在原始節點類型中儲存的所有資料。如果發生這種情況,Memorystore for Valkey 會提供建議的節點類型,以便垂直縮減。

  • 您更新了執行個體的節點類型,並覆寫原始節點類型的預設設定,或是這些設定已遭到覆寫。不過,新的經過調整的節點類型不支援預設設定的值,或是設定對節點類型無效。如果發生這種情況,Memorystore for Valkey 會傳回錯誤。如要解決這個問題,請手動修改設定,讓設定適用於新節點類型。

  • 在寫入壓力高的期間 (例如在負載測試期間) 縮放執行個體。如要解決這個問題,請在執行個體流量偏低的期間調整。

最佳做法

如要調整執行個體的容量,並提高調整執行個體的速度和可靠性,請盡可能在流量偏低的期間調整。如要瞭解如何監控執行個體流量,請參閱「監控執行個體」。