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.
Injection de latence
Utilisez l'action Latency Injection (aws:ebs:volume-io-latency) AWS FIS pour simuler I/O une latence élevée sur vos volumes Amazon EBS afin de tester la façon dont vos applications réagissent à la dégradation des performances de stockage. Cette action vous permet de spécifier la valeur de latence à injecter ainsi que le pourcentage de I/O cette valeur qui sera impacté sur le volume cible. Avec AWS FIS, vous pouvez utiliser des modèles d'expérience de latence préconfigurés pour commencer à tester les différents modèles de I/O latence qui peuvent être observés lors de pannes de stockage. Ces modèles sont conçus comme un ensemble initial de scénarios que vous pouvez utiliser pour introduire des interruptions dans vos applications afin de tester la résilience. Ils ne sont pas conçus pour couvrir tous les types d'impact que vos applications peuvent subir dans le monde réel. Nous vous recommandons de les adapter pour exécuter plusieurs tests différents en fonction des besoins de performances de vos applications. Vous pouvez personnaliser les modèles disponibles ou créer de nouveaux modèles d'expérience pour tester les exigences spécifiques de votre application.
Pre-configured modèles d'expériences de latence
Amazon EBS fournit les modèles d'expérience de latence suivants via la console EBS et la bibliothèque de AWS FIS scénarios. Vous pouvez utiliser ces modèles directement sur vos volumes cibles pour exécuter une expérience d'injection de latence.
-
Latence prolongée : simule une latence constante. Cette expérience utilise une action d'injection de latence et a une durée totale de 15 minutes. Cette expérience simule une latence persistante sur 50 % de la lecture I/O et 100 % de l'écriture I/O : 500 ms pendant 15 minutes.
-
Latence croissante : simule une augmentation progressive de la latence. Cette expérience utilise cinq actions d'injection de latence et a une durée totale de 15 minutes. Cette expérience simulera une augmentation progressive de la latence sur 10 % de la lecture I/O et 25 % de l'écriture I/O : 50 ms pendant 3 minutes, 200 ms pendant 3 minutes, 700 ms pendant 3 minutes, 1 seconde pendant 3 minutes et 15 secondes pendant 3 minutes.
-
Latence intermittente : simule de brusques pics de latence intermittents entrecoupés de périodes de rétablissement. Cette expérience utilise trois actions d'injection de latence et a une durée totale de 15 minutes. Cette expérience simulera trois pics de latence sur 0,1 % de la lecture et de l'écriture I/O : un pic de 30 secondes qui dure 1 minute, un pic de 10 secondes qui dure 2 minutes et un pic de 20 secondes qui dure 2 minutes. Il y aura des périodes de récupération de 5 minutes entre chaque pic de latence.
-
Latence décroissante : simule une diminution progressive de la latence. Cette expérience utilise cinq actions d'injection de latence et a une durée totale de 15 minutes. Cette expérience simulera une diminution progressive de la latence sur 10 % de la lecture I/O et de l'écriture I/O : 20 secondes pendant 3 minutes, 5 secondes pendant 3 minutes, 900 ms pendant 3 minutes, 300 ms pendant 3 minutes et 40 ms pendant 3 minutes.
Personnalisez les scénarios préconfigurés
Vous pouvez personnaliser les modèles préconfigurés ci-dessus ou créer vos propres nouveaux modèles d'expérience à l'aide des paramètres personnalisables suivants.
-
readIOPercentage— Pourcentage d' I/O opérations de lecture pour lesquelles une latence sera injectée. Il s'agit du pourcentage de toutes les I/O opérations de lecture sur le volume qui seront affectées par l'action.Plage : min 0,1 %, maximum 100 %
-
readIOLatencyMilliseconds— Quantité de latence injectée lors des I/O opérations de lecture. Il s'agit de la valeur de latence qui sera observée sur le pourcentage spécifié de la lecture I/O pendant l'expérience.Portée : min 1 ms (io2) /10 ms (non-io2), max. 60 secondes
-
writeIOPercentage— Pourcentage d' I/O opérations d'écriture pour lesquelles une latence sera injectée. Il s'agit du pourcentage de toutes les I/O opérations d'écriture sur le volume qui seront affectées par l'action.Plage : min 0,1 %, maximum 100 %
-
writeIOLatencyMilliseconds— Quantité de latence injectée lors des I/O opérations d'écriture. Il s'agit de la valeur de latence qui sera observée sur le pourcentage d'écriture spécifié I/O pendant l'expérience.Portée : min 1 ms (io2) /10 ms (non-io2), 60 secondes maximum
-
duration— Durée pendant laquelle la latence sera injectée sur la base du pourcentage I/O sélectionné.Portée : min. 1 seconde, max. 12 heures
Surveillance de l'injection de latence
Vous pouvez surveiller l'impact sur les performances de vos volumes de la manière suivante :
-
Utilisez des mesures de latence moyenne CloudWatch pour obtenir la I/O latence moyenne par minute. Pour plus d'informations, voir Surveillez vos volumes EBS à l'aide CloudWatch de.
-
Utilisez les statistiques de performances détaillées d'EBS disponibles via NVMe-CLI, CloudWatch agent et Prometheus pour obtenir une latence moyenne par seconde. I/O Les mesures détaillées fournissent également des histogrammes de I/O latence que vous pouvez utiliser pour analyser la variance de latence de vos volumes. Pour plus d'informations, consultez les statistiques de performances détaillées de NVMe.
-
Utilisez Vérifications de l'état des volumes Amazon EBS. Lorsque vous injectez de la I/O latence, l'état du volume passe à l'
warningétat.
Considérations
Lorsque vous utilisez l'injection de latence EBS, tenez compte des points suivants :
-
L'injection de latence est prise en charge sur tous les types d'Nitro-based instances, sauf : P4d, P5, P5e, TRn2u, G6, G6f, Gr6, Gr6f, M8i,,,, R8i,, i8GE et. M8i-flex C8i-flex R8i-flex Mac-m4pro Mac-m4
-
Vous pouvez constater une variance allant jusqu'à 5 % entre la valeur de latence spécifiée dans l'expérience et la latence résultante observée.
-
Si vous effectuez un très petit nombre d' I/O opérations, le pourcentage I/O indiqué dans les paramètres de l'action risque de ne pas correspondre au pourcentage réel d'opérations I/O touchées par l'action.
Pour exécuter une expérience d'injection de latence sur un volume Amazon EBS
-
Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/
. -
Dans le panneau de navigation, choisissez Volumes.
-
Sélectionnez les volumes sur lesquels exécuter l'expérience et choisissez Actions, Tests de résilience, Injecter la I/O latence du volume.
La AWS Fault Injection Service console s'ouvre.
-
Dans la fenêtre Créer une expérience, sélectionnez le type d'expérience à exécuter : intermittent, croissant , soutenu ou décroissant.
-
Pour sélectionner le rôle IAM, choisissez Créer un nouveau rôle afin de créer un nouveau rôle qui AWS FIS sera utilisé pour mener les expériences en votre nom. Vous pouvez également choisir Utiliser un rôle IAM existant si vous avez déjà créé un rôle IAM avec les autorisations requises.
-
La section Estimation des prix vous donne une estimation du coût de l'exécution de l'expérience. Avec AWS FIS, vous êtes facturé par minute d'exécution d'une action, du début à la fin, en fonction du nombre de comptes cibles pour votre expérience.
-
Sélectionnez Start experiment (Démarrer une expérience).