I’ve written a small utility to smoke test a Redis replication set. It’s a simple Python script that should be run as a daemon to test if writes to a Redis master are being correctly replicated to the slaves.
The necessity of such script arised from the fact that the Redis Sentinel, tool that Redis uses to implement a kind of raft, isn’t very reliable and has the bad habit of stop working without much notice.
This utility is the work of a single afternoon so far, and it’s being currently worked on to easily integrate with a SolarWinds instance, just as it may be extended to work with other monitoring tools.
You can find the code in the Github repository below:
Patches are welcome. The code is distributed under the MIT license. The next features that I will implement will be:
- Unit testing (sure, test the test all the way down)
- SolarWinds format output
- Single run
- Separate the CLI from the lib code
Maybe I will write someday about the hell that was creating an idempotent Ansible role for Redis…