定義擴展政策 - Amazon ElastiCache

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

定義擴展政策

目標追踪規模調整政策組態由 JSON 區塊表示,其中定義了指標和目標值。您可以將規模調整政策的組態設定,儲存為文字檔案中的 JSON 區塊。叫用 AWS CLI 或 Application Auto Scaling API 時,您可以使用該文字檔案。如需政策組態語法的詳細資訊,請參閱「Application Auto Scaling API 參考」中的 TargetTrackingScalingPolicyConfiguration

您可使用下列選項來定義目標追蹤擴展政策的組態:

使用預先定義的指標

透過使用預先定義的指標,您可以快速定義 ElastiCache for Valkey 和 Redis OSS 叢集的目標追蹤擴展政策,該叢集可與 ElastiCache Auto Scaling 中的目標追蹤搭配使用。

目前,ElastiCache 在 NodeGroup Auto Scaling 中支援下列預先定義的指標:

  • ElastiCachePrimaryEngineCPUUtilization – 叢集中所有主節點 CloudWatch 中EngineCPUUtilization指標的平均值。

  • ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage – 叢集中所有主節點 CloudWatch 中DatabaseMemoryUsageCountedForEvictPercentage指標的平均值。

  • ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage – 叢集中所有主節點 CloudWatch 中ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage指標的平均值。

如需 EngineCPUUtilizationDatabaseMemoryUsageCountedForEvictPercentageDatabaseCapacityUsageCountedForEvictPercentage 指標的詳細資訊,請參閱 使用 CloudWatch 指標監控用量。若要在您的規模調整政策中使用預先定義的指標,請為規模調整政策建立目標追蹤組態設定。此組態設定必須加入用於預先定義指標的 PredefinedMetricSpecification,以及用於該指標目標值的 TargetValue。

下列範例說明 ElastiCache for Valkey 和 Redis OSS 叢集的目標追蹤擴展的一般政策組態。在此組態中,ElastiCachePrimaryEngineCPUUtilization預先定義的指標會根據叢集中所有主節點的平均 CPU 使用率 40% 來調整叢集。

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" } }

使用自訂的指標

使用自訂的指標,您可以定義目標追蹤規模調整政策來滿足您的自訂需求。您可以根據隨擴展比例變更的任何 ElastiCache 指標來定義自訂指標。並非所有 ElastiCache 指標都適用於目標追蹤。指標必須是有效的使用率指標,而且能夠表示執行個體的忙碌程度。指標的值必須根據叢集中碎片的數量依比例增加或減少。若要使用指標資料來依比例水平擴展或縮減碎片的數量,這樣子成比例的增加或減少是必要的。

下列的範例描述規模調整政策的目標追蹤組態設定。在此組態中,自訂指標會根據名為 之叢集中所有碎片的平均 CPU 使用率 50% 來調整 ElastiCache for Redis OSS 叢集my-db-cluster

{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "EngineCPUUtilization", "Namespace": "AWS/ElastiCache", "Dimensions": [ { "Name": "ReplicationGroup","Value": "my-db-cluster" }, { "Name": "Role","Value": "PRIMARY" } ], "Statistic": "Average", "Unit": "Percent" } }

使用冷卻時間

您可以指定一個值 (單位為秒),讓 ScaleOutCooldown 新增冷卻時間以便水平擴展您的叢集。同樣的,您可以指定一個值 (單位為秒),讓 ScaleInCooldown 新增冷卻時間以便為您的叢集縮減規模。如需政策組態語法的詳細資訊,請參閱「Application Auto Scaling API 參考」中的 TargetTrackingScalingPolicyConfiguration

下列的範例描述規模調整政策的目標追蹤組態設定。在此組態中,ElastiCachePrimaryEngineCPUUtilization預先定義的指標會根據該叢集中所有主節點的平均 CPU 使用率 40%,來調整 ElastiCache for Redis OSS 叢集。這個組態設定分別提供了 10 分鐘的規模縮減冷卻時間,和 5 分鐘的橫向擴展冷卻時間。

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }