Amazon Aurora と Application Auto Scaling
Aurora DB クラスターは、ターゲット追跡スケーリングポリシー、ステップスケーリングポリシー、およびスケジュールされたスケーリングを使用してスケールできます。
以下の情報を使用して、Aurora の Application Auto Scaling との統合に役立ててください。
Aurora 用に作成されたサービスリンクロール
Aurora リソースをスケーラブルターゲットとして Application Auto Scaling に登録すると、AWS アカウントに以下のサービスリンクロールが自動的に作成されます。このロールは、アカウント内でサポートされている操作を実行することを Application Auto Scaling に許可します。詳細については、「Application Auto Scaling 用のサービスリンクロール」を参照してください。
-
AWSServiceRoleForApplicationAutoScaling_RDSCluster
サービスリンクロールが使用するサービスプリンシパル
前のセクションで説明したサービスリンクロールを引き受けることができるのは、ロールに定義された信頼関係によって認可されるサービスプリンシパルのみです。Application Auto Scaling が使用するサービスリンクロールは、以下のサービスプリンシパルに対するアクセス権を付与します。
-
rds.application-autoscaling.amazonaws.com
スケーラブルターゲットとしての Aurora DB クラスターの Application Auto Scaling への登録
Application Auto Scaling では、Aurora DB クラスターのスケーリングポリシーまたはスケジュールされたアクションを作成する前に、スケーラブルターゲットが必要になります。スケーラブルターゲットとは、Application Auto Scaling がスケールアウトおよびスケールインできるリソースです。スケーラブルターゲットは、リソース ID、スケーラブルディメンション、および名前空間の組み合わせによって一意に識別されます。
Aurora コンソールを使用してオートスケーリングを設定すると、Aurora がユーザーに代わってスケーラブルターゲットを自動的に登録します。
AWS SDK のいずれか、または AWS CLI を使用して自動スケーリングを設定する場合は、以下のオプションを使用できます。
-
AWS CLI:
Aurora クラスターの登録-スケーラブル-ターゲットコマンドを呼び出します。以下の例は、最小容量を 1 個の Aurora レプリカ、および最大容量を 8 個の Aurora レプリカとして、
my-db-cluster
という名前のクラスター内の Aurora レプリカの数を登録します。aws application-autoscaling register-scalable-target \ --service-namespace rds \ --scalable-dimension rds:cluster:ReadReplicaCount \ --resource-id cluster:
my-db-cluster
\ --min-capacity1
\ --max-capacity8
成功した場合、このコマンドはスケーラブルターゲットの ARN を返します。
{ "ScalableTargetARN": "arn:aws:application-autoscaling:
region
:account-id
:scalable-target/1234abcd56ab78cd901ef1234567890ab123" } -
AWS SDK:
RegisterScalableTargetオペレーションを呼び出し、
ResourceId
、ScalableDimension
、ServiceNamespace
、MinCapacity
、およびMaxCapacity
をパラメータとして指定します。
関連リソース
Application Auto Scaling の使用を開始したばかりの場合は、以下のドキュメントで Aurora リソースのスケーリングに関する有用な詳細情報を確認できます。
Amazon RDS ユーザーガイドの「Aurora レプリカでの Amazon Aurora Auto Scaling の使用」