我如何告诉芹菜关于我在redis上寻找的服务名称?我正在尝试使用Celery 4中内置的Sentinel支持。我正在传递一个在中配置的代理URL:sentinel://0.0.0.0:26379
但redis似乎抱怨没有收到service_name:
File "/usr/local/lib/python2.7/dist-packages/redis/sentinel.py", line 222, in discover_master
raise MasterNotFoundError("No master found for %r" % (servic
假设我有两个数据中心,每个数据中心都运行一个redis实例。此外,我在这两个数据中心中运行了三个sentinel实例,每个实例在不同的机器上,但其中两个在同一数据中心。
这是一个问题吗?
在最坏的情况下,如果第一个数据中心变得不可用,三个前哨实例中的两个+一个redis实例将同时关闭。如果此redis实例是主实例,则会故障转移到其他数据中心。
但是,如果数据中心1再次可用,会发生什么情况?我猜这将是新的配置:
Data center 1 - Sentinel 1 -> Points to master in data center 1
Data center 1 - Sentinel 2
我在kubernetes中使用helm图表完成了bitnami redis集群部署。
但在豆荚运行一段时间后,它会给出以下许可问题。
1:M 12 Feb 2022 16:49:58.886 * Starting automatic rewriting of AOF on 157422% growth
1:M 12 Feb 2022 16:49:58.887 * Background append only file rewriting started by pid 6625
6625:C 12 Feb 2022 16:49:58.887 # Opening the temp file for
我在向外部应用程序公开Kubernetes上的Redis集群时遇到了困难。使用Kubernetes负载均衡器服务,我能够为Redis分配一个外部IP,它提供初始连接。问题是,每当客户端接收到MOVED命令时,IP地址都是Kubernetes内部的POD IP,集群外的redis客户端无法访问该IP。
下面是redis-cli的一个示例会话来演示:
10.150.0.5:7000> set test value
-> Redirected to slot [6918] located at 10.28.1.9:6379
Could not connect to Redis at 10
我在Kubernetes上通过Helm运行Redis,并想知道如何从我的应用程序中引用主pod,该应用程序也作为pod在Kubernetes中运行。Helm可以很好地创建ClusterIP服务,但在我的应用程序中,我仍然不清楚我放了什么来总是引用master:
MacBook-Pro ➜ api git:(master) ✗ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ignoble-hyena-redis
我正在尝试用Bitnami Redis HELM Chart在Kubernetes环境下安装Redis。我希望使用定义的密码,而不是随机生成的密码。但是当我想用redis-cli连接到redis master或者副本时,我得到了下面的错误。 I have no name!@redis-client:/$ redis-cli -h redis-master -a $REDIS_PASSWORD
Warning: Using a password with '-a' or '-u' option on the command line interface may