What Are My Options for Making Redis High-Availability?

0
11
Asked By CuriousCat42 On

I'm currently running a single instance of Redis on EKS and it's been solid. However, I've realized that we could face a major outage if this single node fails, as numerous services rely on it. Right now, my setup consists of a StatefulSet pod without replicas or Sentinel, and I'm concerned because the EBS volume locks it to one availability zone, which restricts its ability to recover in case of an issue. I'm exploring options for high-availability solutions and considering a transition to Dragonfly as an alternative, but I'm uncertain about its compatibility with our custom RedisStack modules like RedisJSON and RediSearch. I know I could scale up using the Bitnami chart with Sentinel and replicas, but I'm worried about integration with my custom modules. Additionally, since we have on-prem installations, it's crucial that whatever solution we choose works well across different Kubernetes clusters without tying us to AWS. I'd love to hear any recommendations or experiences you all have had!

5 Answers

Answered By MissingInfoFan On

It seems like you've got multiple paths to explore for high availability with Redis—like Sentinel or Clustering? Am I missing something with your situation?

Answered By CloudExplorer On

Have you considered KeyDB as an alternative? It might meet your needs for high availability while allowing for some customizations. Also, depending on your AWS usage, managing Redis through Elasticache can provide hassle-free reliability.

Answered By TechWhiz198 On

If you're not in a rush, you might want to wait for the Valkey Operator to go GA. It's designed as a drop-in replacement for Redis and offers HA clustering. I've been using the Valkey helm chart and it's been working well, can't wait for the operator launch!

HappyCamper77 -

Same here! The helm chart is solid for now, but the operator is going to be a game changer.

Answered By CodeMaster99 On

Introducing Sentinel means you'll need to change how your services connect to Redis—from just connecting directly to asking Sentinel where to connect. I used HAProxy with active checks in a basic setup, but I've heard mixed things about Dragonfly; some say it's a bit buggy. Valkey Operator seems promising if you can hold off a bit longer.

Answered By SkepticalDev On

I'd recommend steering clear of Dragonfly. We tried it and found serious issues with how it manages its processes, especially during writes, which would pause everything. If you're serious about avoiding data loss, implementing Sentinel with replicas is vital. Just keep in mind that Bitnami's Sentinel setup can come with some headaches—like multiple clusters trying to connect over the same ports, so make sure to tweak the defaults if you go that route.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.