-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Redis Sentinel support #137
Comments
Team, does anyone know what specifics we need to change to support this? |
On the Go side, this should be rather trivial as the lib we use supports that, we'd just have to create the client: https://pkg.go.dev/github.com/go-redis/redis/v8#NewFailoverClient However, on the C++ side, we'd have to implement all that failover stuff. I don't know how complex that would be. Also, the current HA model for Icinga 2 + Icinga DB expects one Redis server per Icinga 2 instance, so if you want HA, you just add a second Redis instance. Also note that even if we supported this, you couldn't have two Icinga 2 instances write into the same cluster. So I don't really see a benefit for Icinga DB in supporting this right now. |
... which ideally runs on the same machine as Icinga 2, so IMAO that feature just doesn’t fit in our concept. |
can an external redis cluster be used? i typically use redis-ha cluster in k8s for redis backends. |
If it acts like a standard Redis server, it will be fine. I don't know if that's the case. Is redis-ha the same thing as Redis Sentinel? |
it's composed of optional haproxy frontend (to manage connections from outside of k8s) and 3 nodes with sentinel. |
Wait. If a Redis sentinel cluster can be frontended by a HAproxy, one could also use shuffling DNS or iptables. So we don’t necessarily have to support this by ourselves. |
Our production Redis clusters use Sentinel for High Availability. Please add Sentinel support so that Icinga DB can automatically route requests to active nodes in the cluster as necessary.
The text was updated successfully, but these errors were encountered: