MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

哨兵架构&redisCluster-Redis(五)

2025-06-28 14:18 huorong 精选文章 2 ℃ 0 评论

上篇文章介绍了主从架构以及lua脚本。


一、Sentinel集群

主从的搭建我们已经完成,但如果主节点宕机,这时候导致整个redis服务不可用怎么办呢?

运维可以手动重启主节点,或者手动去修改从节点,把从节点改为主节点。

但redis本身由哨兵,我们可以通过配置哨兵来监听主节点是否宕机,宕机发起选举新的主节点。


第一步:cp sentinel.conf sentaine_26379.conf

第二步:

port 26379

daemonize yes

pidfile “/var/run/redis-sentinel-26379.pid”

logfile “26379.log”

dir “/user/local/redis-5.0.3/data”

sentinel monitor mymaster 192.168.0.70 6379 2


此处mymaster名字是可以随便取的,也可以取mymaster1 或者matser2

(这里2代表什么意思呢?

我们正常需要开启三个哨兵,当其中两个哨兵与主节点断开连接,则就发起重新选举。)



由图可以看到,我搭建的sentinel已经启动成功,它本质也是一个redis服务。


StringRedisTemplate继承RedisTemplate,前者采用string序列化策略,保存的key和value都是序列化,后者是jdk序列化策略。


一般redis单节点配置不会超过10个g。

因为如果配置rdb或者重写的时候,内存特别大的时候,会给主节点造成非常大的压力,所以要小于10个G。


二、jedisCluster



高可用集群架构,与前面的哨兵最大区别是,这边会分片放,前面哨兵如果master放10个g,那么这里的cluster则会分成三部分,分别为3个g,3个g,4个g。


第一步:mkdir redis-cluster

mkdir 8001 8004


第二步:cp redis.conf 到8001下面

修改配置:

daemonize yes

Port 8001

Dir /usr/local/redis-cluster/8001/

# 启动集群命令yes

Cluster-enabled yes

Cluster-config-file nodes-8001.conf

Cluster-node-timeout 5000

# bind 127.0.0.1

# 关闭保护模式

Protected-mode no

appendonly yes

# 设置密码如下

# 设置redis访问密码

Requirepass keying

# 设置集群节点间访问密码

Masterauth keying


第三步:如上复制到8004然后修改配置



搭建好之后启动,发现8001和8004启动的服务进程和之前的不同,后面有cluster

Tags:requirepass

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言