Generate load across CPU cores. Ensure your systems can withstand stressful conditions caused by high demand or heavy traffic.
Terminate a specific process or set of processes. Prepare for application crashes, Out Of Memory (OOM), and similar events.
Consume a specific amount of RAM. Validate resilience to memory leaks or resource-intensive applications.
Drop network traffic based on port, network interface, or hostname. Test your ability to failover during a complete network outage.
Create read/write pressure on I/O devices such as hard disks. Test the performance of your systems when connected to high-latency, low-throughput storage.
Inject a delay into outbound network traffic. Validate your system's responsiveness under slow network conditions.
Consume a specific amount of space on a storage device. Ensure your systems keep running even with disk-hungry applications (such as log files and exhausted storage volumes).
Drop or corrupt a percentage of outbound network traffic. Ensure you can successfully send and receive data despite poor network conditions.
Shutdown (and optionally reboot) the host operating system. Build resilience to host failures.
Block access to DNS servers. Prepare for DNS outages, test fallback DNS servers, and validate DNS resolver configurations.
Change the system time. Prepare for Daylight Savings Time, clock drift between systems, expiring SSL/TLS certificates, and other time-sensitive events.
Retrieve the certificate chain and validate that no certificates expire in the next 30 days.