スケーラブルなターゲットの登録
事前定義されたメトリクスまたはカスタムメトリクスに基づいて、スケーリングポリシーを適用できます。そのためには、AWS CLI または アプリケーションの Auto Scaling API を使用します。最初のステップでは、Valkey と Redis OSS に対応した ElastiCache レプリケーショングループを Auto Scaling に登録します。
ElastiCache の自動スケーリングをクラスターで使用可能にする前に、クラスターを ElastiCache の自動スケーリングに登録する必要があります。これは、そのクラスターに適用するスケーリングのディメンションと制限を定義するためです。ElastiCache の自動スケーリングは、シャードあたりのクラスターレプリカの数を表す elasticache:replication-group:Replicas スケーラブルディメンションに沿って動的にクラスターをスケールします。
CLI の使用:
ElastiCache クラスターを登録するには、register-scalable-target コマンドを次のパラメータとともに使用します。
-
—service-namespace – この値は elasticache に設定します。
-
--resource-id – ElastiCache クラスターのリソース識別子。このパラメータでは、リソースタイプは ReplicationGroup で、一意の識別子はクラスターの名前、例えば
replication-group/myscalableclusterです。 -
--scalable-dimension – この値は に設定します
elasticache:replication-group:Replicas -
--min-capacity – ElastiCache の自動スケーリングで管理するレプリカの最小数。—min-capacity、—max-capacity、およびクラスター内のレプリカ数の関係については、「最小容量と最大容量」を参照してください。
-
--max-capacity – ElastiCache の自動スケーリングで管理するレプリカの最大数。—min-capacity、—max-capacity、およびクラスター内のレプリカ数の関係については、「最小容量と最大容量」を参照してください。
次の例では、myscalablecluster という名前の ElastiCache クラスターを登録します。この登録は、クラスターが 1 から 5 個のレプリカを持つよう動的にスケーリングされることを示します。
Linux、macOS、Unix の場合:
aws application-autoscaling register-scalable-target \ --service-namespace elasticache \ --resource-id replication-group/myscalablecluster \ --scalable-dimension elasticache:replication-group:Replicas \ --min-capacity 1 \ --max-capacity 5 \
Windows の場合:
aws application-autoscaling register-scalable-target ^ --service-namespace elasticache ^ --resource-id replication-group/myscalablecluster ^ --scalable-dimension elasticache:replication-group:Replicas ^ --min-capacity 1 ^ --max-capacity 5 ^
API を使用する
ElastiCache クラスターを登録するには、register-scalable-target コマンドを次のパラメータとともに使用します。
ServiceNamespace – この値は elasticache に設定します。
ResourceID — ElastiCache クラスターのリソース識別子。このパラメータでは、リソースタイプは ReplicationGroup で、一意の識別子はクラスターの名前、例えば
replication-group/myscalableclusterです。ScalableDimension — この値は
elasticache:replication-group:Replicasに設定します。MinCapacity — ElastiCache の自動スケーリングで管理するレプリカの最小数。—min-capacity、—max-capacity、およびクラスター内のレプリカ数の関係については、「最小容量と最大容量」を参照してください。
MaxCapacity – ElastiCache の自動スケーリングで管理するレプリカの最大数。—min-capacity、—max-capacity、およびクラスター内のレプリカ数の関係については、「最小容量と最大容量」を参照してください。
以下の例では、Application Auto Scaling API を使用して、myscalablecluster という名前のクラスターを登録します。この登録は、クラスターが 1~5 個のレプリカを持つよう動的にスケールされることを示します。
POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ServiceNamespace": "elasticache", "ResourceId": "replication-group/myscalablecluster", "ScalableDimension": "elasticache:replication-group:Replicas", "MinCapacity": 1, "MaxCapacity": 5 }