Key elements of a zero-downtime migration is:
CONFIG SET slave-read-only no
)In short:
Additionally redis have options which allows to disable a source redis to accept writes right after detaching a target:
min-slaves-to-write
min-slaves-max-lag
This topic covered by
Very good explanation from RedisLabs team https://redislabs.com/blog/real-time-synchronization-tool-for-redis-migration (use web.archive.org)
And even their interactive tool for migrate: https://github.com/RedisLabs/redis-migrate