巡检脚本示例
巡检脚本示例
#!/bin/bash
M=$(redis-cli -h 10.0.0.10 INFO replication | grep master_repl_offset | cut -d: -f2 | tr -d '\r')
S=$(redis-cli -h 10.0.0.11 INFO replication | grep slave_repl_offset | cut -d: -f2 | tr -d '\r')
LINK=$(redis-cli -h 10.0.0.11 INFO replication | grep master_link_status | cut -d: -f2 | tr -d '\r')
echo link=$LINK master=$M slave=$S diff=$((M-S))
[ "$LINK" = "up" ] && [ $((M-S)) -lt 1048576 ] || echo ALERT| diff | 主从 offset 字节差 |
|---|---|
| 阈值 | 示例 1MB,按写入速率调整 |
| 告警 | link != up 或 diff 持续超阈值 |
巡检频率 1 分钟足够;高频采集本身会给 Redis 增加 INFO 开销(不大但别 1 秒一次)。