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

docs: how to test elasticache configuration endpoint #98

Open
joebowbeer opened this issue Jun 17, 2020 · 5 comments
Open

docs: how to test elasticache configuration endpoint #98

joebowbeer opened this issue Jun 17, 2020 · 5 comments

Comments

@joebowbeer
Copy link

It would be helpful if your README explained if/how one is able to run your redis-cluster so that it provides a single configuration endpoint like ElastiCache in cluster-enabled mode.

@Grokzen
Copy link
Owner

Grokzen commented Jun 17, 2020

@joebowbeer I dont run a AWS ElastiCache myself so i have no idea what changes would be needed in order to make it work the same way if that is even possible right now?. If you have this kind of information what changes would be needed to the images, is that something you can put into a PR and submit?

@joebowbeer
Copy link
Author

The paragraphs below are copied from ElastiCache docs. The term "configuration endpoint" seems to be unique to ElastiCache. I read that what ElastiCache calls a replication group is like the real cluster. I was wondering if there was a way to configure your test cluster to present like an ElastiCache cluster.

A Redis (cluster mode enabled) cluster has a single configuration endpoint. By connecting to the configuration endpoint, your application is able to discover the primary and read endpoints for each shard in the cluster.

Redis (cluster mode enabled) has a configuration endpoint which "knows" all the primary and node endpoints in the cluster. Your application connects to the configuration endpoint. Whenever your application writes to or reads from the cluster's configuration endpoint, Redis, behind the scenes, determines which shard the key belongs to and which endpoint in that shard to use.

@Grokzen
Copy link
Owner

Grokzen commented Jun 17, 2020

@joebowbeer That is not really possible in this container as it would require me to build a REST endpoint or something that would query the cluster to build this "configuration endpoint" since the configuration endpoint is not something that is supported natively from redis but is something custom that AWS provides/supports.

I have no plans on building a service or feature like that to simulate this myself. If you @joebowbeer or someone else would like to build this and add it to the solution inside the image running through supervisord as some form of simple API/REST endpoint that simulates this AWS behaviour.

@jordigarcl
Copy link

Isn't the AWS EC configuration endpoint a static alias to one of the nodes in the cluster? In that case, your local configuration entrypoint can be any of the local nodes.

@Grokzen
Copy link
Owner

Grokzen commented Nov 8, 2020

@jordigarcl Yes that is true that AWS EC has some helper endpoint that returns the location of all nodes to your cluster.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants