diff --git a/chaos/aws-fis/ec2-instance-faults/fis-cpu-exhaustion.json b/chaos/aws-fis/ec2/fis-cpu-stress.json similarity index 98% rename from chaos/aws-fis/ec2-instance-faults/fis-cpu-exhaustion.json rename to chaos/aws-fis/ec2/fis-cpu-stress.json index 8ae6ac9..7aa7902 100644 --- a/chaos/aws-fis/ec2-instance-faults/fis-cpu-exhaustion.json +++ b/chaos/aws-fis/ec2/fis-cpu-stress.json @@ -1,6 +1,7 @@ { "tags": { "Name": "fis-cpu-stress-test", + "Service": "ec2", "Part-Of": "portefaix-aws-fis", "Version": "0.1.0", "Managed-By": "AWS" diff --git a/chaos/aws-fis/ec2-control-plane-faults/fis-internal-error.json b/chaos/aws-fis/ec2/fis-internal-error.json similarity index 97% rename from chaos/aws-fis/ec2-control-plane-faults/fis-internal-error.json rename to chaos/aws-fis/ec2/fis-internal-error.json index 82b073b..5e79b07 100644 --- a/chaos/aws-fis/ec2-control-plane-faults/fis-internal-error.json +++ b/chaos/aws-fis/ec2/fis-internal-error.json @@ -1,6 +1,7 @@ { "tags": { "Name": "fis-internal-error", + "Service": "ec2", "Part-Of": "portefaix-aws-fis", "Version": "0.1.0", "Managed-By": "AWS" diff --git a/chaos/aws-fis/ec2-instance-faults/fis-latency-injection-source.json b/chaos/aws-fis/ec2/fis-latency-injection-source.json similarity index 97% rename from chaos/aws-fis/ec2-instance-faults/fis-latency-injection-source.json rename to chaos/aws-fis/ec2/fis-latency-injection-source.json index 6655ae3..9e7fc8f 100644 --- a/chaos/aws-fis/ec2-instance-faults/fis-latency-injection-source.json +++ b/chaos/aws-fis/ec2/fis-latency-injection-source.json @@ -1,6 +1,7 @@ { "tags": { "Name": "fis-latency-injection", + "Service": "ec2", "Part-Of": "portefaix-aws-fis", "Version": "0.1.0", "Managed-By": "AWS" diff --git a/chaos/aws-fis/spot-interruption/fis-spot-interruption.json b/chaos/aws-fis/ec2/fis-spot-interruption.json similarity index 100% rename from chaos/aws-fis/spot-interruption/fis-spot-interruption.json rename to chaos/aws-fis/ec2/fis-spot-interruption.json diff --git a/chaos/aws-fis/ec2-instance-faults/fis-stop-instance-AZ.json b/chaos/aws-fis/ec2/fis-stop-instance-AZ.json similarity index 98% rename from chaos/aws-fis/ec2-instance-faults/fis-stop-instance-AZ.json rename to chaos/aws-fis/ec2/fis-stop-instance-AZ.json index 675fd15..956c1de 100644 --- a/chaos/aws-fis/ec2-instance-faults/fis-stop-instance-AZ.json +++ b/chaos/aws-fis/ec2/fis-stop-instance-AZ.json @@ -1,6 +1,7 @@ { "tags": { "Name": "fis-stop-instance-az", + "Service": "ec2", "Part-Of": "portefaix-aws-fis", "Version": "0.1.0", "Managed-By": "AWS" diff --git a/chaos/aws-fis/ec2-control-plane-faults/fis-throttle-error.json b/chaos/aws-fis/ec2/fis-throttle-error.json similarity index 100% rename from chaos/aws-fis/ec2-control-plane-faults/fis-throttle-error.json rename to chaos/aws-fis/ec2/fis-throttle-error.json diff --git a/chaos/aws-fis/ec2-control-plane-faults/fis-unavailable-error.json b/chaos/aws-fis/ec2/fis-unavailable-error.json similarity index 98% rename from chaos/aws-fis/ec2-control-plane-faults/fis-unavailable-error.json rename to chaos/aws-fis/ec2/fis-unavailable-error.json index a3521f7..8cd58ee 100644 --- a/chaos/aws-fis/ec2-control-plane-faults/fis-unavailable-error.json +++ b/chaos/aws-fis/ec2/fis-unavailable-error.json @@ -1,6 +1,7 @@ { "tags": { "Name": "fis-unavailable-error", + "Service": "ec2", "Part-Of": "portefaix-aws-fis", "Version": "0.1.0", "Managed-By": "AWS" diff --git a/chaos/aws-fis/eks/eks-terminate-nodegroup-instances.json b/chaos/aws-fis/eks/eks-terminate-nodegroup-instances.json new file mode 100644 index 0000000..f74a789 --- /dev/null +++ b/chaos/aws-fis/eks/eks-terminate-nodegroup-instances.json @@ -0,0 +1,33 @@ +{ + "tags": { + "Name": "fis-eks-terminate-nodegroup-instances", + "Service": "eks", + "Part-Of": "portefaix-aws-fis", + "Version": "0.1.0", + "Managed-By": "AWS" + }, + "description": "Terminate EKS nodes", + "targets": { + "eks-nodes": { + "resourceType": "aws:eks:nodegroup", + "resourceArns": [ + "" + ], + "selectionMode": "ALL" + } + }, + "actions": { + "TerminateInstances": { + "actionId": "aws:eks:terminate-nodegroup-instances", + "description": "terminate the node instances", + "parameters": { + "instanceTerminationPercentage": "40" + }, + "targets": { + "Nodegroups": "eks-nodes" + } + } + }, + "stopConditions": "", + "roleArn": "${role}" +} \ No newline at end of file diff --git a/chaos/aws-fis/rds/rds-fault-injection.json b/chaos/aws-fis/rds/rds-fault-injection.json new file mode 100644 index 0000000..0eed31f --- /dev/null +++ b/chaos/aws-fis/rds/rds-fault-injection.json @@ -0,0 +1,60 @@ +{ + "tags": { + "Name": "fis-aurora-faultinjection", + "Service": "rds", + "Part-Of": "portefaix-aws-fis", + "Version": "0.1.0", + "Managed-By": "AWS" + }, + "description": "fis-aurora-faultinjection", + "targets": { + "": { + "resourceType": "aws:ec2:instance", + "resourceArns": [ + "targetinstance" + ], + "selectionMode": "ALL" + } + }, + "actions": { + "fis-aurora-diskcongestion": { + "actionId": "aws:ssm:send-command", + "description": "fis-aurora-diskcongestion", + "parameters": { + "documentArn": "ssmdocument", + "documentParameters": "{\"ActionType\": \"diskcongestion\"}", + "duration": "PT1M" + }, + "targets": { + "Instances": "" + }, + "startAfter": [ + "fis-aurora-replicafailure" + ] + }, + "fis-aurora-replicafailure": { + "actionId": "aws:ssm:send-command", + "description": "fis-aurora-replicafailure", + "parameters": { + "documentArn": "ssmdocument", + "documentParameters": "{\"ActionType\": \"replicafailure\"}", + "duration": "PT1M" + }, + "targets": { + "Instances": "" + } + } + }, + "stopConditions": [ + { + "source": "none" + } + ], + "roleArn": "rolearn", + "logConfiguration": { + "cloudWatchLogsConfiguration": { + "logGroupArn": "loggrouparn" + }, + "logSchemaVersion": 2 + } +} \ No newline at end of file diff --git a/chaos/aws-fis/rds/rds-reboot.json b/chaos/aws-fis/rds/rds-reboot.json new file mode 100644 index 0000000..68a891c --- /dev/null +++ b/chaos/aws-fis/rds/rds-reboot.json @@ -0,0 +1,41 @@ +{ + "tags": { + "Name": "fis-aurora-reboot", + "Service": "rds", + "Part-Of": "portefaix-aws-fis", + "Version": "0.1.0", + "Managed-By": "AWS" + }, + "description": "fis-aurora-reboot", + "targets": { + "": { + "resourceType": "aws:rds:db", + "resourceTags": { + "InstanceGroup": "auroralab-pg" + }, + "selectionMode": "PERCENT(50)" + } + }, + "actions": { + "fis-aurora-reboot-action": { + "actionId": "aws:rds:reboot-db-instances", + "description": "fis-aurora-reboot-action", + "parameters": {}, + "targets": { + "DBInstances": "" + } + } + }, + "stopConditions": [ + { + "source": "none" + } + ], + "roleArn": "arn:aws:iam:::role/", + "logConfiguration": { + "cloudWatchLogsConfiguration": { + "logGroupArn": "loggrouparn" + }, + "logSchemaVersion": 2 + } +} \ No newline at end of file