Closed dm7pwnage closed 4 years ago
Hi, to help you I need to replicate the same config and same redis topology, but I don't have expertise to help what you need. I found on IORedis documentation something related to slave connections(https://github.com/luin/ioredis#sentinel). You know that only master is writable, so on the slaves is imposible use the set command or any command that write on redis server.
Hello,
thank you for your quick response. I think you do not need to replicate the config at the moment. I simplified it as follows. Maybe this helps.
best regards
I progressed and have additional info.
It works if I have only one Redis servers. If I have > 1 Redis servers, it seems connection is made randomly between configured servers. After several minutes it somehow changes between the configured servers.
It seems all commands are only sent to one server, not to the configured ones.
I can confirm now.
It is NOT possible to have >1 Redis server per flow.
I had to split Redis handling into 1 flow per Redis server and link logic to individual Redis server handling flows using link in, link out nodes.
Try mark "Block Commands" on redis cmd, and see if now works.
Hi @dm7pwnage, I change the way that connection is created. Now I use the server name except if the block option is checked. Please test version 1.3.5 and verify if now the multiple connections work ok.
Thank you for your effort and the update. I will schedule tests next weeks. I'll keep you updated.
I'm awaiting your response to close this issue.
Hi,
maybe I may ask for help again:
Best regards
Summary
I have a 5 node redis/sentinel setup.
OK: Setting/getting keys using redis-cli works on master node works properly.
Not OK: Setting a key using node-red connecting to the master node gets error "ReplyError: READONLY You can't write against a read only replica." (This error on the replicas is ok, but not handled in my test flow).
Question
Setup
Replication status (current master redis-010301.localdomain).
where
redis-010101.localdomain = 192.168.1.180 redis-010201.localdomain = 192.168.2.180 redis-010301.localdomain = 192.168.3.180 redis-010401.localdomain = 192.168.4.180 redis-010501.localdomain = 192.168.4.185
Node configurations are (example for only node 3):
My test flow
My simple test flow is attached:
My simple test flow for import:
redis-flow.zip