Redis Cluster Support in Chirpstack

Hi,

Is Redis Cluster supported by Chirpstack?

Redis Cluster is different from Redis Sentinel.

Redis Sentinel is a HA solution.

Redis Cluster, distributes the data across multiple nodes in the cluster and the client need to be aware of the Cluster nodes and get the data from appropriate node.

Regards
Damodar

2 Likes

Currently not, but I agree it would be great to support clustering :slight_smile: It would require a bit of refactoring as the Redis client used currently does not support this (and is not planning to support his). This means in order to support Redis clustering:

1 Like

Just to let you know that I updated both the NS and AS with the new Redis client which does support clustering. This does not mean that clustering is support right now, but it is one step closer :slight_smile:

1 Like

Here you go!

Hi! i’m currently using application server 3.10 and network server 3.9 to test if redis cluster works but unfortunatly i always see the error “move to…”. I set up correctly the new config file (previous version was 3.8 and 3.7) tu use cluster=true but doesn’t work. Am i doing something wrong?

That’s awesome !!

Just can’t find the URI definition when using sentinel.
How can I provide multiples host ?

Thanks

It seems the error is truncated. Please provide the full error log because with this information, there isn’t much I can do…

Set the URL to your Sentinel server, then set the master_name setting.

Currently you can only configure a single server. I know that in case of Redis Cluster, you only need to connect to a single server as the client will receive all nodes within the cluster on connect.

Hi !

Yes, it works.
I’m using Sentinel and that’s fine to use single server. But my infra has 3 sentinels in HA mode, so ideally would be to set all servers.

That’s fine !
Step by step.

Thanks a lot for your work

I am having issues connecting with the redis sentinel cluster. when I provide a connection string like: redis://:@:26379 I receive the error ERR Client sent AUTH, but no password is set. However, if I do not provide a password like redis://:26379 , then it is able to identify the master, but fails when trying to get keys with get keys error: NOAUTH Authentication required.

Any ideas? Seems sentinel doesn’t require a password to lookup master, but redis nodes require password.

I filled a bug report, because network service is not setting the redis passwords correctly: https://github.com/brocaar/chirpstack-network-server/issues/548