创建Redis分片集群时,Waiting for the cluster to join卡住

项目场景:

创建Redis分片集群时,Waiting for the cluster to join卡住很久无反应。


问题描述


原因分析:

需要打开redis集群总线端口,redis集群总线端口为redis客户端端口加上10000,比如说你的redis 6379端口为客户端通讯端口,那么16379端口为集群总线端口。

我搭建的redis集群中端口号是 7001、7002、7003、8001、8002、8003,其中 7001、7002、7003为主节点,8001、8002、8003为从节点,那么redis集群中总线端口为17001、17002、17003。


解决方案:

查看防火墙状态

bash 复制代码
systemctl status firewalld

查询已开放的端口列表

bash 复制代码
firewall-cmd --zone=public --list-ports

添加指定需要开放的端口

bash 复制代码
firewall-cmd --add-port=17001/tcp --permanent
firewall-cmd --add-port=17002/tcp --permanent
firewall-cmd --add-port=17003/tcp --permanent

以上即可解决问题,也可以同时把从节点的总线端口都配置进防火墙,这样主从切换就不会出现问题了。

相关推荐
好学且牛逼的马8 分钟前
Redisson 的分布式锁机制&幽默笑话理解
redis·分布式
Fuchsia25 分钟前
Linux软件编程笔记五——进程Ⅰ
linux·c语言·笔记·操作系统·进程
RestCloud1 小时前
达梦数据库到Greenplum:用ETL工具实现数据仓库迁移
数据库·数据仓库·etl·达梦数据库·数据传输·greenplum
AC是你的谎言1 小时前
HTTP和HTTPS
linux·网络·c++·网络协议·学习·http·https
Boilermaker19921 小时前
【Redis】集群与分布式缓存
java·数据库·redis·1024程序员节
千码君20162 小时前
Go语言:解决 “package xxx is not in std”的思路
开发语言·后端·golang
c语言鹌鹑蛋2 小时前
【进程间通信】--- 匿名管道,命名管道
linux
江輕木2 小时前
如何使用宿主机软件共享网络给CentOS 7
linux·运维·服务器
武子康2 小时前
Java-163 MongoDB 生产安全加固实战:10 分钟完成认证、最小权限、角色详解
java·数据库·分布式·mongodb·性能优化·系统架构·nosql
zhangyifang_0092 小时前
PostgreSQL 的表继承与分区
数据库·postgresql