Simulator AWS Fault Injection Simulator – Real-World Application Failure
TABLE OF CONTENT
1. FAQs2. Introduction to AWS Fault Injection Simulation Prerequisites and Objective Create an experiment template5. Start the Experiment6. Follow the Experiment’s Progress7. Verify the Experiment’s Results8. Final Thoughts9. Cloudthat1. FAQs:
What is AWS Fault Injection Simulation Simulator?
AWS Fault Injection Simulation is a fully managed service that runs fault injection experiments on AWS. It makes it easier to improve the performance, observability and resilience of an application.
What is Chaos Engineering?
Chaos engineering is the process by which an application is stressed in production or testing environments by creating disruptive events such as server outages and API throttleling. Then, it’s possible to observe how the system responds and implement improvements.
Can FIS be integrated into the CICD pipeline
Yes, FIS can be enabled to continuously test the effect of fault actions on your software development process.
How can I monitor the effects of an FIS experiment?
AWS CloudWatch dashboards and monitoring allow you to monitor the impact of your FIS experiment using AWS resources. AWS CloudTrail logs provide complete visibility into your account and allow you to audit any actions taken.
2. Introduction to AWS Fault Injection Simulator
Amazon launched the Fault Injection simulator to simplify the process of running controlled fault injection experiments across multiple AWS services. This allows teams to build confidence in their application behavior. Fault Injection Simulator allows teams to quickly set up experiments by using pre-built templates that create the desired disruptions. Fault Injection Simulator also provides the controls and guardrails required for teams to run production experiments, such as rolling back or stopping an experiment if certain conditions are met. Just a few clicks on the console allow teams to run complex scenarios that include common distributed system failures occurring simultaneously or building sequentially over the course of time. This allows them to create the real-world conditions needed to uncover hidden weaknesses.
3. Objective and Prerequisites
We will be testing how our applications handle instances stop and start.
Let’s try it. We can see how long it takes for the application to return from a stopped state following the Instance stop. This will give you an insight into how to design your Architecture. This experiment is used by most organizations during Game Days.
This is where we will test the Stop and Start feature of AWS FIS.
First, we must create an IAM Role to help us run the FIS experiment. Once that is done, we will need to create two EC2 Instances.
4. Make an experiment template
Go to AWS Console, and select AWS FIS
Click on Create experiment template
Enter a description, name and select the IAM Role you created earlier
Click on Actionsa. Select Add actionb. Enter a name to the actionc. For Action type, choose aws:ec2:stop-instances.d. For startInstancesAfterDuration, specify 3 minutes (PT3M)e. Choose Save
To edit Targets, follow these steps:a. Select Edit to edit the target that AWS FIS created automatically for you in step 1.b. Choose Target method. Next, select Resource IDs. Then, select the IDs for the two test instancesc. Select COUNT for Selection mode. Enter 1d for Number of resources Select Save
Select Add target and do the nexta. Enter the target nameb. Choose aws.ec2:instancec for Resource type. Choose Target method and choose Resource IDs. Next, choose the IDs for the two test instancesd. Select Alle for Selection mode. Select Save
Select Add action from the Actions section. Do the following:a. Enter a name for the actionb. For Action type, choose aws:ec2:stop-instancesc. Choose the first action you added to Start after. Choose Target from the list of targets you have added. For startInstancesAfterDuration, specify 3