chaosd is a Chaos Engineering toolkit that injects failures into physical nodes to test system resilience.
The tool addresses the need to validate how systems behave under adverse conditions by simulating various fault scenarios on bare metal infrastructure. It operates by injecting faults across five categories: process-level failures like killing or stopping processes, network disruptions including latency injection and packet loss, CPU and memory stress, disk I/O faults and capacity exhaustion, and host-level operations such as machine shutdown. The tool supports two operational modes: command-line mode for direct fault injection and recovery, and service mode running as a background daemon that accepts HTTP requests for fault management.
chaosd suits teams testing physical infrastructure resilience or on-premises deployments where Kubernetes-based chaos engineering tools are not applicable. It is particularly useful for validating how applications and systems respond to infrastructure failures at the node level. The tool requires several Linux utilities as prerequisites, including tc, ipset, iptables, and stress-ng, which must be installed before deployment. Installation can be accomplished either by building from source code or downloading precompiled binaries.
The project maintains active development with regular commits addressing bug fixes and feature improvements. The codebase shows consistent attention to expanding fault injection capabilities and refining the user interface for both command-line and service modes. Pull requests receive timely review and integration, indicating an engaged maintenance process. The project documentation is actively maintained alongside code changes, ensuring that usage guidance stays synchronized with implementation.