ElastiCache for Redis および Application Auto Scaling - Application Auto Scaling

ElastiCache for Redis および Application Auto Scaling

ターゲット追跡スケーリングポリシーとスケジュールされたスケーリングを使用して、ElastiCache for Redis replication groups をスケールできます。

ElastiCache と Application Auto Scaling の統合には、次の情報を参考にしてください。

ElastiCache for Redis replication groups のスケーリングを始めたばかりの場合は、以下のドキュメントで、Application Auto Scaling での ElastiCache の使用に関するサンプル設定と詳細を確認できます。

ElastiCache 向けに作成されたサービスリンクロール

The following service-linked role is automatically created in your AWS account when registering ElastiCache resources as scalable targets with Application Auto Scaling. This role allows Application Auto Scaling to perform supported operations within your account. For more information, see Application Auto Scaling のサービスリンクロール.

  • AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG

サービスリンクロールが使用するサービスプリンシパル

The service-linked role in the previous section can be assumed only by the service principal authorized by the trust relationships defined for the role. The service-linked role used by Application Auto Scaling grants access to the following service principal:

  • elasticache.application-autoscaling.amazonaws.com

スケーラブルターゲットとしての ElastiCache for Redis replication groups の Application Auto Scaling への登録

Application Auto Scaling では、ElastiCache レプリケーショングループのスケーリングポリシーまたはスケジュールされたアクションを作成する前に、スケーラブルターゲットが必要になります。スケーラブルターゲットとは、Application Auto Scaling がスケールアウトまたはスケールインできるリソースです。スケーラブルターゲットは、リソース ID、スケーラブルディメンション、および名前空間の組み合わせによって一意に識別されます。

ElastiCache コンソールを使用してオートスケーリングを設定すると、ElastiCache がユーザーに代わってスケーラブルターゲットを自動的に登録します。

AWS CLI または AWS SDK の 1 つを使用してオートスケーリングを設定する場合は、次のオプションを使用できます。

  • AWS CLI:

    ElastiCache レプリケーショングループのために register-scalable-target を呼び出します。以下の例は、最小容量を 1、最大容量を 5 として、mycluster という名前のレプリケーショングループの希望ノードグループ数を登録します。

    aws application-autoscaling register-scalable-target \ --service-namespace elasticache \ --scalable-dimension elasticache:replication-group:NodeGroups \ --resource-id replication-group/mycluster \ --min-capacity 1 \ --max-capacity 5

    以下の例は、最小容量を 1、最大容量を 5 として、mycluster という名前のレプリケーショングループのノードグループあたりの希望レプリカ数を登録します。

    aws application-autoscaling register-scalable-target \ --service-namespace elasticache \ --scalable-dimension elasticache:replication-group:Replicas \ --resource-id replication-group/mycluster \ --min-capacity 1 \ --max-capacity 5
  • AWS SDK:

    RegisterScalableTargetオペレーションを呼び出し、ResourceIdScalableDimensionServiceNamespaceMinCapacity、および MaxCapacity をパラメータとして指定します。