Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Ajout d'une politique de dimensionnement automatique à un cluster de bases de données Amazon Aurora
Vous pouvez ajouter une politique de dimensionnement à l'aide du AWS Management Console AWS CLI, du ou de l'Application Auto ScalingAPI.
Note
Pour un exemple qui ajoute une politique de dimensionnement en utilisant AWS CloudFormation, voir Déclarer une politique de dimensionnement pour un cluster de base de données Aurora dans le guide de AWS CloudFormation l'utilisateur.
Vous pouvez ajouter une politique de dimensionnement à un cluster de base de données Aurora à l'aide du AWS Management Console.
Pour ajouter une stratégie Auto Scaling à un cluster de base de données Aurora
Connectez-vous à la RDS console Amazon AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/rds/
. -
Dans le panneau de navigation, choisissez Bases de données.
-
Choisissez le cluster de base de données Aurora auquel vous souhaitez ajouter une stratégie.
-
Choisissez l'onglet Logs & events (Journaux et événements).
-
Dans la section Auto scaling policies (Stratégies Auto Scaling), choisissez Ajouter.
La boîte de dialogue Ajouter une Stratégie Auto Scaling s'affiche.
-
Dans le champ Policy Name (Nom de stratégie), saisissez le nom de la stratégie.
-
Pour la métrique cible, choisissez l'une des actions suivantes :
-
CPUUtilisation moyenne des répliques Aurora pour créer une politique basée sur l'CPUutilisation moyenne.
-
Average connections of Aurora Replicas (Nombre moyen de connexions de réplicas Aurora) pour créer une stratégie basée sur le nombre moyen de connexions aux réplicas Aurora.
-
-
Pour la valeur cible, saisissez l'un des éléments suivants :
-
Si vous avez choisi CPUUtilisation moyenne des répliques Aurora à l'étape précédente, saisissez le pourcentage d'CPUutilisation que vous souhaitez maintenir sur les répliques Aurora.
-
Si vous avez choisi Average connections of Aurora Replicas (Nombre moyen de connexions de réplicas Aurora) à l'étape précédente, saisissez le nombre de connexions à maintenir.
Des réplicas Aurora sont ajoutés ou supprimés pour maintenir la métrique proche de la valeur spécifiée.
-
-
(Facultatif) Ouvrez Additional Configuration (Configuration supplémentaire) pour créer un temps de stabilisation de mise à l'échelle horizontale ou de montée en puissance.
-
Pour Minimum capacity (Capacité minimale), saisissez le nombre minimal de réplicas Aurora que la stratégie Aurora Auto Scaling doit maintenir.
-
Pour Maximum capacity (Capacité maximale), saisissez le nombre maximal de réplicas Aurora que la stratégie Aurora Auto Scaling doit maintenir.
-
Choisissez Add policy (Ajouter la stratégie).
La boîte de dialogue suivante crée une politique Auto Scaling basée sur une CPU utilisation moyenne de 40 %. La stratégie indique un minimum de cinq réplicas Aurora et un maximum de 15.
La boîte de dialogue suivante crée une stratégie Auto Scaling basée sur un nombre moyen de connexions égal à 100. La stratégie indique un minimum de deux réplicas Aurora et un maximum de huit.
Vous pouvez appliquer une politique de dimensionnement basée sur une métrique prédéfinie ou personnalisée. Pour ce faire, vous pouvez utiliser le AWS CLI ou l'Application Auto ScalingAPI. La première étape consiste à enregistrer votre cluster de base de données Aurora dans Application Auto Scaling.
Enregistrement d'un cluster de base de données Aurora
Avant d'utiliser Aurora Auto Scaling avec un cluster de base de données Aurora, enregistrez votre cluster de base de données Aurora dans Application Auto Scaling. Cette action permet de définir la dimension et les limites de la mise à l'échelle à appliquer à ce cluster. Application Auto Scaling met à l'échelle de façon dynamique le cluster de base de données Aurora le long de la dimension évolutive rds:cluster:ReadReplicaCount
, qui représente le nombre de réplicas Aurora.
Pour enregistrer votre cluster de base de données Aurora, vous pouvez utiliser le AWS CLI ou l'Application Auto ScalingAPI.
AWS CLI
Pour enregistrer votre cluster de base de données Aurora, utilisez la register-scalable-target
AWS CLI commande avec les paramètres suivants :
-
--service-namespace
– Définissez cette valeur surrds
. -
--resource-id
– Identifiant de la ressource du cluster de base de données Aurora. Pour ce paramètre, le type de ressource estcluster
et l'identifiant unique est le nom du cluster de base de données Aurora, par exemplecluster:myscalablecluster
. -
--scalable-dimension
– Définissez cette valeur surrds:cluster:ReadReplicaCount
. -
--min-capacity
– Nombre minimal d'instances de base de données en écriture devant être gérées par Application Auto Scaling. Pour plus d'informations sur la relation entre--min-capacity
,--max-capacity
et le nombre d'instances de base de données dans votre cluster, veuillez consulter Une capacité maximale et minimale. -
--max-capacity
– Nombre maximal d'instances de base de données en écriture devant être gérées par Application Auto Scaling. Pour plus d'informations sur la relation entre--min-capacity
,--max-capacity
et le nombre d'instances de base de données dans votre cluster, veuillez consulter Une capacité maximale et minimale.
Dans l'exemple suivant, vous enregistrez un cluster de base de données Aurora nommé myscalablecluster
. L'enregistrement indique que le cluster de base de données doit être dimensionné de façon dynamique pour contenir de un à huit réplicas Aurora.
Pour LinuxmacOS, ou Unix :
aws application-autoscaling register-scalable-target \ --service-namespace rds \ --resource-id cluster:
myscalablecluster
\ --scalable-dimension rds:cluster:ReadReplicaCount \ --min-capacity1
\ --max-capacity8
\
Dans Windows :
aws application-autoscaling register-scalable-target ^ --service-namespace rds ^ --resource-id cluster:
myscalablecluster
^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --min-capacity1
^ --max-capacity8
^
Application Auto Scaling API
Pour enregistrer votre cluster de base de données Aurora auprès d'Application Auto Scaling, utilisez l'APIopération RegisterScalableTarget
Application Auto Scaling avec les paramètres suivants :
-
ServiceNamespace
– Définissez cette valeur surrds
. -
ResourceID
– Identifiant de la ressource du cluster de base de données Aurora. Pour ce paramètre, le type de ressource estcluster
et l'identifiant unique est le nom du cluster de base de données Aurora, par exemplecluster:myscalablecluster
. -
ScalableDimension
– Définissez cette valeur surrds:cluster:ReadReplicaCount
. -
MinCapacity
– Nombre minimal d'instances de base de données en écriture devant être gérées par Application Auto Scaling. Pour plus d'informations sur la relation entreMinCapacity
,MaxCapacity
et le nombre d'instances de base de données dans votre cluster, veuillez consulter Une capacité maximale et minimale. -
MaxCapacity
– Nombre maximal d'instances de base de données en écriture devant être gérées par Application Auto Scaling. Pour plus d'informations sur la relation entreMinCapacity
,MaxCapacity
et le nombre d'instances de base de données dans votre cluster, veuillez consulter Une capacité maximale et minimale.
Dans l'exemple suivant, vous enregistrez un cluster de base de données Aurora nommé myscalablecluster
Application Auto ScalingAPI. Cet enregistrement indique que le cluster de base de données doit être dimensionné de façon dynamique pour contenir de un à huit réplicas Aurora.
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": "rds", "ResourceId": "cluster:
myscalablecluster
", "ScalableDimension": "rds:cluster:ReadReplicaCount", "MinCapacity":1
, "MaxCapacity":8
}
Définition d'une stratégie de dimensionnement pour un cluster de base de données Aurora
Une configuration de politique de dimensionnement pour le suivi des cibles est représentée par un JSON bloc dans lequel les métriques et les valeurs cibles sont définies. Vous pouvez enregistrer une configuration de politique de dimensionnement sous forme de JSON bloc dans un fichier texte. Vous utilisez ce fichier texte lorsque vous invoquez le AWS CLI ou l'Application Auto ScalingAPI. Pour plus d'informations sur la syntaxe de configuration des politiques, consultez TargetTrackingScalingPolicyConfiguration
la section Application Auto Scaling API Reference.
Les options suivantes sont disponibles pour définir une configuration de stratégie de dimensionnement Suivi de la cible.
Rubriques
Utilisation d'une métrique prédéfinie
L'utilisation de métriques prédéfinies vous permet de définir rapidement une stratégie de mise à l'échelle de suivi de la cible pour un cluster de base de données Aurora qui fonctionne aussi bien avec la mise à l'échelle de suivi de la cible qu'avec la mise à l'échelle dynamique dans Aurora Auto Scaling.
Pour l'heure, les métriques prédéfinies d'Aurora Auto Scaling prises en charge par Aurora sont les suivantes :
-
RDSReaderAverageCPUUtilization— La valeur moyenne de la
CPUUtilization
métrique dans CloudWatch toutes les répliques Aurora du cluster de base de données Aurora. -
RDSReaderAverageDatabaseConnections— La valeur moyenne de la
DatabaseConnections
métrique dans CloudWatch toutes les répliques Aurora du cluster de base de données Aurora.
Pour plus d'informations sur les métriques CPUUtilization
et DatabaseConnections
, consultez CloudWatch Métriques Amazon pour Amazon Aurora.
Pour utiliser une métrique prédéfinie dans votre politique de dimensionnement, créez une configuration de suivi de la cible pour votre politique de dimensionnement. Cette configuration doit inclure PredefinedMetricSpecification
pour la métrique prédéfinie et TargetValue
pour la valeur cible de cette métrique.
Exemple
L'exemple suivant décrit une configuration de stratégie classique pour le dimensionnement Suivi de la cible d'un cluster de base de données Aurora. Dans cette configuration, la métrique RDSReaderAverageCPUUtilization
prédéfinie est utilisée pour ajuster le cluster de base de données Aurora sur la base d'une CPU utilisation moyenne de 40 % pour toutes les répliques Aurora.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } }
Utilisation d'une métrique personnalisée
L'utilisation de métriques personnalisées vous permet de définir une stratégie de dimensionnement Suivi de la cible répondant à vos exigences personnelles. Vous pouvez définir une métrique personnalisée en fonction d'une métrique Aurora qui évolue proportionnellement à la mise à l'échelle.
Toutes les métriques Aurora ne fonctionnent pas pour le suivi de la cible. La métrique doit être une métrique d'utilisation valide et décrire le degré d'occupation d'une instance. La valeur de la métrique doit augmenter ou diminuer proportionnellement au nombre de réplicas Aurora dans le cluster de base de données Aurora. Cette augmentation ou diminution proportionnelle est nécessaire pour que les données de la métrique puissent être utilisées afin d'augmenter ou de réduire proportionnellement le nombre de réplicas Aurora.
Exemple
L'exemple suivant décrit une configuration de suivi de la cible pour une stratégie de dimensionnement. Dans cette configuration, une métrique personnalisée ajuste un cluster de base de données Aurora en fonction d'une CPU utilisation moyenne de 50 % de toutes les répliques Aurora d'un cluster de base de données Aurora nommé. my-db-cluster
{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "CPUUtilization", "Namespace": "AWS/RDS", "Dimensions": [ {"Name": "DBClusterIdentifier","Value": "my-db-cluster"}, {"Name": "Role","Value": "READER"} ], "Statistic": "Average", "Unit": "Percent" } }
Utilisation des temps de stabilisation
Vous pouvez spécifier une valeur, en secondes, pour que ScaleOutCooldown
ajoute un temps de stabilisation pour la montée en charge de votre cluster de base de données Aurora. De la même manière, vous pouvez ajouter une valeur, en secondes, pour que ScaleInCooldown
ajoute un temps de stabilisation pour la diminution en charge de votre cluster de base de données Aurora. Pour plus d'informations sur ScaleInCooldown
etScaleOutCooldown
, consultez TargetTrackingScalingPolicyConfiguration
la section Application Auto Scaling API Reference.
L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, la métrique RDSReaderAverageCPUUtilization
prédéfinie est utilisée pour ajuster un cluster de base de données Aurora sur la base d'une CPU utilisation moyenne de 40 % pour toutes les répliques Aurora de ce cluster de base de données Aurora. La configuration indique un temps de stabilisation de diminution en charge de 10 minutes et un temps de stabilisation de montée en charge de 5 minutes.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }
Désactivation de l'activité de diminution en charge
Vous pouvez empêcher la configuration de stratégie de dimensionnement Suivi de la cible de diminuer la taille de votre cluster de base de données Aurora en désactivant l'activité de diminution en charge. La désactivation de l'activité de diminution en charge empêche la stratégie de dimensionnement de supprimer des réplicas Aurora, tout en autorisant encore la stratégie de dimensionnement à les créer si nécessaire.
Vous pouvez spécifier une valeur booléenne pour que DisableScaleIn
active ou désactive l'activité de diminution en charge de votre cluster de base de données Aurora. Pour plus d'informations à ce sujetDisableScaleIn
, consultez TargetTrackingScalingPolicyConfiguration
la section Application Auto Scaling API Reference.
L'exemple suivant décrit une configuration de suivi de la cible pour une politique de dimensionnement. Dans cette configuration, la métrique RDSReaderAverageCPUUtilization
prédéfinie ajuste un cluster de base de données Aurora en fonction d'une CPU utilisation moyenne de 40 % de toutes les répliques Aurora de ce cluster de base de données Aurora. La configuration désactive l'activité de diminution en charge pour la stratégie de dimensionnement.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "DisableScaleIn": true }
Application d'une stratégie de dimensionnement à un cluster de base de données Aurora
Après avoir enregistré votre cluster de base de données Aurora dans Application Auto Scaling et défini une stratégie de mise à l'échelle, appliquez cette dernière au cluster de base de données Aurora enregistré. Pour appliquer une politique de dimensionnement à un cluster de base de données Aurora, vous pouvez utiliser le AWS CLI ou l'Application Auto ScalingAPI.
Pour appliquer une politique de dimensionnement à votre cluster de base de données Aurora, utilisez la put-scaling-policy
AWS CLI commande avec les paramètres suivants :
-
--policy-name
– Nom de la stratégie de mise à l'échelle. -
--policy-type
– Définissez cette valeur surTargetTrackingScaling
. -
--resource-id
– Identifiant de la ressource du cluster de base de données Aurora. Pour ce paramètre, le type de ressource estcluster
et l'identifiant unique est le nom du cluster de base de données Aurora, par exemplecluster:myscalablecluster
. -
--service-namespace
– Définissez cette valeur surrds
. -
--scalable-dimension
– Définissez cette valeur surrds:cluster:ReadReplicaCount
. -
--target-tracking-scaling-policy-configuration
– Configuration de stratégie de mise à l'échelle de suivi de la cible à utiliser pour le cluster de base de données Aurora.
Dans l'exemple suivant, vous appliquez une stratégie de mise à l'échelle de suivi de la cible nommée myscalablepolicy
à un cluster de base de données Aurora nommé myscalablecluster
à l'aide d'Application Auto Scaling. Pour ce faire, vous utilisez une configuration de stratégie enregistrée dans un fichier nommé config.json
.
Pour LinuxmacOS, ou Unix :
aws application-autoscaling put-scaling-policy \ --policy-name
myscalablepolicy
\ --policy-type TargetTrackingScaling \ --resource-id cluster:myscalablecluster
\ --service-namespace rds \ --scalable-dimension rds:cluster:ReadReplicaCount \ --target-tracking-scaling-policy-configurationfile://config.json
Dans Windows :
aws application-autoscaling put-scaling-policy ^ --policy-name
myscalablepolicy
^ --policy-type TargetTrackingScaling ^ --resource-id cluster:myscalablecluster
^ --service-namespace rds ^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --target-tracking-scaling-policy-configurationfile://config.json
Pour appliquer une politique de dimensionnement à votre cluster de base de données Aurora avec Application Auto ScalingAPI, utilisez l'APIopération PutScalingPolicy
Application Auto Scaling avec les paramètres suivants :
-
PolicyName
– Nom de la stratégie de mise à l'échelle. -
ServiceNamespace
– Définissez cette valeur surrds
. -
ResourceID
– Identifiant de la ressource du cluster de base de données Aurora. Pour ce paramètre, le type de ressource estcluster
et l'identifiant unique est le nom du cluster de base de données Aurora, par exemplecluster:myscalablecluster
. -
ScalableDimension
– Définissez cette valeur surrds:cluster:ReadReplicaCount
. -
PolicyType
– Définissez cette valeur surTargetTrackingScaling
. -
TargetTrackingScalingPolicyConfiguration
– Configuration de stratégie de mise à l'échelle de suivi de la cible à utiliser pour le cluster de base de données Aurora.
Dans l'exemple suivant, vous appliquez une stratégie de mise à l'échelle de suivi de la cible nommée myscalablepolicy
à un cluster de base de données Aurora nommé myscalablecluster
à l'aide d'Application Auto Scaling. Vous utilisez une configuration de stratégie basée sur la métrique prédéfinie RDSReaderAverageCPUUtilization
.
POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy 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 { "PolicyName": "
myscalablepolicy
", "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster
", "ScalableDimension": "rds:cluster:ReadReplicaCount", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue":40.0
, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } } }