Skip to content
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

Document Unsupported Redis Read Replicas/Cluster (non-Sentinel)? #123

Closed
supertylerc opened this issue Jan 30, 2022 · 2 comments · Fixed by #126
Closed

Document Unsupported Redis Read Replicas/Cluster (non-Sentinel)? #123

supertylerc opened this issue Jan 30, 2022 · 2 comments · Fixed by #126
Labels
bug Something isn't working

Comments

@supertylerc
Copy link

The Bitnami Redis chart's default architecture is replication (without Sentinel). This chart, however, overrides that to set it to standalone. This chart sets the Redis service name to the headless service, which can't differentiate between write and read replicas. The result is that when not using Sentinel but still wanting to have read replicas, you will get the following error:

redis.exceptions.ResponseError: Error running script (call to f_f6b93ec749d56aefa37c49bbc5e7a6eedd0d4ec3): @user_script:15: @user_script: 15: -READONLY You can't write against a read only replica.

The fix is to use the *-redis-master for writes and the *-redis-replicas service for reads. However, it seems that Nautobot doesn't currently support it due to an upstream issue. For those who are possibly not familiar with the implementation details of Nautobot, but who are familiar with the Bitnami Redis chart (or Redis in general), it might be helpful to have a notice that clustering/read replicas aren't supported by Nautobot (and therefore the functionality available in the Redis chart is unsupported).

@nniehoff
Copy link
Contributor

nniehoff commented Feb 1, 2022

I agree, we should fix this, but I'm curious your use case for the read replicas? Are you using a custom nautobot config to read from the *replicas?

@nniehoff nniehoff added the bug Something isn't working label Feb 1, 2022
@nniehoff nniehoff mentioned this issue Feb 3, 2022
@supertylerc
Copy link
Author

@nniehoff re: use case: No, no custom config for dealing with read replicas (afaik not currently possible, ref: suor/django-cacheops!35). While I'd like that to be a supported thing, I think that's far outside of the scope of this Helm chart.

My concern was more an edge case: if someone doesn't realize that read replicas weren't supported and was familiar with the Bitnami Redis chart and chose to configure it as architecture: replication, it would have failed before !126.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants