管理叢集作業 - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

管理叢集作業

DAX 會自動管理叢集的維護與健康狀態。不過,仍需提供操作參數,以便依使用模式進行叢集的水平或垂直擴展。本節說明擴展 DAX 叢集的建議流程。

水平擴展叢集

擴展 DAX 叢集需調整容量以符合輸送量需求。此調整可在叢集運行期間,透過增加或減少節點 (副本) 數量來完成。此程序稱為水平擴展,可在需求高時分散工作負載,需求低時整併節點。

您可在 AWS CLI中使用 decrease-replication-factorincrease-replication-factor 指令,執行 DAX 叢集的水平擴展與縮減。

增加複寫係數 (橫向擴充)

增加 DAX 叢集的複寫係數可新增更多節點至叢集。以下範例顯示 increase-replication-factor 指令的用法。

aws dax increase-replication-factor \ --cluster-name yourClusterName \ --new-replication-factor desiredReplicationFactor
  • 在此指令中,cluster-name 參數指定叢集名稱。例如:yourClusterName

  • new-replication-factor 參數指定擴展後叢集中的節點總數。此數包含主節點與副本節點。例如,若叢集目前有 3 個節點且要再新增 2 個節點,請將 new-replication-factor 的值設為 5。

減少複寫係數 (向內縮減)

減少 DAX 叢集的複寫係數會移除部分節點。移除節點可在低需求期間降低成本。以下範例顯示 decrease-replication-factor 指令的用法。

aws dax decrease-replication-factor \ --cluster-name yourClusterName \ --new-replication-factor desiredReplicationFactor
  • 在此指令中,cluster-name 參數指定叢集名稱。例如:yourClusterName

  • new-replication-factor 參數指定擴展後叢集的節點總數 (縮減後)。此數值須低於目前複寫係數,且包含主節點。例如,若叢集有 5 個節點且要移除 2 個節點,請將 new-replication-factor 的值設為 3。

水平擴展注意事項

規劃水平擴展時,請考量以下事項:

  • 主節點 – DAX 叢集包含主節點。複寫係數計入此主節點。例如,複寫係數為 3 時,代表 1 個主節點與 2 個副本節點。

  • 可用性 – 新增或移除 DAX 節點會影響叢集的可用性與容錯能力。增加節點可提升可用性,但同時提高成本。

  • 資料移轉 – 當複寫係數增加時,DAX 會自動在新節點間分配資料。當新節點開始處理流量時,其快取已預先載入。然而,在資料移轉過程中,可能會暫時影響系統效能。

請務必在擴展過程中及完成後密切監控 DAX 叢集的運作,以確保其效能符合預期,並依需求進行調整。

垂直擴展叢集

若要垂直擴展現有叢集的節點規格,需建立新叢集,並將應用程式流量切換至新叢集。移轉至具不同節點的新叢集需經多個步驟,以確保轉換順暢,並將對應用程式效能與可用性的影響降至最低。

若要建立新叢集以垂直擴展節點規格,請考慮以下事項:

  • 存取目前設定 – 檢閱現有 DAX 叢集的效能指標,以評估所需的新節點規格與數量。根據此資訊作為依據,以定義叢集規模。如需相關資訊,請參閱調整 DAX 叢集大小

  • 設定新 DAX 叢集 – 依您所選的節點類型與數量建立新叢集。可沿用參數群組中的現有組態設定,除非需要修改。

  • 同步資料 – 由於 DAX 為 DynamoDB 的快取層,因此無需直接移轉資料。但在將流量導向新 DAX 叢集之前,其記憶體中不會載入任何工作資料集。

  • 更新應用程式組態 – 將應用程式組態更新為指向新的 DAX 叢集端點。視應用程式組態而定,您可能需要修改程式碼或更新環境變數。

    為降低切換至新叢集時的影響,請先從部分應用程式機群傳送 Canary 測試流量至新叢集。您可透過逐步發布應用程式更新,或在 DAX 端點前配置權重式路由 DNS 項目,以達成此操作。

  • 監控與最佳化 – 切換至新 DAX 叢集後,請密切監控其效能指標與日誌,以偵測潛在問題。請根據最新的工作負載模式,隨時調整節點數量。

    在新叢集完成工作資料集快取前,可能會出現較高的快取未命中率與延遲。

  • 停用舊叢集 – 確認新叢集運作正常後,請安全停用舊 DAX 叢集,以避免額外成本。