AWS FIS Référence des actions - AWS Service d'injection de défauts

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.

AWS FIS Référence des actions

Une action est l'activité d'injection de défauts que vous exécutez sur une cible à l'aide de AWS Fault Injection Service (AWS FIS). AWS FIS fournit des actions préconfigurées pour des types spécifiques de cibles dans l'ensemble des AWS services. Vous ajoutez des actions à un modèle de test, que vous utilisez ensuite pour exécuter des tests.

Cette référence décrit les actions courantes dans AWS FIS, y compris les informations sur les paramètres de l'action et les autorisations IAM requises. Vous pouvez également répertorier les AWS FIS actions prises en charge à l'aide de la AWS FIS console ou de la commande list-actions depuis AWS Command Line Interface ()AWS CLI. Une fois que vous avez le nom d'une action spécifique, vous pouvez afficher des informations détaillées sur cette action à l'aide de la commande get-action. Pour plus d'informations sur l'utilisation des AWS FIS commandes avec le AWS CLI, consultez le guide de AWS Command Line Interface l'utilisateur et consultez le manuel de référence des AWS CLI commandes.

Pour plus d'informations sur le fonctionnement AWS FIS des actions, reportez-vous Actions pour la AWS FIS aux sections etComment fonctionne le service d'injection de AWS défauts avec IAM.

Actions d'injection de défauts

AWS FIS prend en charge les actions d'injection de défauts suivantes.

aws:fis:inject-api-internal-error

Injecte des erreurs internes dans les demandes effectuées par le rôle IAM cible. La réponse spécifique dépend de chaque service et de chaque API. Pour plus d'informations, consultez la documentation du SDK et de l'API de votre service.

Type de ressource
  • aws:iam:role

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • service— L'espace de noms de AWS l'API cible. La valeur prise en charge est ec2 etkinesis.

  • percentage— Le pourcentage (1 à 100) d'appels dans lesquels le défaut a été injecté.

  • operations— Les opérations dans lesquelles injecter le défaut sont séparées par des virgules. Pour obtenir la liste des actions d'API pour l'espace de ec2 noms, consultez Amazon EC2 API Reference et Amazon Kinesis Data Streams API Reference.

Permissions
  • fis:InjectApiInternalError

aws:fis:inject-api-throttle-error

Injecte des erreurs de régulation dans les demandes effectuées par le rôle IAM cible. La réponse spécifique dépend de chaque service et de chaque API. Pour plus d'informations, consultez la documentation du SDK et de l'API de votre service.

Type de ressource
  • aws:iam:role

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • service— L'espace de noms de AWS l'API cible. La valeur prise en charge est ec2 etkinesis.

  • percentage— Le pourcentage (1 à 100) d'appels dans lesquels le défaut a été injecté.

  • operations— Les opérations dans lesquelles injecter le défaut sont séparées par des virgules. Pour obtenir la liste des actions d'API pour l'espace de ec2 noms, consultez Amazon EC2 API Reference et Amazon Kinesis Data Streams API Reference.

Permissions
  • fis:InjectApiThrottleError

aws:fis:inject-api-unavailable-error

Injecte des erreurs non disponibles dans les demandes effectuées par le rôle IAM cible. La réponse spécifique dépend de chaque service et de chaque API. Pour plus d'informations, consultez la documentation du SDK et de l'API de votre service.

Type de ressource
  • aws:iam:role

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • service— L'espace de noms de AWS l'API cible. La valeur prise en charge est ec2 etkinesis.

  • percentage— Le pourcentage (1 à 100) d'appels dans lesquels le défaut a été injecté.

  • operations— Les opérations dans lesquelles injecter le défaut sont séparées par des virgules. Pour obtenir la liste des actions d'API pour l'espace de ec2 noms, consultez Amazon EC2 API Reference et Amazon Kinesis Data Streams API Reference.

Permissions
  • fis:InjectApiUnavailableError

Action de rétablissement

Les actions de restauration sont effectuées pour atténuer les risques ou protéger les applications en cas de panne.

AWS FIS prend en charge les actions de restauration suivantes.

aws:arc:start-zonal-autoshift

Déplace automatiquement le trafic des ressources prises en charge hors d'une zone de disponibilité (AZ) potentiellement altérée et le redirige vers une zone saine AZs dans la même région AWS. Cela permet de faire l'expérience de l'autoshift zonal via FIS. L'autoshift zonal est une fonctionnalité d'Amazon Application Recovery Controller (ARC) qui permet AWS de transférer le trafic d'une ressource hors d'une zone de zone de disponibilité, en votre nom, lorsqu'il est AWS déterminé qu'une défaillance est susceptible d'affecter les clients de la zone de zone de disponibilité.

Lorsque vous exécutez l'aws:arc:start-zonal-autoshiftaction, AWS FIS gère le décalage de zone à l'aide du StartZonalShift UpdateZonalShift, et CancelZonalShift APIs en définissant le expiresIn champ pour ces demandes sur 1 minute comme mécanisme de sécurité. Cela permet d' AWS FIS annuler rapidement le décalage de zone en cas d'événements imprévus tels que des pannes de réseau ou des problèmes du système. Dans la console ARC, le champ du délai d'expiration affiche AWS FIS-managed, et l'expiration prévue réelle est déterminée par la durée spécifiée dans l'action de changement de zone.

Type de ressource
  • aws:arc:zonal-shift-managed-resource

    Les ressources gérées par transfert zonal sont des types de ressources tels que les clusters Amazon EKS, les Amazon EC2 Application and Network Load Balancers et les groupes Amazon EC2 Auto Scaling qui peuvent être activés pour l'autoshift zonal ARC. Pour plus d'informations, consultez les ressources prises en charge et l'activation des ressources de décalage automatique zonales dans le Guide du développeur ARC.

Parameters
  • duration— La durée pendant laquelle le trafic sera transféré. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • availabilityZoneIdentifier— Le trafic s'éloigne de cette AZ. Il peut s'agir d'un nom AZ (us-east-1a) ou d'un ID AZ (use1-az1).

  • managedResourceTypes— Les types de ressources à partir desquels le trafic sera transféré, séparés par des virgules. Les options possibles sont ASG (Auto Scaling Group), ALB (Application Load Balancer), NLB (Network Load Balancer) et EKS (Amazon EKS).

  • zonalAutoshiftStatus— L'zonalAutoshiftStatusétat des ressources que vous souhaitez cibler. Les options possibles sont ENABLEDDISABLED, etANY. La valeur par défaut est ENABLED.

Permissions
  • arc-zonal-shift:StartZonalShift

  • arc-zonal-shift:GetManagedResource

  • arc-zonal-shift:UpdateZonalShift

  • arc-zonal-shift:CancelZonalShift

  • arc-zonal-shift:ListManagedResources

  • mise à l'échelle automatique : DescribeTags

  • étiquette : GetResources

Attendre une action

AWS FIS prend en charge l'action d'attente suivante.

aws:fis:wait

Exécute l'action d' AWS FIS attente.

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • Aucune

CloudWatch Actions d'Amazon

AWS FIS prend en charge l' CloudWatch action Amazon suivante.

aws:cloudwatch:assert-alarm-state

Vérifie que les alarmes spécifiées sont dans l'un des états d'alarme spécifiés.

Type de ressource
  • Aucune

Parameters
  • alarmArns— Les ARNs alarmes, séparées par des virgules. Vous pouvez définir jusqu'à cinq alarmes.

  • alarmStates— Les états d'alarme, séparés par des virgules. Les états d'alarme possibles sont OKALARM, etINSUFFICIENT_DATA.

