模拟 Redis 故障
本文主要介绍如何使用 Chaosd 模拟 Redis 故障。该功能通过使用 go-redis
包中的 Golang 接口和 redis-server
命令行工具模拟 Redis 故障场景,支持通过命令行模式或服务模式创建实验。
使用命令行模式创建实验
在创建 Redis 故障实验前,可运行以下命令查看 Chaosd 支持的进程故障类型:
chaosd attack redis -h
输出结果如下所示:
Redis attack related commands
Usage:
chaosd attack redis [command]
Available Commands:
cache-expiration expire keys in Redis
cache-limit set maxmemory of Redis
cache-penetration penetrate cache
sentinel-restart restart sentinel
sentinel-stop stop sentinel
Flags:
-h, --help help for redis
Global Flags:
--log-level string the log level of chaosd. The value can be 'debug', 'info', 'warn' and 'error'
--uid string the experiment ID
Use "chaosd attack redis [command] --help" for more information about a command.
目前 Chaosd 支持模拟缓存过期、缓存限流、缓存穿透、哨兵重启和哨兵不可用等故障场景。