【发布时间】:2020-12-21 22:19:52
【问题描述】:
在 linux 配置文件中访问 redis 集群 URL 的常用符号是什么?常规的此类 URL 类似于
url = redis://<password>@<ip>:<port>
举个例子
url = redis://secret@1.2.3.4:6379
在集群上尝试会出现神秘错误
redis.exceptions.ResponseError: MOVED 6553 <newip>:<port>
tooz.ToozError
但是我在互联网上的任何地方都找不到,如果您有多个节点该怎么办。该文档提到了一种叫做“哨兵”的东西,并建议做类似的事情;
url = redis://<ip>:<sentinel port>?sentinel=<master name>&sentinel_fallback=<ip2>:<sentinel port>&<sentinel_fallback>=<ip3>:<sentinel port>
这显然是荒谬的。密码在哪里? (提示:这只会按原样产生“权限被拒绝”)到底什么是“主名称”?这没有任何意义。有 N 个实例(N = XY,其中 X 是我们的副本数,X >= 2,Y 是分片数,Y >= 3),结果 N >= 6。至少有 3 个节点,所以至少3个哨兵。每个实例都有自己的“名称”,因此有 6 个主名称。疯狂地猜测它可以被@替换并使用它让我得到更多神秘的错误。
tooz.coordination.ToozConnectionError: No master found for <name>
【问题讨论】:
标签: redis configuration cluster-computing openstack