本頁說明 Memorystore for Valkey 執行個體在資源調度期間的行為。
您可以透過下列方式擴充執行個體的容量:
您可以變更執行個體的 shard 數量。這就是水平調度資源。您可以透過下列任一方式,水平擴充執行個體:
擴充:增加執行個體的容量,讓執行個體有更多記憶體和處理能力,可處理大量資料或流量。執行個體的容量取決於執行個體中的分片數量。
擴充執行個體後,應用程式就能處理增加的需求,且不會降低效能。如要向外擴充執行個體,請在執行個體中新增分片。
縮減:減少執行個體的容量,降低處理能力和可用的記憶體容量。當應用程式的資料需求減少,您需要降低資源用量來節省成本時,就會發生這種情況。如要縮減執行個體,請減少執行個體中的分片數量。
您可以變更執行個體的節點類型。這就是垂直資源調度。 您可以透過下列任一方式垂直縮放執行個體:
- 向上擴充:增加執行個體的容量。執行個體的容量取決於執行個體的節點類型。如要向上擴充執行個體,請將節點類型變更為較大的節點類型。舉例來說,將執行個體從
standard-small
節點類型向上擴充至highmem-medium
節點類型。 縮減:減少執行個體的容量。如要縮減執行個體,請將節點類型變更為較小的節點類型。舉例來說,您可以將執行個體從
highmem-medium
節點類型縮減為standard-small
節點類型。
- 向上擴充:增加執行個體的容量。執行個體的容量取決於執行個體的節點類型。如要向上擴充執行個體,請將節點類型變更為較大的節點類型。舉例來說,將執行個體從
資源調度的影響
在資源調度作業期間,執行個體的可用性不會受到影響。 不過,當您變更執行個體中的分片數量時,Memorystore for Valkey 會重新平衡執行個體的鍵空間。這可能會導致資源調度作業期間的延遲時間增加。
此外,變更節點類型來垂直擴充執行個體,與維護作業的影響類似。
失敗情境
如果在縮放作業期間發生錯誤,可能是因為下列其中一種情況:
您想更新執行個體的分片數量,但執行個體
shared-core-nano
節點類型的可用記憶體不足。如要解決這個問題,您可以擴大執行個體,或釋出執行個體節點的記憶體。如要釋出記憶體空間,請按照下列步驟操作:
- 連線至 Memorystore for Valkey 執行個體。
- 如要取得執行個體的詳細資料 (包括 IP 位址和連接埠號碼),請使用
gcloud memorystore instances describe
指令。 - 記下執行個體的 IP 位址和通訊埠號碼。
如要取得執行個體的節點相關資訊,請使用下列指令:
valkey-cli -h IP_ADDRESS -p PORT_NUMBER cluster nodes
將 IP_ADDRESS 和 PORT_NUMBER 換成您在上一步記下的值。
記下可用空間不足的節點 IP 位址和通訊埠號碼。這個節點的 ID 與錯誤中顯示的 ID 相符。
如要連線至這個節點,請使用下列指令:
valkey-cli -h IP_ADDRESS -p PORT_NUMBER
將 IP_ADDRESS 和 PORT_NUMBER 換成您在上一步記下的值。
在提示中輸入
info memory
指令。輸出內容會顯示
used_memory
和maxmemory
參數的值。used_memory
是節點使用的記憶體量,maxmemory
則是節點可用的記憶體量。將
used_memory
參數值除以maxmemory
參數值,並確認商數大於 98%。如要釋出節點空間,請刪除部分節點鍵。
再次輸入
info memory
指令。在輸出中,used_memory
參數的值較小。將
used_memory
參數值除以maxmemory
參數值,並確認商數現在小於 98%。如果不是,請刪除更多金鑰。如果其他節點的可用空間不足,請重複執行步驟 4 到 11。
您縮減了分片數量,導致容量不足,無法容納 Memorystore for Valkey 在原始執行個體中儲存的所有金鑰。如要解決這個問題,請擴充至可容納所有儲存金鑰的較大分片數。如要進一步瞭解如何增加執行個體的分片數量,請參閱「調整分片數量」。
您縮減了節點類型,導致節點容量不足,無法容納 Memorystore for Valkey 儲存在原始節點類型中的所有資料。如果發生這種情況,Memorystore for Valkey 會提供建議的節點類型,供您垂直縮減。
您更新了執行個體的節點類型,並覆寫原始節點類型的預設設定,或這些設定已遭覆寫。不過,新的縮放節點類型不支援預設設定的值,或設定對節點類型無效。如果發生這種情況,Memorystore for Valkey 會傳回錯誤。如要解決這個問題,請手動修改設定,確保設定適用於新的節點類型。
您在寫入壓力較大的期間 (例如負載測試期間) 擴充了執行個體。如要解決這個問題,請在執行個體流量偏低的時段進行調整。
您有一個含有大型金鑰的節點,想要將這個金鑰遷移至另一個節點。不過,這個節點的記憶體不足,無法支援金鑰。因此無法更新執行個體。如要解決這個問題,請縮減金鑰大小,然後重試更新作業。
執行個體節點擁有的時段編號不明,只知道時段範圍。Memorystore for Valkey 會傳回錯誤訊息。如果發生這種情況,請縮減金鑰大小,然後重試更新作業。
最佳做法
為協助您調整執行個體的容量,並提高執行個體的調整速度和可靠性,請盡可能在流量較低的時段調整執行個體。如要瞭解如何監控執行個體流量,請參閱「監控執行個體」。