翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ターゲット追跡スケーリングポリシー
ターゲット追跡スケーリングポリシーで、メトリクスを選択してターゲット値を設定します。ElastiCache for Valkey and Redis OSS AutoScaling は、スケーリングポリシーをトリガーする CloudWatch アラームを作成および管理し、メトリクスとターゲット値に基づいてスケーリング調整を計算します。スケーリングポリシーは、指定されたターゲット値、またはそれに近い値にメトリクスを維持するため、必要に応じてすべてのシャードで均一にレプリカを追加または削除します。ターゲットの追跡スケーリングポリシーは、メトリクスをターゲット値近くに維持することに加えて、負荷パターンの変動によるメトリクスの変動に合わせて調整し、フリートの容量の急速な変動を最小化します。
レプリカの Auto Scaling 基準
Auto Scaling ポリシーでは、クラスターの次の事前定義されたメトリクスを定義します。
ElastiCacheReplicaEngineCPUUtilization
: ElastiCache が auto-scaling オペレーションをトリガーするために使用する、すべてのレプリカで集計された AVG EngineCPU 使用率のしきい値。使用率ターゲットは 35 パーセントから 70 パーセントの間で設定できます。
サービスが ElastiCacheReplicaEngineCPUUtilization
メトリクスが Target 設定以上であることを検出した場合、シャードでレプリカを自動的に増加させます。ElastiCache は、ターゲットと 1 つのレプリカからのバリエーションの割合の 2 つの数値のうち大きい方に等しい数だけクラスターレプリカをスケールアウトします。スケールインの場合、全体的なメトリクス値が定義されたターゲットの 75% を下回らない限り、ElastiCache は自動スケールインしません。
スケールアウトの例では、それぞれ 5 つのシャードと 1 つのレプリカがある場合:
ターゲットが 30% 超過した場合、ElastiCache for Valkey と Redis OSS はすべてのシャードで 1 つのレプリカ (最大 (0.3、デフォルト 1)) だけスケールアウトします。これにより、それぞれ 2 つのレプリカを持つ 5 つのシャードになります。
スケールインの例では、ターゲット値を 60% に選択した場合、ElastiCache for Valkey と Redis OSS は、メトリクスが 45% 以下 (ターゲットの 60% を 25% 下回る) になるまで自動スケールインしません。
Auto Scaling に関する考慮事項
次の考慮事項に注意が必要です。
-
ターゲットの追跡スケーリングポリシーでは、指定されたメトリクスがターゲット値を超えている場合、スケールアウトする必要があると見なされます。指定されたメトリクスがターゲット値を下回っている場合、ターゲットの追跡スケーリングポリシーを使用してスケールアウトすることはできません。ElastiCache for Valkey および Redis OSS は、クラスター内のすべてのシャードで既存のレプリカの最大 (ターゲットから切り捨てられた偏差率、デフォルト 1) だけレプリカをスケールアウトします。
-
指定されたメトリクスに十分なデータがない場合、ターゲットの追跡スケーリングポリシーによってスケールされません。不十分なデータは低い使用率として解釈されないため、スケールインされません。
-
ターゲット値と実際のメトリクスデータポイント間にギャップが発生する場合があります。これは、ElastiCache Auto Scaling が追加または削除する容量を決定するときに、常に切り上げまたは切り下げによって控えめに動作するためです。これにより、不十分な容量を追加したり、必要以上に容量を削除することを防ぎます。
-
アプリケーションの可用性を高めるために、サービスのスケールアウトはメトリクスに比例して可能な限り高速に行われますが、スケールインはより緩やかで、クラスター内のシャードで 1 個のレプリカの最大スケールインで行われます。
-
ElastiCache for Valkey および Redis OSS クラスターに複数のターゲット追跡スケーリングポリシーを設定できます。ただし、それぞれが異なるメトリクスを使用します。自動スケーリングの目的は常に可用性を優先することであるため、その動作は、ターゲット追跡ポリシーがスケールアウトまたはスケールインの準備ができているかどうかに応じて異なります。ターゲット追跡ポリシーのいずれかでスケールアウトする準備ができると、サービスがスケールアウトされますが、すべてのターゲット追跡ポリシー (スケールイン部分が有効) でスケールインする準備ができている場合にのみスケールインされます。
-
ターゲット追跡スケーリングポリシーで ElastiCache Auto Scaling が管理する CloudWatch アラームを編集または削除しないでください。自動スケーリングは、スケーリングポリシーを削除するかクラスターを削除するときに、アラームを自動的に削除します。
-
ElastiCache Auto Scaling では、シャード間でレプリカを手動で変更することはできません。これらの手動調整は、スケーリングポリシーにアタッチされている CloudWatch アラームに影響しませんが、これらの CloudWatch アラームをトリガーする可能性のあるメトリクスに影響する可能性があります。
-
Auto Scaling によって管理されるこれらの CloudWatch アラームは、クラスター内のすべてのシャードでの AVG メトリクスで定義されます。したがって、ホットシャードを持つと、次のいずれかのシナリオが発生する可能性があります。
-
CloudWatch アラームをトリガーするいくつかのホットシャードへの負荷が原因で、必要のない場合にスケーリングする
-
アラームが違反しないように影響を及ぼすすべてのシャードで集約された AVG が原因で、必要な場合にスケーリングしない。
-
-
クラスターあたりのノードに対する ElastiCache のデフォルト制限は引き続き適用されます。したがって、Auto Scaling を選択するときに、最大ノード数がデフォルトの制限を超えると予測される場合は、[AWS サービス制限] で制限の増加をリクエストし、制限タイプ [インスタンスタイプごとのクラスターあたりのノード] を選択します。
-
スケールアウト時に必要な、VPC で十分な ENI(Elastic Network Interfaces)が使用可能であることを確認します。詳細については、「Elastic Network Interface」を参照してください。
-
EC2 から十分なキャパシティーがない場合、ElastiCache Auto Scaling は、キャパシティーが利用可能になるまで、または十分なキャパシティーを持つインスタンスタイプにクラスターを手動で変更するまでスケールアウトしません。
-
ElastiCache Auto Scaling は、クラスターが 25%
ReservedMemoryPercent
未満のレプリカのスケーリングをサポートしていません。詳細については、「Valkey および Redis OSS の予約済みメモリを管理する」を参照してください。