Permissions
  • cloudwatch:DescribeAlarms

Actions Amazon DynamoDB

AWS FIS prend en charge l'action Amazon DynamoDB suivante.

aws:dynamodb:global-table-pause-replication

Interrompt la réplication de la table globale MREC (Multi-region eventually consistent) d'Amazon DynamoDB vers n'importe quelle table de réplication. Les tables peuvent continuer à être répliquées jusqu'à 5 minutes après le début de l'action.

Cette action ne prend pas en charge les tables globales multirégionales fortement cohérentes (MRSC). Pour plus d'informations, consultez la section Modes de cohérence dans le guide du développeur Amazon DynamoDB.

L'instruction suivante sera ajoutée dynamiquement à la politique pour la table globale DynamoDB MREC cible :

{ "Statement":[ { "Sid": "DoNotModifyFisDynamoDbPauseReplicationEXPxxxxxxxxxxxxxxx", "Effect":"Deny", "Principal":{ "AWS":"arn:aws:iam::123456789012:role/aws-service-role/replication.dynamodb.amazonaws.com/AWSServiceRoleForDynamoDBReplication" }, "Action":[ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:DescribeTable", "dynamodb:UpdateTable", "dynamodb:Scan", "dynamodb:DescribeTimeToLive", "dynamodb:UpdateTimeToLive" ], "Resource":"arn:aws:dynamodb:us-east-1:123456789012:table/ExampleGlobalTable", "Condition": { "DateLessThan": { "aws:CurrentTime": "2024-04-10T09:51:41.511Z" } } } ] }

L'instruction suivante sera ajoutée dynamiquement à la politique de flux pour la table globale DynamoDB MREC cible :

{ "Statement":[ { "Sid": "DoNotModifyFisDynamoDbPauseReplicationEXPxxxxxxxxxxxxxxx", "Effect":"Deny", "Principal":{ "AWS":"arn:aws:iam::123456789012:role/aws-service-role/replication.dynamodb.amazonaws.com/AWSServiceRoleForDynamoDBReplication" }, "Action":[ "dynamodb:GetRecords", "dynamodb:DescribeStream", "dynamodb:GetShardIterator" ], "Resource":"arn:aws:dynamodb:us-east-1:123456789012:table/ExampleGlobalTable/stream/2023-08-31T09:50:24.025", "Condition": { "DateLessThan": { "aws:CurrentTime": "2024-04-10T09:51:41.511Z" } } ] }

Si aucune politique de ressources n'est attachée à une table ou à un flux cible, une politique de ressources est créée pour la durée de l'expérience et automatiquement supprimée à la fin de l'expérience. Dans le cas contraire, l'instruction d'erreur est insérée dans une politique existante, sans aucune modification supplémentaire des déclarations de stratégie existantes. La déclaration d'erreur est ensuite supprimée de la politique à la fin de l'expérience.

Type de ressource
  • aws:dynamodb:global-table

Parameters
  • duration— Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • dynamodb:PutResourcePolicy

  • dynamodb:DeleteResourcePolicy

  • dynamodb:GetResourcePolicy

  • dynamodb:DescribeTable

  • tag:GetResources

Actions SQL d'Amazon Aurora

AWS FIS prend en charge les actions SQL Amazon Aurora suivantes.

aws:dsql:cluster-connection-failure

Crée des défaillances de connexion contrôlées dans un cluster Aurora DSQL pendant une durée spécifiée afin de tester la résilience des applications.

Type de ressource
  • aws:dsql:cluster

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • percentage— Le pourcentage (1 à 100) d'appels dans lesquels le défaut a été injecté.

Permissions
  • dsql:InjectError

  • dsql:GetCluster

  • tag:GetResources

Pour lancer l'expérience avec Aurora DSQL, consultez la section Tests d'injection de défauts dans le guide de l'utilisateur d'Aurora DSQL.

Actions Amazon EBS

AWS FIS prend en charge l'action Amazon EBS suivante.

aws:ebs:pause-volume-io

Suspend I/O les opérations sur les volumes EBS cibles. Les volumes cibles doivent se trouver dans la même zone de disponibilité et doivent être attachés à des instances basées sur le système Nitro. Les volumes ne peuvent pas être attachés à des instances d'un Outpost.

Pour lancer l'expérience à l'aide de la EC2 console Amazon, consultez la section Fault testing on Amazon EBS dans le guide de l' EC2 utilisateur Amazon.

Type de ressource
  • aws:ec2:ebs-volume

Parameters
  • duration— La durée, d'une seconde à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute, PT5 S représente cinq secondes et PT6 H représente six heures. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures. Si la durée est courte, par exemple PT5 S, elle I/O est suspendue pendant la durée spécifiée, mais la fin de l'expérience peut prendre plus de temps en raison du temps nécessaire à son initialisation.

Permissions
  • ec2:DescribeVolumes

  • ec2:PauseVolumeIO

  • tag:GetResources

aws:ebs:volume-io-latency

Injecte de la latence aux I/O opérations des volumes EBS cibles. Les volumes cibles doivent se trouver dans la même zone de disponibilité et doivent être attachés à des instances basées sur Nitro. Les volumes ne peuvent pas être attachés à des instances dans un Outpost.

Pour lancer l'expérience à l'aide de la EC2 console Amazon, consultez la section Fault testing on Amazon EBS dans le guide de l'utilisateur Amazon EBS.

Type de ressource
  • aws:ec2:ebs-volume

Parameters
  • readIOPercentage— Le pourcentage d' I/O opérations de lecture sur lesquelles la latence sera injectée, de 0,1 % à 100 %. Il s'agit du pourcentage de toutes les I/O opérations de lecture sur le volume qui seront affectées au cours de l'expérience. La valeur par défaut est 100.

  • readIOLatencyMilliseconds— La quantité de latence injectée lors des I/O opérations de lecture en millisecondes, de 1 ms (volumes io2) ou 10 ms (volumes non io2) à 60 secondes. Il s'agit de la valeur de latence qui sera observée sur le pourcentage de lecture spécifié I/O pendant l'expérience. La valeur par défaut est 100.

  • writeIOPercentage— Le pourcentage d' I/O opérations d'écriture sur lesquelles la latence sera injectée, de 0,1 % à 100 %. Il s'agit du pourcentage de toutes les I/O opérations d'écriture sur le volume qui seront affectées au cours de l'expérience. La valeur par défaut est 100.

  • writeIOLatencyMilliseconds— La quantité de latence injectée lors des I/O opérations d'écriture en millisecondes, de 1 ms (volumes io2) ou 10 ms (volumes non io2) à 60 secondes. Il s'agit de la valeur de latence qui sera observée sur le pourcentage de lecture spécifié I/O pendant l'expérience. La valeur par défaut est 100.

  • duration— La durée pendant laquelle la latence sera injectée, de 1 seconde à 12 heures.

Permissions
  • ec2:DescribeVolumes

  • ec2:InjectVolumeIOLatency

  • tag:GetResources

EC2 Actions d'Amazon

AWS FIS prend en charge les EC2 actions Amazon suivantes.

AWS FIS prend également en charge les actions d'injection de défauts via l'agent AWS Systems Manager SSM. Systems Manager utilise un document SSM qui définit les actions à effectuer sur les EC2 instances. Vous pouvez utiliser votre propre document pour injecter des erreurs personnalisées, ou vous pouvez utiliser des documents SSM préconfigurés. Pour de plus amples informations, veuillez consulter Utiliser les documents SSM de Systems Manager avec FIS AWS.

aws:ec2:api-insufficient-instance-capacity-error

Injecte des réponses InsufficientInstanceCapacity d'erreur aux demandes effectuées par les rôles IAM cibles. Les opérations prises en charge sont les CreateFleet appels RunInstances CreateCapacityReservation StartInstances,,. Les demandes qui incluent des demandes de capacité dans plusieurs zones de disponibilité ne sont pas prises en charge. Cette action ne permet pas de définir des cibles à l'aide de balises de ressources, de filtres ou de paramètres.

Type de ressource
  • aws:iam:role

Parameters
  • duration— Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • availabilityZoneIdentifiers— Liste des zones de disponibilité séparées par des virgules. Supporte les noms de zone IDs (par exemple"use1-az1, use1-az2") et de zone (par exemple"us-east-1a").

  • percentage— Le pourcentage (1 à 100) d'appels dans lesquels le défaut a été injecté.

Permissions
  • ec2:InjectApiErroravec une ec2:FisActionId valeur de clé de condition définie sur aws:ec2:api-insufficient-instance-capacity-error et ec2:FisTargetArns une clé de condition définie pour cibler les rôles IAM.

Pour un exemple de politique, consultez Exemple : utilisez des clés de condition pour ec2:InjectApiError.

aws:ec2:asg-insufficient-instance-capacity-error

Injecte des réponses InsufficientInstanceCapacity d'erreur aux demandes effectuées par les groupes Amazon EC2 Auto Scaling cibles. Cette action prend uniquement en charge les groupes Amazon EC2 Auto Scaling utilisant des modèles de lancement. Pour en savoir plus sur les erreurs liées à une capacité d'instance insuffisante, consultez le guide de EC2 l'utilisateur Amazon.

Type de ressource
  • aws:ec2:autoscaling-group

Parameters
  • duration— Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • availabilityZoneIdentifiers— Liste des zones de disponibilité séparées par des virgules. Supporte les noms de zone IDs (par exemple"use1-az1, use1-az2") et de zone (par exemple"us-east-1a").

  • percentage : facultatif. Le pourcentage (1 à 100) de demandes de lancement du groupe Amazon EC2 Auto Scaling cible pour injecter le défaut. La valeur par défaut est 100.

Permissions
  • ec2:InjectApiErroravec la clé de condition ec2 : FisActionId valeur définie sur aws:ec2:asg-insufficient-instance-capacity-error et clé de ec2:FisTargetArns condition définie pour cibler les groupes Amazon EC2 Auto Scaling.

  • autoscaling:DescribeAutoScalingGroups

Pour un exemple de politique, consultez Exemple : utilisez des clés de condition pour ec2:InjectApiError.

aws:ec2:reboot-instances

Exécute l'action d' EC2 API Amazon RebootInstancessur les EC2 instances cibles.

Type de ressource
  • aws:ec2:instance

Parameters
  • Aucune

Permissions
  • ec2:RebootInstances

  • ec2:DescribeInstances

AWS politique gérée

aws:ec2:send-spot-instance-interruptions

Interrompt les instances Spot cibles. Envoie un avis d'interruption des instances Spot aux instances Spot cibles deux minutes avant de les interrompre. Le temps d'interruption est déterminé par le durationBeforeInterruptionparamètre spécifié. Deux minutes après l'heure d'interruption, les instances Spot sont résiliées ou arrêtées, en fonction de leur comportement d'interruption. Une instance Spot qui est interrompue par AWS FIS reste à l’arrêt tant que vous ne la redémarrez pas.

Immédiatement après le lancement de l'action, l'instance cible reçoit une recommandation de rééquilibrage d'EC2 instance. Si vous l'avez spécifié durationBeforeInterruption, il peut y avoir un délai entre la recommandation de rééquilibrage et l'avis d'interruption.

Pour de plus amples informations, veuillez consulter Tutoriel : tester les interruptions d'une instance Spot à l'aide AWS de FIS. Sinon, pour lancer l'expérience à l'aide de la EC2 console Amazon, consultez la section Initiate a Spot Instance interruption dans le guide de EC2 l'utilisateur Amazon.

Type de ressource
  • aws:ec2:spot-instance

Parameters
  • durationBeforeInterruption— Le temps d'attente avant d'interrompre l'instance, de 2 à 15 minutes. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT2 M représente deux minutes. Dans la AWS FIS console, vous entrez le nombre de minutes.

Permissions
  • ec2:SendSpotInstanceInterruptions

  • ec2:DescribeInstances

AWS politique gérée

aws:ec2:stop-instances

Exécute l'action d' EC2 API Amazon StopInstancessur les EC2 instances cibles.

Type de ressource
  • aws:ec2:instance

Parameters
  • startInstancesAfterDuration : facultatif. Le temps d'attente avant de démarrer l'instance, compris entre une minute et 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures. Si l'instance possède un volume EBS chiffré, vous devez AWS FIS autoriser la clé KMS utilisée pour chiffrer le volume, ou ajouter le rôle d'expérience à la politique de clé KMS.

  • completeIfInstancesTerminated : facultatif. Si c'est vrai, et si startInstancesAfterDuration c'est également vrai, cette action n'échouera pas lorsque les EC2 instances ciblées ont été résiliées par une demande distincte en dehors de FIS et ne peuvent pas être redémarrées. Par exemple, les groupes Auto Scaling peuvent mettre fin aux EC2 instances arrêtées sous leur contrôle avant que cette action ne soit terminée. La valeur par défaut est false.

Permissions
  • ec2:StopInstances

  • ec2:StartInstances

  • ec2:DescribeInstances : facultatif. Obligatoire avec completeIfInstancesTerminated pour valider l'état de l'instance à la fin de l'action.

  • kms:CreateGrant : facultatif. Requis avec startInstancesAfterDuration pour redémarrer les instances avec des volumes chiffrés.

AWS politique gérée

aws:ec2:terminate-instances

Exécute l'action d' EC2 API Amazon TerminateInstancessur les EC2 instances cibles.

Type de ressource
  • aws:ec2:instance

Parameters
  • Aucune

Permissions
  • ec2:TerminateInstances

  • ec2:DescribeInstances

AWS politique gérée

Actions Amazon ECS

AWS FIS prend en charge les actions Amazon ECS suivantes.

aws:ecs:drain-container-instances

Exécute l'action d'API Amazon ECS UpdateContainerInstancesStatepour drainer le pourcentage spécifié d' EC2 instances Amazon sous-jacentes sur les clusters cibles.

Type de ressource
  • aws:ecs:cluster

Parameters
  • drainagePercentage— Le pourcentage (1-100).

  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ecs:DescribeClusters

  • ecs:UpdateContainerInstancesState

  • ecs:ListContainerInstances

  • tag:GetResources

aws:ecs:stop-task

Exécute l'action d'API Amazon ECS StopTaskpour arrêter la tâche cible.

Type de ressource
  • aws:ecs:task

Parameters
  • Aucune

Permissions
  • ecs:DescribeTasks

  • ecs:ListTasks

  • ecs:StopTask

  • tag:GetResources

aws:ecs:task-cpu-stress

Réduit le stress du processeur sur les tâches cibles. Utilise le document AWSFIS-RunSSM -CPU-Stress. Les tâches doivent être gérées par AWS Systems Manager. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Type de ressource
  • aws:ecs:task

Parameters
  • duration— La durée du test de stress, au format ISO 8601.

  • percent : facultatif. Pourcentage de charge cible, compris entre 0 (aucune charge) et 100 (pleine charge). La valeur par défaut est 100.

  • workers : facultatif. Le nombre de facteurs de stress à utiliser. La valeur par défaut est 0, qui utilise tous les facteurs de stress.

  • installDependencies : facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. La dépendance eststress-ng.

Permissions
  • ecs:DescribeTasks

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ecs:task-io-stress

Fait I/O peser du stress sur les tâches cibles. Utilise le document AWSFIS-Run-IO-Stress SSM. Les tâches doivent être gérées par AWS Systems Manager. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Type de ressource
  • aws:ecs:task

Parameters
  • duration— La durée du test de stress, au format ISO 8601.

  • percent : facultatif. Pourcentage d'espace libre sur le système de fichiers à utiliser pendant le test de stress. La valeur par défaut est de 80 %.

  • workers : facultatif. Le nombre de workers. Les travailleurs effectuent une combinaison d' read/write opérations séquentielles, aléatoires et mappées en mémoire, de synchronisation forcée et de suppression du cache. Plusieurs processus enfants exécutent différentes I/O opérations sur le même fichier. La valeur par défaut est 1.

  • installDependencies : facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. La dépendance eststress-ng.

Permissions
  • ecs:DescribeTasks

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ecs:task-kill-process

Arrête le processus spécifié dans les tâches à l'aide de la killall commande. Utilise le AWSFIS-Rundocument SSM -Kill-Process. La définition de la tâche doit être pidMode définie surtask. Les tâches doivent être gérées par AWS Systems Manager. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Type de ressource
  • aws:ecs:task

Parameters
  • processName— Nom du processus à arrêter.

  • signal : facultatif. Le signal à envoyer avec la commande. Les valeurs possibles sont SIGTERM (que le récepteur peut choisir d'ignorer) et SIGKILL (qui ne peuvent pas être ignorées). La valeur par défaut est SIGTERM.

  • installDependencies – Facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. La dépendance estkillall.

Permissions
  • ecs:DescribeTasks

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ecs:task-network-blackhole-port

Supprime le trafic entrant ou sortant pour le protocole et le port spécifiés, en utilisant les points de terminaison Amazon ECS Fault Injection. Utilise le document AWSFIS-RunSSM -Network-Blackhole-Port-ECS. La définition de la tâche doit être pidMode définie surtask. Les tâches doivent être gérées par AWS Systems Manager. Vous ne pouvez pas networkMode définir ce paramètre bridge dans la définition de la tâche. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Lorsque useEcsFaultInjectionEndpoints ce paramètre est défini surfalse, le défaut utilise l'iptablesoutil et utilise le document SSM AWSFIS-Run-Network-Blackhole-Port.

Type de ressource
  • aws:ecs:task

Parameters
  • duration— La durée du test, au format ISO 8601.

  • port— Le numéro de port.

  • trafficType— Le type de trafic. Les valeurs possibles sont ingress et egress.

  • protocol : facultatif. Protocole. Les valeurs possibles sont tcp et udp. La valeur par défaut est tcp.

  • installDependencies – Facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. Les dépendances sont atdcurl-minimal, dig etjq.

  • useEcsFaultInjectionEndpoints : facultatif. Si ce paramètre est défini sur true, l'injection de défauts Amazon ECS APIs sera utilisée. La valeur par défaut est false.

Permissions
  • ecs:DescribeTasks

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ecs:task-network-latency

Ajoute de la latence et de l'instabilité à l'interface réseau pour le trafic de sortie vers des sources spécifiques, en utilisant les points de terminaison Amazon ECS Fault Injection. Utilise le document AWSFIS-RunSSM -Network-Latency-ECS. La définition de la tâche doit être pidMode définie surtask. Les tâches doivent être gérées par AWS Systems Manager. Vous ne pouvez pas networkMode définir ce paramètre bridge dans la définition de la tâche. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Lorsque useEcsFaultInjectionEndpoints ce paramètre est défini surfalse, le défaut utilise l'tcoutil et utilise le document AWSFIS-RunSSM -Network-Latency-Sources.

Utilisez le flowsPercent paramètre pour ajouter de la latence à un pourcentage des connexions. Pour utiliser le flowsPercent paramètre, la version de l'agent ECS doit être 1.100.0 ou supérieure.

Pour utiliser les noms AZ ou AZ IDs dans le sources paramètre, toutes les cibles de l'action doivent se trouver sur le même VPC.

Type de ressource
  • aws:ecs:task

Parameters
  • duration— La durée du test, au format ISO 8601.

  • delayMilliseconds : facultatif. Le délai, en millisecondes. La valeur par défaut est 200.

  • jitterMilliseconds : facultatif. L'instabilité, en millisecondes. La valeur par défaut est 10.

  • flowsPercent : facultatif. Pourcentage de flux réseau qui seront affectés par l'action. La par défaut est de 100 %.

  • sources : facultatif. Les sources, séparées par des virgules, sans espaces. Les valeurs possibles sont les suivantes : une IPv4 adresse, un bloc IPv4 CIDR, un nom de domaine, un nom AZ (us-east-1a), un ID AZ (use1-az1), ALL et. DYNAMODB S3 Si vous spécifiez DYNAMODB ouS3, cela ne s'applique qu'au point de terminaison régional de la région actuelle. La valeur par défaut est ALL, qui correspond à l'ensemble IPv4 du trafic.

  • installDependencies : facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. Les dépendances sont atdcurl-minimal,dig, jq etlsof.

  • useEcsFaultInjectionEndpoints : facultatif. Si ce paramètre est défini sur true, l'injection de défauts Amazon ECS APIs sera utilisée. La valeur par défaut est false.

Permissions
  • ecs:DescribeTasks

  • ecs:DescribeContainerInstances

  • ec2:DescribeInstances

  • ec2:DescribeSubnets

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ecs:task-network-packet-loss

Ajoute la perte de paquets à l'interface réseau pour le trafic sortant vers des sources spécifiques, en utilisant les points de terminaison Amazon ECS Fault Injection. Utilise le document AWSFIS-RunSSM -Network-Packet-Loss-ECS. La définition de la tâche doit être pidMode définie surtask. Les tâches doivent être gérées par AWS Systems Manager. Vous ne pouvez pas networkMode définir ce paramètre bridge dans la définition de la tâche. Pour de plus amples informations, veuillez consulter Actions de tâches ECS.

Lorsque useEcsFaultInjectionEndpoints ce paramètre est défini surfalse, le défaut utilise l'tcoutil et utilise le document SSM AWSFIS-Run-Network-Packet-Loss-Sources.

Utilisez le flowsPercent paramètre pour injecter une perte de paquets sur un pourcentage des connexions. Pour utiliser le flowsPercent paramètre, la version de l'agent ECS doit être 1.100.0 ou supérieure.

Pour utiliser les noms AZ ou AZ IDs dans le sources paramètre, toutes les cibles de l'action doivent se trouver sur le même VPC.

Type de ressource
  • aws:ecs:task

Parameters
  • duration— La durée du test, au format ISO 8601.

  • lossPercent : facultatif. Pourcentage de perte de paquets. La valeur par défaut est de 7 %.

  • flowsPercent : facultatif. Pourcentage de flux réseau qui seront affectés par l'action. La par défaut est de 100 %.

  • sources : facultatif. Les sources, séparées par des virgules, sans espaces. Les valeurs possibles sont les suivantes : une IPv4 adresse, un bloc IPv4 CIDR, un nom de domaine, un nom AZ (us-east-1a), un ID AZ (use1-az1), ALL et. DYNAMODB S3 Si vous spécifiez DYNAMODB ouS3, cela ne s'applique qu'au point de terminaison régional de la région actuelle. La valeur par défaut est ALL, qui correspond à l'ensemble IPv4 du trafic.

  • installDependencies : facultatif. Si cette valeur est définie sur cette valeurTrue, Systems Manager installe les dépendances requises sur le conteneur annexe pour l'agent SSM, si elles ne sont pas déjà installées. La valeur par défaut est True. Les dépendances sont atdcurl-minimal,dig, jq etlsof.

  • useEcsFaultInjectionEndpoints : facultatif. Si ce paramètre est défini sur true, l'injection de défauts Amazon ECS APIs sera utilisée. La valeur par défaut est false.

Permissions
  • ecs:DescribeTasks

  • ecs:DescribeContainerInstances

  • ec2:DescribeInstances

  • ec2:DescribeSubnets

  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

Actions Amazon EKS

AWS FIS prend en charge les actions Amazon EKS suivantes.

aws:eks:inject-kubernetes-custom-resource

Exécute une expérience ChaosMesh ou Litmus sur un seul cluster cible. Vous devez installer ChaosMesh Litmus sur le cluster cible.

Lorsque vous créez un modèle d'expérience et définissez un type de cibleaws:eks:cluster, vous devez cibler cette action sur un seul Amazon Resource Name (ARN). Cette action ne permet pas de définir des cibles à l'aide de balises de ressources, de filtres ou de paramètres.

Lors de l'installation ChaosMesh, vous devez spécifier le runtime du conteneur approprié. À partir de la version 1.23 d'Amazon EKS, le runtime par défaut est passé de Docker à. containerd À partir de la version 1.24, Docker a été supprimé.

Type de ressource
  • aws:eks:cluster

Parameters
  • kubernetesApiVersion— La version API de la ressource personnalisée Kubernetes. Les valeurs possibles sont chaos-mesh.org/v1alpha1 |litmuschaos.io/v1alpha1.

  • kubernetesKind— Le type de ressource personnalisée Kubernetes. La valeur dépend de la version de l'API.

    • chaos-mesh.org/v1alpha1— Les valeurs possibles sont AWSChaos DNSChaos GCPChaos HTTPChaos | IOChaos | JVMChaos | KernelChaos NetworkChaos | PhysicalMachineChaos | PodChaos PodHttpChaos | PodIOChaos | PodNetworkChaos | Schedule StressChaos | TimeChaos |

    • litmuschaos.io/v1alpha1— La valeur possible estChaosEngine.

  • kubernetesNamespace— L'espace de noms Kubernetes.

  • kubernetesSpecspec Section de la ressource personnalisée Kubernetes, au format JSON.

  • maxDuration— La durée maximale autorisée pour l'exécution de l'automatisation, comprise entre une minute et 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions

Aucune autorisation AWS Identity and Access Management (IAM) n'est requise pour cette action. Les autorisations requises pour utiliser cette action sont contrôlées par Kubernetes à l'aide de l'autorisation RBAC. Pour plus d'informations, consultez la section Utilisation de l'autorisation RBAC dans la documentation officielle de Kubernetes. Pour plus d'informations sur Chaos Mesh, consultez la documentation officielle de Chaos Mesh. Pour plus d'informations sur Litmus, consultez la documentation officielle de Litmus.

aws:eks:pod-cpu-stress

Exerce un stress du processeur sur les pods cibles. Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test de stress, au format ISO 8601.

  • percent : facultatif. Pourcentage de charge cible, compris entre 0 (aucune charge) et 100 (pleine charge). La valeur par défaut est 100.

  • workers : facultatif. Le nombre de facteurs de stress à utiliser. La valeur par défaut est 0, qui utilise tous les facteurs de stress.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

  • fisPodSecurityPolicy : facultatif. La politique des normes de sécurité Kubernetes à utiliser pour le module d'orchestration des pannes créé par FIS et les conteneurs éphémères. Les valeurs possibles sontprivileged, baseline etrestricted. Cette action est compatible avec tous les niveaux de politique.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-delete

Supprime les pods cibles. Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Type de ressource
  • aws:eks:pod

Parameters
  • gracePeriodSeconds : facultatif. Durée, en secondes, pendant laquelle le module doit se terminer correctement. Si la valeur est 0, nous exécutons l'action immédiatement. Si la valeur est nulle, nous utilisons le délai de grâce par défaut pour le pod.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

  • fisPodSecurityPolicy : facultatif. La politique des normes de sécurité Kubernetes à utiliser pour le module d'orchestration des pannes créé par FIS et les conteneurs éphémères. Les valeurs possibles sontprivileged, baseline etrestricted. Cette action est compatible avec tous les niveaux de politique.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-io-stress

Exerce du I/O stress sur les capsules cibles. Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test de stress, au format ISO 8601.

  • workers : facultatif. Le nombre de workers. Les travailleurs effectuent une combinaison d' read/write opérations séquentielles, aléatoires et mappées en mémoire, de synchronisation forcée et de suppression du cache. Plusieurs processus enfants exécutent différentes I/O opérations sur le même fichier. La valeur par défaut est 1.

  • percent : facultatif. Pourcentage d'espace libre sur le système de fichiers à utiliser pendant le test de stress. La valeur par défaut est de 80 %.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

  • fisPodSecurityPolicy : facultatif. La politique des normes de sécurité Kubernetes à utiliser pour le module d'orchestration des pannes créé par FIS et les conteneurs éphémères. Les valeurs possibles sontprivileged, baseline etrestricted. Cette action est compatible avec tous les niveaux de politique.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-memory-stress

Exerce un stress de mémoire sur les pods cibles. Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test de stress, au format ISO 8601.

  • workers : facultatif. Le nombre de facteurs de stress à utiliser. La valeur par défaut est 1.

  • percent : facultatif. Pourcentage de mémoire virtuelle à utiliser pendant le test de stress. La valeur par défaut est de 80 %.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

  • fisPodSecurityPolicy : facultatif. La politique des normes de sécurité Kubernetes à utiliser pour le module d'orchestration des pannes créé par FIS et les conteneurs éphémères. Les valeurs possibles sontprivileged, baseline etrestricted. Cette action est compatible avec tous les niveaux de politique.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-network-blackhole-port

Supprime le trafic entrant ou sortant pour le protocole et le port spécifiés. Compatible uniquement avec la politique relative aux normes de sécurité de Kubernetes. privileged Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test, au format ISO 8601.

  • protocol— Le protocole. Les valeurs possibles sont tcp et udp.

  • trafficType— Le type de trafic. Les valeurs possibles sont ingress et egress.

  • port— Le numéro de port.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-network-latency

Ajoute de la latence et de l'instabilité à l'interface réseau à l'aide de l'tcoutil pour le trafic à destination ou en provenance de sources spécifiques. Compatible uniquement avec la politique relative aux normes de sécurité de Kubernetes. privileged Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Utilisez le flowsPercent paramètre pour ajouter de la latence à un pourcentage des connexions.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test, au format ISO 8601.

  • interface : facultatif. Les interfaces réseau, séparées par des virgules. Les valeurs ALL et DEFAULT sont prises en charge. La valeur par défaut estDEFAULT, qui ciblera l'interface réseau principale du système d'exploitation.

  • delayMilliseconds : facultatif. Le délai, en millisecondes. La valeur par défaut est 200.

  • jitterMilliseconds : facultatif. L'instabilité, en millisecondes. La valeur par défaut est 10.

  • flowsPercent : facultatif. Pourcentage de flux réseau qui seront affectés par l'action. La par défaut est de 100 %.

  • sources : facultatif. Les sources, séparées par des virgules, sans espaces. Les valeurs possibles sont les suivantes : une IPv4 adresse, un bloc IPv4 CIDR, un nom de domaine, un nom AZ (us-east-1a), un ID AZ (use1-az1), ALL et. DYNAMODB S3 Si vous spécifiez DYNAMODB ouS3, cela ne s'applique qu'au point de terminaison régional de la région actuelle. Pour les noms de domaine, 10 tentatives de résolution DNS sont effectuées pour collecter des adresses IP. En raison de l'équilibrage de charge et de la rotation du DNS, cette action peut ne pas affecter toutes les adresses IP possibles vers lesquelles le domaine pourrait être résolu. La valeur par défaut est ALL, qui correspond à l'ensemble IPv4 du trafic.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:pod-network-packet-loss

Ajoute la perte de paquets à l'interface réseau à l'aide de l'tcoutil. Compatible uniquement avec la politique relative aux normes de sécurité de Kubernetes. privileged Pour de plus amples informations, veuillez consulter Actions du EKS Pod.

Utilisez le flowsPercent paramètre pour injecter une perte de paquets sur un pourcentage des connexions.

Type de ressource
  • aws:eks:pod

Parameters
  • duration— La durée du test, au format ISO 8601.

  • interface : facultatif. Les interfaces réseau, séparées par des virgules. Les valeurs ALL et DEFAULT sont prises en charge. La valeur par défaut estDEFAULT, qui ciblera l'interface réseau principale du système d'exploitation.

  • lossPercent : facultatif. Pourcentage de perte de paquets. La valeur par défaut est de 7 %.

  • flowsPercent : facultatif. Pourcentage de flux réseau qui seront affectés par l'action. La par défaut est de 100 %.

  • sources : facultatif. Les sources, séparées par des virgules, sans espaces. Les valeurs possibles sont les suivantes : une IPv4 adresse, un bloc IPv4 CIDR, un nom de domaine, un nom AZ (us-east-1a), un ID AZ (use1-az1), ALL et. DYNAMODB S3 Si vous spécifiez DYNAMODB ouS3, cela ne s'applique qu'au point de terminaison régional de la région actuelle. Pour les noms de domaine, 10 tentatives de résolution DNS sont effectuées pour collecter des adresses IP. En raison de l'équilibrage de charge et de la rotation du DNS, cette action peut ne pas affecter toutes les adresses IP possibles vers lesquelles le domaine pourrait être résolu. La valeur par défaut est ALL, qui correspond à l'ensemble IPv4 du trafic.

  • kubernetesServiceAccount— Le compte de service Kubernetes. Pour plus d'informations sur les autorisations requises, consultez la rubrique Configuration du compte de service Kubernetes.

  • fisPodContainerImage : facultatif. L'image du conteneur utilisée pour créer le module d'injection défectueux. Par défaut, les images fournies par AWS FIS. Pour de plus amples informations, veuillez consulter Images du conteneur Pod.

  • maxErrorsPercent – Facultatif. Pourcentage de cibles susceptibles de tomber en panne avant l'échec de l'injection de défauts. La valeur par défaut est 0.

  • fisPodLabels : facultatif. Les étiquettes Kubernetes attachées au pod d'orchestration des pannes créé par FIS.

  • fisPodAnnotations : facultatif. Les annotations Kubernetes associées au pod d'orchestration d'erreurs créé par FIS.

Permissions
  • eks:DescribeCluster

  • ec2:DescribeSubnets

  • tag:GetResources

aws:eks:terminate-nodegroup-instances

Exécute l'action d' EC2 API Amazon TerminateInstancessur le groupe de nœuds cible. Compatible uniquement avec les groupes de nœuds gérés par Amazon EKS. Les groupes de nœuds autogérés ne sont pas pris en charge. Pour plus d'informations, consultez la section EKS manage computing.

Type de ressource
  • aws:eks:nodegroup

Parameters
  • instanceTerminationPercentage— Le pourcentage (1 à 100) d'instances à terminer.

Permissions
  • ec2:DescribeInstances

  • ec2:TerminateInstances

  • eks:DescribeNodegroup

  • tag:GetResources

ElastiCache Actions d'Amazon

AWS FIS prend en charge l' ElastiCache action suivante.

aws:elasticache:replicationgroup-interrupt-az-power

Interrompt l'alimentation des nœuds de la zone de disponibilité spécifiée pour les groupes de ElastiCache réplication cibles lorsque le mode multi-AZ est activé. Une seule zone de disponibilité par groupe de réplication peut être affectée à la fois. Lorsqu'un nœud principal est ciblé, la réplique de lecture correspondante présentant le moins de retard de réplication est promue au rang principal. Les remplacements de répliques en lecture dans la zone de disponibilité spécifiée sont bloqués pendant la durée de cette action, ce qui signifie que les groupes de réplication cibles fonctionnent avec une capacité réduite. La cible de cette action prend en charge les moteurs Redis et Valkey. L'action ne prend pas en charge l'option de déploiement « sans serveur ».

Type de ressource
  • aws:elasticache:replicationgroup

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • elasticache:InterruptClusterAzPower

  • elasticache:DescribeReplicationGroups

  • tag:GetResources

Note

L'action d'alimentation ElastiCache Interrupt AZ prend désormais en charge tous les types de groupes de réplication, y compris Valkey et Redis. Pour mieux représenter cette fonctionnalité, l'action a été renommée. Si vous l'utilisez actuellementaws:elasticache:interrupt-cluster-az-power, nous vous recommandons de migrer vers la nouvelle action aws:elasticache:replicationgroup-interrupt-az-power afin de tirer parti des dernières fonctionnalités.

Actions relatives à Amazon Kinesis Data Streams

Amazon Kinesis Data Streams prend en charge les actions Kinesis suivantes.

aws:kinesis:stream-provisioned-throughput-exception

Injecte des réponses ProvisionedThroughputExceededException d'erreur aux demandes relatives aux Kinesis Data Streams ciblés. Les opérations prises en charge incluent : GetRecordsGetShardIterator,PutRecord, etPutRecords.

Type de ressource
  • aws:kinesis:stream

Parameters
  • durée — La durée, qui varie d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • pourcentage : pourcentage (1 à 100) d'appels dans lesquels le défaut doit être injecté.

Permissions
  • kinesis:InjectApiError

aws:kinesis:stream-expired-iterator-exception

Injecte des réponses ExpiredIteratorException d'erreur pour les GetRecords appels ciblant des Kinesis Data Streams spécifiques.

Type de ressource
  • aws:kinesis:stream

Parameters
  • durée — La durée, qui varie d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • pourcentage : pourcentage (1 à 100) d'appels dans lesquels le défaut doit être injecté.

Permissions
  • kinesis:InjectApiError

AWS Lambda actions

AWS Lambda prend en charge les actions Lambda suivantes

aws:lambda:invocation-add-delay

Retarde le démarrage d'une fonction pendant le nombre de millisecondes que vous spécifiez. L'effet de cette action est similaire à celui des démarrages à froid Lambda, mais le temps supplémentaire est utilisé dans le cadre de la durée facturée et est appliqué à tous les environnements d'exécution au lieu d'affecter uniquement les nouveaux environnements d'exécution. Cela signifie que vous pouvez rencontrer à la fois un démarrage à froid Lambda et ce délai. En définissant une valeur de latence supérieure au délai d'expiration configuré sur la fonction Lambda, cette action donnera également accès à un événement de temporisation haute fidélité.

Type de ressource
  • aws:lambda:function

Parameters
  • durée : durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • InvocationPercentage — Facultatif. Le pourcentage (1 à 100) d'invocations de fonctions dans lesquelles injecter le défaut. La valeur par défaut est 100.

  • startupDelayMilliseconds : facultatif. Temps d'attente en millisecondes (0 à 900 000) entre l'invocation et l'exécution du code de fonction. La valeur par défaut est 1000.

Permissions
  • s3:PutObject

  • s3:DeleteObject

  • lambda:GetFunction

  • tag:GetResources

aws:lambda:invocation-error

Marque les appels de fonctions Lambda comme ayant échoué. Cette action est utile pour tester les mécanismes de gestion des erreurs, tels que les alarmes et les configurations de nouvelle tentative. Lorsque vous utilisez cette action, vous devez choisir d'exécuter ou non le code de fonction avant de renvoyer une erreur.

Type de ressource
  • aws:lambda:function

Parameters
  • durée : durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • InvocationPercentage — Facultatif. Le pourcentage (1 à 100) d'invocations de fonctions dans lesquelles injecter le défaut. La valeur par défaut est 100.

  • PreventExecution — Si la valeur est vraie, l'action renvoie l'erreur sans exécuter la fonction.

Permissions
  • s3:PutObject

  • s3:DeleteObject

  • lambda:GetFunction

  • tag:GetResources

aws:lambda:invocation-http-integration-response

Modifie le comportement de la fonction. Vous sélectionnez un type de contenu et un code de réponse HTTP pour prendre en charge les intégrations avec ALB, API-GW et VPC Lattice. Pour activer les intégrations en amont ou en aval ayant un impact sélectif, vous pouvez choisir de renvoyer directement la réponse modifiée ou d'exécuter la fonction et de la remplacer une fois l'exécution de la fonction terminée.

Type de ressource
  • aws:lambda:function

Parameters
  • contentTypeHeader— Valeur de chaîne de l'en-tête du type de contenu HTTP à renvoyer par la fonction Lambda.

  • durée : durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • InvocationPercentage — Facultatif. Le pourcentage (1 à 100) d'invocations de fonctions dans lesquelles injecter le défaut. La valeur par défaut est 100.

  • PreventExecution — Si la valeur est vraie, l'action renvoie la réponse sans exécuter la fonction.

  • StatusCode — Valeur du code d'état HTTP (000-999) à renvoyer par la fonction Lambda.

Permissions
  • s3:PutObject

  • s3:DeleteObject

  • lambda:GetFunction

  • tag:GetResources

Action Amazon MemoryDB

AWS FIS prend en charge l'action MemoryDB suivante.

aws:memorydb:multi-region-cluster-pause-replication

Suspend la réplication entre un cluster régional et tous les autres clusters régionaux du cluster multirégional. Le cluster régional visé est le cluster de la région où se déroule l'expérience FIS. Lorsque la réplication est suspendue, le cluster multirégional ne peut pas être mis à jour. Une fois l'action terminée, le cluster multirégional peut mettre quelques minutes à revenir à un état disponible. Pour en savoir plus sur Amazon MemoryDB Multi-Region, consultez le manuel Amazon MemoryDB Multi-Region Developer Guide. Pour la disponibilité des régions, consultez la section Conditions préalables et limites multirégionales de MemoryDB.

Type de ressource
  • aws:memorydb:multi-region-cluster

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • memorydb:DescribeMultiRegionClusters

  • memorydb:PauseMultiRegionClusterReplication

  • tag:GetResources

Actions du réseau

AWS FIS prend en charge les actions réseau suivantes.

aws:network:disrupt-connectivity

Refuse le trafic spécifié vers les sous-réseaux cibles en clonant temporairement la liste de contrôle d'accès réseau (ACL réseau) d'origine associée au sous-réseau cible. FIS ajoute des règles de refus à l'ACL du réseau cloné, qui possède une balise ManagedByFIS=True, et l'associe au sous-réseau pendant la durée de l'action. Une fois l'action terminée, FIS supprime l'ACL réseau cloné et restaure l'association ACL réseau d'origine.

Type de ressource
  • aws:ec2:subnet

Parameters
  • scope— Le type de trafic à refuser. Lorsque le champ d'application ne l'est pasall, le nombre maximum d'entrées dans le réseau ACLs est de 20. Les valeurs possibles sont :

    • all— Refuse tout le trafic entrant et sortant du sous-réseau. Notez que cette option autorise le trafic intra-sous-réseau, y compris le trafic à destination et en provenance des interfaces réseau du sous-réseau.

    • availability-zone— Refuse le trafic intra-VPC à destination et en provenance de sous-réseaux dans d'autres zones de disponibilité. Le nombre maximum de sous-réseaux pouvant être ciblés dans un VPC est de 30.

    • dynamodb— Refuse le trafic à destination et en provenance du point de terminaison régional pour DynamoDB dans la région actuelle.

    • prefix-list— Refuse le trafic à destination et en provenance de la liste de préfixes spécifiée.

    • s3— Refuse le trafic à destination et en provenance du point de terminaison régional pour Amazon S3 dans la région actuelle.

    • s3express— Refuse le trafic à destination et en provenance du point de terminaison zonal pour Amazon S3 Express One Zone dans la zone AZ des sous-réseaux cibles. Les sous-réseaux cibles doivent résider AZs là où S3 Express One Zone est actuellement disponible. Pour plus d'informations, consultez la section Zones de disponibilité et régions de S3 Express One Zone.

    • vpc— Refuse le trafic entrant et sortant du VPC.

  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • prefixListIdentifier— Si le champ d'application est le casprefix-list, il s'agit de l'identifiant de la liste de préfixes gérée par le client. Vous pouvez spécifier un nom, un ID ou un ARN. La liste de préfixes peut comporter au maximum 10 entrées.

Permissions
  • ec2:CreateNetworkAcl— Crée l'ACL réseau avec le tag ManagedByFis=true.

  • ec2:CreateNetworkAclEntry— L'ACL réseau doit avoir le tag ManagedByFIS=True.

  • ec2:CreateTags

  • ec2:DeleteNetworkAcl— L'ACL réseau doit avoir le tag ManagedByFIS=True.

  • ec2:DescribeManagedPrefixLists

  • ec2:DescribeNetworkAcls

  • ec2:DescribeSubnets

  • ec2:DescribeVpcs

  • ec2:GetManagedPrefixListEntries

  • ec2:ReplaceNetworkAclAssociation

aws:network:route-table-disrupt-cross-region-connectivity

Bloque le trafic provenant des sous-réseaux cibles et destiné à la région spécifiée. Crée des tables de routage qui incluent tous les itinéraires que la région doit isoler. Pour permettre à FIS de créer ces tables de routage, augmentez le quota routes per route table Amazon VPC à 250, plus le nombre de routes dans vos tables de routage existantes.

Type de ressource
  • aws:ec2:subnet

Parameters
  • region— Le code de la région à isoler (par exemple, eu-west-1).

  • duration— La durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ec2:AssociateRouteTable

  • ec2:CreateManagedPrefixList

  • ec2:CreateNetworkInterface

  • ec2:CreateRoute

  • ec2:CreateRouteTable

  • ec2:CreateTags

  • ec2:DeleteManagedPrefixList

  • ec2:DeleteNetworkInterface

  • ec2:DeleteRouteTable

  • ec2:DescribeManagedPrefixLists

  • ec2:DescribeNetworkInterfaces

  • ec2:DescribeRouteTables

  • ec2:DescribeSubnets

  • ec2:DescribeVpcPeeringConnections

  • ec2:DescribeVpcs

  • ec2:DisassociateRouteTable

  • ec2:GetManagedPrefixListEntries

  • ec2:ModifyManagedPrefixList

  • ec2:ModifyVpcEndpoint

  • ec2:ReplaceRouteTableAssociation

† Délimité à l'aide de la balisemanagedByFIS=true. Il n'est pas nécessaire de gérer cette balise. AWS FIS ajoute et supprime cette balise au cours de l'expérience.

aws:network:transit-gateway-disrupt-cross-region-connectivity

Bloque le trafic provenant de la passerelle de transit cible en appairant les pièces jointes destinées à la région spécifiée.

Type de ressource
  • aws:ec2:transit-gateway

Parameters
  • region— Le code de la région à isoler (par exemple, eu-west-1).

  • duration— La durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ec2:AssociateTransitGatewayRouteTable

  • ec2:DescribeTransitGatewayAttachments

  • ec2:DescribeTransitGatewayPeeringAttachments

  • ec2:DescribeTransitGateways

  • ec2:DisassociateTransitGatewayRouteTable

aws:network:disrupt-vpc-endpoint

Bloque le trafic entrant et sortant des points de terminaison VPC de l'interface cible. FIS crée un groupe de sécurité géré avec des règles vides et remplace temporairement les groupes de sécurité des points de terminaison VPC cibles par ce groupe de sécurité géré. Si des modifications sont apportées aux ressources cibles pendant l'exécution de l'action, celle-ci échouera et les ressources ne seront pas restaurées dans leur état antérieur à l'expérience. En outre, si un groupe de sécurité géré par le FIS est modifié pendant l'exécution d'une action, il ne sera pas supprimé par le FIS.

Type de ressource
  • aws:ec2:vpc-endpoint

Parameters
  • duration— La durée de l'action. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ec2:DescribeVpcEndpoints

  • ec2:DescribeSecurityGroups

  • ec2:ModifyVpcEndpoint

  • ec2:CreateSecurityGroup

  • ec2:DeleteSecurityGroup

  • ec2:RevokeSecurityGroupEgress

  • ec2:CreateTags

  • vpce:AllowMultiRegion *

* L'autorisation n'est requise que si vous ciblez des points de terminaison VPC interrégionaux

Actions Amazon RDS

AWS FIS prend en charge les actions Amazon RDS suivantes.

aws:rds:failover-db-cluster

Exécute l'action Failover de l'API Amazon RDS DBCluster sur le cluster de base de données Aurora cible. Les clusters RDS et DocumentDB sont pris en charge.

Type de ressource
  • aws:rds:cluster

Parameters
  • Aucune

Permissions
  • rds:FailoverDBCluster

  • rds:DescribeDBClusters

  • tag:GetResources

aws:rds:reboot-db-instances

Exécute l'action Reboot de l'API Amazon RDS DBInstance sur l'instance de base de données cible. Les clusters RDS et DocumentDB sont pris en charge.

Type de ressource
  • aws:rds:db

Parameters
  • forceFailover : facultatif. Si la valeur est vraie, et si les instances sont multi-AZ, force le basculement d'une zone de disponibilité à l'autre. La valeur par défaut est false.

Permissions
  • rds:RebootDBInstance

  • rds:DescribeDBInstances

  • tag:GetResources

Actions Amazon S3

AWS FIS prend en charge l'action Amazon S3 suivante.

aws:s3:bucket-pause-replication

Suspend la réplication des compartiments source cible vers les compartiments de destination. Les compartiments de destination peuvent se trouver dans différentes régions AWS ou dans la même région que le compartiment source. Les objets existants peuvent continuer à être répliqués jusqu'à une heure après le début de l'action. Cette action prend uniquement en charge le ciblage par balises. Pour en savoir plus sur Amazon S3 Replication, consultez le guide de l'utilisateur d'Amazon S3.

Type de ressource
  • aws:s3:bucket

Parameters
  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

  • region— La région AWS où se trouvent les buckets de destination.

  • destinationBuckets : facultatif. Liste séparée par des virgules des compartiments S3 de destination.

  • prefixes : facultatif. Liste séparée par des virgules des préfixes de clés d'objet S3 provenant des filtres de règles de réplication. Les règles de réplication des compartiments cibles avec un filtre basé sur le ou les préfixes seront suspendues.

Permissions
  • S3:PutReplicationConfigurationavec clé de condition S3:IsReplicationPauseRequest réglée sur True

  • S3:GetReplicationConfigurationavec clé de condition S3:IsReplicationPauseRequest réglée sur True

  • S3:PauseReplication

  • S3:ListAllMyBuckets

  • tag:GetResources

Pour un exemple de politique, consultez Exemple : utilisez des clés de condition pour aws:s3:bucket-pause-replication.

Actions de Systems Manager

AWS FIS prend en charge les actions Systems Manager suivantes.

aws:ssm:send-command

Exécute l'action API Systems Manager SendCommandsur les EC2 instances cibles. Le document Systems Manager (document SSM) définit les actions que Systems Manager effectue sur vos instances. Pour de plus amples informations, veuillez consulter Utilisez l'aws:ssm:send-commandaction.

Type de ressource
  • aws:ec2:instance

Parameters
  • documentArn— Le nom de ressource Amazon (ARN) du document. Dans la console, ce paramètre est complété pour vous si vous choisissez une valeur dans Type d'action qui correspond à l'un des documents AWS FIS SSM préconfigurés.

  • documentVersion : facultatif. Version du document. S'il est vide, la version par défaut s'exécute.

  • documentParameters— Conditionnel. Les paramètres obligatoires et facultatifs acceptés par le document. Le format est un objet JSON dont les clés sont des chaînes et les valeurs sont des chaînes ou des tableaux de chaînes.

  • duration— La durée, d'une minute à 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ssm:SendCommand

  • ssm:ListCommands

  • ssm:CancelCommand

aws:ssm:start-automation-execution

Exécute l'action API Systems Manager StartAutomationExecution.

Type de ressource
  • Aucune

Parameters
  • documentArn— Le nom de ressource Amazon (ARN) du document d'automatisation.

  • documentVersion : facultatif. Version du document. S'il est vide, la version par défaut s'exécute.

  • documentParameters— Conditionnel. Les paramètres obligatoires et facultatifs acceptés par le document. Le format est un objet JSON dont les clés sont des chaînes et les valeurs sont des chaînes ou des tableaux de chaînes.

  • maxDuration— La durée maximale autorisée pour l'exécution de l'automatisation, comprise entre une minute et 12 heures. Dans l' AWS FIS API, la valeur est une chaîne au format ISO 8601. Par exemple, PT1 M représente une minute. Dans la AWS FIS console, vous entrez le nombre de secondes, de minutes ou d'heures.

Permissions
  • ssm:GetAutomationExecution

  • ssm:StartAutomationExecution

  • ssm:StopAutomationExecution

  • iam:PassRole : facultatif. Obligatoire si le document d'automatisation joue un rôle.