Answers: <p>This (slightly old in cloud years) <a href="https://news.ycombinator.com/item?id=10052314" rel="noreferrer">question on Hacker News</a> provides a few suggestions:</p>
  
  <ul>
  <li>Remove the security groups from all instances in one zone, which should technically make them all appear 'down'</li>
  <li>Adjust the VPC route tables to black hole the subnets in one availability zone</li>
  <li>Disable an availability zone from the load balancer (<a href="https://docs.aws.amazon.com/cli/latest/reference/elb/disable-availability-zones-for-load-balancer.html" rel="noreferrer">docs</a>)</li>
  </ul>
  
  <p>You could also probably adjust the Network ACL attached to the relevant subnets to deny all traffic.</p>
  
  <p>I'm not aware of an existing, available tool that does any of this automatically, though.</p>
  
Answers: CC BY-SA 4.0
Answers: 2018-06-19T23:19:18.903Z
Answers: Also you can change the network ACL for a subnet. That can effectively sever all traffic between the AZs.
Answers: myron-semack
Answers: CC BY-SA 4.0
Answers: 2018-06-20T00:14:26.363Z
Answers: I did mention that ;) (although, not in the bullet points ha!)
Answers: Tim Malone
Answers: CC BY-SA 4.0
Answers: 2022-10-31T11:44:07.080Z
Answers: Since this Q&A was written a new service (Fault Injection Simulator) has become available, and recently it got support for simulating AZ failure: https://aws.amazon.com/about-aws/whats-new/2022/10/aws-fault-injection-simulator-network-connectivity-disruption
Answers: Tim Malone
Answers: CC BY-SA 4.0
Answers: 2018-06-17T03:04:33.433Z
Answers: 2018-06-17T03:04:33.433Z
Answers: Tim Malone
Answers: <p>This lab from AWS Well-Architected will show you how to implement an AWS AZ failure simulation using Bash, Java, Python, C#, or PowerShell</p>
  <p><a href="https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/" rel="nofollow noreferrer">https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/</a></p>
  
Answers: CC BY-SA 4.0
Answers: 2020-09-15T15:05:45.640Z
Answers: 2020-09-15T15:05:45.640Z
Answers: Seth E
Body: <p>In order to test that our load balancers and Multi-AZ RDS instances are working the way I'd expect them to, I'd like to simulate failure of an AWS Availability Zone.</p>
  
  <p>Short of locating one of the datacenters and setting fire to it (which probably wouldn't be successful anyway), how can I do this? (I'm aware of Netflix' <a href="https://devops.stackexchange.com/a/610/249">Chaos Gorilla</a>, but it doesn't seem to have been released to the public <a href="https://github.com/netflix/chaosmonkey" rel="noreferrer">like Chaos Monkey has</a>, and I'm not sure what techniques it uses to cause its chaos).</p>
  
Tags: <amazon-web-services><high-availability><resilience-testing>
Title: How can I simulate failure of an AWS Availability Zone?
UserDisplayName: Tim Malone
ThreadText: # How can I simulate failure of an AWS Availability Zone?
  
  (Asked by: username_0 on 2018-06-17)
  
  In order to test that our load balancers and Multi-AZ RDS instances are working the way I'd expect them to, I'd like to simulate failure of an AWS Availability Zone.
  
  Short of locating one of the datacenters and setting fire to it (which probably wouldn't be successful anyway), how can I do this? (I'm aware of Netflix' [Chaos Gorilla](https://devops.stackexchange.com/a/610/249), but it doesn't seem to have been released to the public [like Chaos Monkey has](https://github.com/netflix/chaosmonkey), and I'm not sure what techniques it uses to cause its chaos).
  
  **Tags:** amazon-web-services, high-availability, resilience-testing
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_0 on 2018-06-17. Score: 5
  
  This (slightly old in cloud years) [question on Hacker News](https://news.ycombinator.com/item?id=10052314) provides a few suggestions:
  
  * Remove the security groups from all instances in one zone, which should technically make them all appear 'down'
  * Adjust the VPC route tables to black hole the subnets in one availability zone
  * Disable an availability zone from the load balancer ([docs](https://docs.aws.amazon.com/cli/latest/reference/elb/disable-availability-zones-for-load-balancer.html))
  
  You could also probably adjust the Network ACL attached to the relevant subnets to deny all traffic.
  
  I'm not aware of an existing, available tool that does any of this automatically, though.
  
  > **Comments:**
  > **username_1**: Also you can change the network ACL for a subnet. That can effectively sever all traffic between the AZs.  
  > **username_0**: I did mention that ;) (although, not in the bullet points ha!)  
  > **username_0**: Since this Q&A was written a new service (Fault Injection Simulator) has become available, and recently it got support for simulating AZ failure: https://aws.amazon.com/about-aws/whats-new/2022/10/aws-fault-injection-simulator-network-connectivity-disruption  
  
  ---
  
  ### Answer by username_2 on 2020-09-15. Score: 4
  
  This lab from AWS Well-Architected will show you how to implement an AWS AZ failure simulation using Bash, Java, Python, C#, or PowerShell
  
  <https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/>
  
  
  ---
  
  