当前位置: 首页 > 知识库问答 >
问题:

使用redis-trib.rb创建群集时出现连接错误?

冀阳文
2023-03-14

我所有的Redis服务器配置如下:

大师:192.168.0.106:7001,192.168.0.1057001,192.168.0.112:7001

从属:192.168.0.106:7002192.168.0.105:7002192.168.0.122:7002

其中192.168.0.106:7002服务器是192.168.0.106:7001服务器的从属服务器等等。我有所有的服务器上ana运行,可以做redis-cli他们所有。我可以看到17001和17002端口也打开了。但是当我跑的时候:

./redis-trib.rb创建--副本1192.168.0.106:7001192.168.0.105:7001192.168.0.112:7001192.168.0.106:7002192.168.0.105:7002192.1268.0.112:7002

我得到一个错误:

创建集群

[ERR]抱歉,无法连接到节点192.168.0.106:7001

我不知道当所有服务器都在工作并且它们的端口都打开时,如何解决这个问题?

一件事是,我有一个密码保护的主人。也许redis-trib.rb无法处理受密码保护的服务器?

共有3个答案

燕青青
2023-03-14

当您使用外部ip而不是127.0.0.1时。您必须在redis.conf中添加新行:“受保护模式编号”

在教程中“https://redis.io/topics/cluster-tutorial,您将看到必须在每个文件夹中创建一个redis.conf:7000、7001、…、7005

教程建议:

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

您只需添加新行:

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
protected-mode no

请记住在机器防火墙内确保您的安全。

相温文
2023-03-14

我也遇到了同样的问题。

但是在检查我的实例的redis.conf时,我看到绑定选项被注释掉了,默认情况下redis使用*:port启动进程。

因此,我将其添加到redis.conf中,现在它可以完美地工作:

绑定0.0.0.0

如果这是安全错误,您可能需要添加密码或指定正确的IP范围。

郑燕七
2023-03-14

redis-trib.rb无法处理受密码保护的redis节点。

所以试图在这样的节点上使用它会导致[ERR]抱歉,无法连接到节点。

为什么redis-trib.rb实用程序不处理经过身份验证的节点?

它与这样一个事实有关,即当Redis节点受到密码保护时,只有其主端口(默认情况下为6379)上的通信受到保护。集群总线上的通信(默认端口10000 = 16379),其中集群中的节点彼此通信不受保护。因此,当单个节点受到密码保护时,Redis集群并不真正受到密码保护。因此,在Redis集群中的各个Redis节点上设置密码不会增加什么安全价值。因此,redis-trib.rb工具没有实现任何身份验证。

更多信息请点击此处:

https://groups.google.com/forum/#!主题/redis-db/Z8lMxTfDct8

 类似资料:
  • 当我试图按照以下部署指南连接到主节点时,我面临着MasternotFounderRorr:https://docs.bitnami.com/tutorials/deploy-redis-sentinel-production-cluster/ 连接主Redis Sentinel节点的代码是: 我面对红魔。哨兵。MasternotFounderRorr:没有为“MyMaster”错误找到master

  • 我试图在本地mac中运行以下代码,其中运行有主从集群的spark集群 但是,在主控制台和

  • 由于单个redis实例不符合我的要求,我选择了redis cluster。我用三个节点组成集群,并将数据填充到集群中。当我使用JedisCluster从集群获取数据时,它比单个实例花费更多的时间。那么,将绝地与redis星系团连接起来的正确方式是什么呢。我如何利用连接池将绝地与redis集群连接起来?

  • 我正在使用kubeadm在VM中创建Kubernetes集群(我在VM中使用的映像是CentOS 7 CIS Hardened)。 我正在遵循这个用Kubeadm创建高可用性集群的官方文档 到目前为止我已经完成的步骤: 将这些值更改为1而不是0 回声 1 禁用交换:swapoff-a sed-e'/swapoff/s/^#*/#/' -i /etc/fstab挂载-a 这样做之后,我创建了一个名为

  • 我已经使用以下指南成功地设置了一个密码保护的redis群集: 我使用ruby和下面的连接字符串…我做错了吗? 我得到的错误是:

  • 我尝试执行下面的python代码 最后一个语句通过以下连接错误。