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.
Test d'Amazon Aurora My à SQL l'aide de requêtes d'injection d'erreurs
Vous pouvez tester la tolérance aux pannes de votre cluster Aurora My SQL DB à l'aide de requêtes d'injection de pannes. Les requêtes d'injection de défauts sont envoyées sous forme de SQL commandes à une instance Amazon Aurora. Elles vous permettent de programmer une simulation de l'un des événements suivants :
-
Un incident de l'instance de base de données du dispositif d'écriture ou de lecture
-
Un échec d'un réplica Aurora
-
Une défaillance disque
-
Une surcharge disque
Lorsqu'une requête d'injection d'erreurs indique un crash, elle force le crash de l'instance de base de SQL données Aurora My. Les autres requêtes d'injection d'erreurs se traduisent par des simulations d'événements d'erreur, mais n'entraînent pas la manifestation de l'événement. Lorsque vous soumettez une requête d'injection d'erreurs, vous pouvez aussi spécifier la durée pendant laquelle la simulation de l'événement d'erreur peut se produire.
Vous pouvez soumettre une requête d'injection d'erreurs à l'une de vos instances de réplica Aurora en vous connectant au point de terminaison du réplica Aurora. Pour de plus amples informations, veuillez consulter Connexions aux terminaux Amazon Aurora.
L'exécution de requêtes d'injection d'erreurs nécessite tous les privilèges d'utilisateur principal. Pour de plus amples informations, veuillez consulter Privilèges du compte utilisateur principal.
Test d'un incident d'instance
Vous pouvez forcer un incident d'instance Amazon Aurora à l'aide de la requête d'injection d'erreurs ALTER SYSTEM
CRASH
.
Pour cette requête d'injection d'erreurs, un basculement ne se produira pas. Si vous souhaitez tester un basculement, vous pouvez choisir l'action d'instance de basculement pour votre cluster de base de données dans la RDS console, ou utiliser la failover-db-cluster AWS CLI commande ou l'opération F. ailoverDBCluster RDS API
Syntaxe
ALTER SYSTEM CRASH [ INSTANCE | DISPATCHER | NODE ];
Options
Cette requête accepte l'un des types d'incident suivants :
-
INSTANCE
— Un crash de la base de données SQL compatible My pour l'instance Amazon Aurora est simulé. -
DISPATCHER
— Simulation d'un incident lié au répartiteur sur l'instance de scripteur pour le cluster de base de données Aurora. Le répartiteur écrit les mises à jour sur le volume de cluster d'un cluster de base de données Amazon Aurora. -
NODE
— Un crash de la base de données SQL compatible My et du répartiteur de l'instance Amazon Aurora est simulé. Pour cette simulation d'injection d'erreurs, le cache est également supprimé.
Le type d'incident par défaut est INSTANCE
.
Test d'une défaillance d'un réplica Aurora
Vous pouvez simuler l'échec d'un réplica Aurora à l'aide de la fonction de requête d'injection d'erreurs ALTER SYSTEM
SIMULATE READ REPLICA FAILURE
.
L'échec d'un réplica Aurora bloque toutes les demandes provenant de l'instance d'enregistreur et adressées à un réplica Aurora ou à tous les réplicas Aurora du cluster de bases de données pendant un intervalle de temps spécifié. Une fois l'intervalle de temps écoulé, les répliques Aurora concernées seront automatiquement synchronisées avec l'instance du rédacteur.
Syntaxe
ALTER SYSTEM SIMULATE
percentage_of_failure
PERCENT READ REPLICA FAILURE [ TO ALL | TO "replica name" ] FOR INTERVALquantity
{ YEAR | QUARTER | MONTH | WEEK | DAY | HOUR | MINUTE | SECOND };
Options
La requête d'injection d'erreurs accepte les paramètres suivants :
-
percentage_of_failure
— Pourcentage de demandes de blocage pendant l'événement d'échec. La valeur peut être un nombre double compris entre 0 et 100. Si vous spécifiez 0, aucune demande n'est bloquée. Si vous spécifiez 100, toutes les demandes sont bloquées. -
Failure type (Type d'échec) — Type d'échec à simuler. Spécifiez
TO ALL
pour simuler des échecs pour tous les réplicas Aurora dans le cluster de base de données. SpécifiezTO
et le nom du réplica Aurora pour simuler l'échec d'un réplica Aurora unique. Le type d'incident par défaut estTO ALL
. -
quantity
— Durée pendant laquelle simuler l'échec du réplica Aurora. L'intervalle est une durée suivie d'une unité de temps. La simulation intervient pendant la durée spécifiée par l'unité. Par exemple,20 MINUTE
entraîne l'exécution de la simulation pendant 20 minutes.Note
Soyez vigilant lorsque vous spécifiez l'intervalle de l'événement d'erreur du réplica Aurora. Si vous spécifiez un intervalle trop long et que votre instance d'enregistreur écrit une importante quantité de données pendant l'échec, votre cluster Aurora DB peut considérer que votre réplica Aurora s'est bloqué et le remplacer.
Test d'une défaillance disque
Vous pouvez simuler l'échec d'un disque pour un cluster de base de données Aurora DB à l'aide de la requête d'injection d'erreurs ALTER SYSTEM SIMULATE DISK FAILURE
.
Pendant la simulation d'un échec du disque, le cluster de base de données Aurora marque de façon aléatoire des segments de disque comme défectueux. Les demandes adressées à ces segments seront bloquées pendant la durée de la simulation.
Syntaxe
ALTER SYSTEM SIMULATE
percentage_of_failure
PERCENT DISK FAILURE [ IN DISKindex
| NODEindex
] FOR INTERVALquantity
{ YEAR | QUARTER | MONTH | WEEK | DAY | HOUR | MINUTE | SECOND };
Options
La requête d'injection d'erreurs accepte les paramètres suivants :
-
percentage_of_failure
— Pourcentage du disque à marquer comme défaillant pendant l'événement d'échec. La valeur peut être un nombre double compris entre 0 et 100. Si vous spécifiez 0, aucune partie du disque n'est marquée comme défaillante. Si vous spécifiez 100, la totalité du disque est marquée comme défaillante. -
DISK index
— Bloc de données logique spécifique pour lequel simuler l'événement d'échec. Si vous dépassez la plage de blocs de données logiques disponibles, vous recevez une erreur qui vous indique la valeur d'index maximale que vous pouvez spécifier. Pour plus d'informations, consultez Affichage du statut du volume pour un cluster de base de données Aurora MySQL. -
NODE index
— Nœud de stockage spécifique pour lequel simuler l'événement d'échec. Si vous dépassez la plage de nœuds de stockage disponibles, vous recevez une erreur qui vous indique la valeur d'index maximale que vous pouvez spécifier. Pour plus d'informations, consultez Affichage du statut du volume pour un cluster de base de données Aurora MySQL. -
quantity
— Durée pendant laquelle l'échec de disque est simulé. L'intervalle est une durée suivie d'une unité de temps. La simulation intervient pendant la durée spécifiée par l'unité. Par exemple,20 MINUTE
entraîne l'exécution de la simulation pendant 20 minutes.
Test d'une surcharge disque
Vous pouvez simuler l'échec d'un disque pour un cluster de base de données Aurora à l'aide de la requête d'injection d'erreurs ALTER SYSTEM SIMULATE DISK CONGESTION
.
Pendant la simulation d'une surcharge du disque, le cluster de base de données Aurora marque de façon aléatoire les segments disque comme surchargés. Les demandes adressées à ces segments sont retardées entre le délai minimal et le délai maximal spécifiés de la durée de la simulation.
Syntaxe
ALTER SYSTEM SIMULATE
percentage_of_failure
PERCENT DISK CONGESTION BETWEENminimum
ANDmaximum
MILLISECONDS [ IN DISKindex
| NODEindex
] FOR INTERVALquantity
{ YEAR | QUARTER | MONTH | WEEK | DAY | HOUR | MINUTE | SECOND };
Options
La requête d'injection d'erreurs accepte les paramètres suivants :
-
percentage_of_failure
— Pourcentage du disque à marquer comme surchargé pendant l'événement d'échec. La valeur peut être un nombre double compris entre 0 et 100. Si vous spécifiez 0, aucune partie du disque n'est marquée comme surchargée. Si vous spécifiez 100, la totalité du disque est marquée comme surchargée. -
DISK index
ouNODE index
— Disque ou nœud spécifique pour lequel l'événement d'échec est simulé. Si vous dépassez la plage d'index du disque ou du nœud, vous recevez une erreur qui vous indique la valeur d'index maximale que vous pouvez spécifier. -
minimum
etmaximum
— Durées minimale et maximale du délai de surcharge, en millisecondes. Les segments de disque marqués comme surchargés sont retardés pendant une durée aléatoire comprise entre la durée minimale et la durée maximale en millisecondes de la simulation. -
quantity
— Durée pendant laquelle la surcharge du disque est simulée. L'intervalle est une durée suivie d'une unité de temps. La simulation intervient pendant la durée spécifiée par l'unité de temps. Par exemple,20 MINUTE
entraîne l'exécution de la simulation pendant 20 minutes.