AWS
wait_desired_not_equals_healthy_tags
Wait until the desired number doesn't match the number of healthy instances for each of the auto-scaling groups matching tags provided
Terminates one or more random healthy instances associated to an ALB
Below are the details and signature of the activity Python module.
Type | action |
Module | chaosaws.asg.actions |
Name | terminate_random_instances |
Return | list |
A healthy instance is considered one with a status of ‘InService’.
Usage
JSON
{
"name": "terminate-random-instances",
"type": "action",
"provider": {
"type": "python",
"module": "chaosaws.asg.actions",
"func": "terminate_random_instances"
}
}
YAML
name: terminate-random-instances
provider:
func: terminate_random_instances
module: chaosaws.asg.actions
type: python
type: action
Arguments
Name | Type | Default | Required | Title | Description |
---|---|---|---|---|---|
asg_names | list | null | No | ASG Names | One or many ASG names as a JSON encoded list |
tags | list | null | No | ASG Tags | List of AWS tags for to identify ASG by tags instead of by names |
instance_count | integer | null | No | Number of Instances to Deatch | The amount of instances to terminate, or set the percentage below |
instance_percent | integer | null | No | Percentage of Instances to Deatch | The percentage of instances to terminate, or set the number above or the availability zone below |
az | string | null | No | Availability-Zone | Specificy the availability zone to select ASG from |
One of:
One of:
tags
are expected as a list of dictionary objects:
[
{'Key': 'TagKey1', 'Value': 'TagValue1'},
{'Key': 'TagKey2', 'Value': 'TagValue2'},
...
]
Signature
def terminate_random_instances(
asg_names: List[str] = None,
tags: List[Dict[str, str]] = None,
instance_count: int = None,
instance_percent: int = None,
az: str = None,
configuration: Dict[str, Dict[str, str]] = None,
secrets: Dict[str, Dict[str, str]] = None) -> List[Dict[str, Any]]:
pass