Redis集群模式搭建
| 主机 | 角色(端口) |
|---|---|
| 10.0.0.91 | Master(6379),Slave(6380) |
| 10.0.0.92 | Master(6379),Slave(6380) |
| 10.0.0.93 | Master(6379),Slave(6380) |
安装Redis
见前面的安装Redis,不过不用systemctl管理,由于机器不足,我在每台机器上都部署了两个Redis实例,一主一从,
修改配置文件(每个节点都需要做)
主要是修改集群可以开启集群模式
cluster-enabled yes在想要监听所有的IP时,需要将保护模式关掉,在保护模式下,如果不指定监听的IP,它默认只能监听loop,无法监听外部IP
protected-mode no在搭建的时候,直接将
bind去掉了,这样就可以监听本机所有的地址,当然,这样需要关闭保护模式
启动实例(每台机器都要做)
redis-server redis/6379/conf/redis.conf redis-server redis/6380/conf/redis.conf
引导集群
在3.0和4.0都是使用redis-trib.rb引导集群,在5.0之后直接使用redis-cli引导集群,我这里的使用的是6.0,所以使用redis-cli
bash
redis-cli --cluster create 10.0.0.91:6379 10.0.0.92:6379 10.0.0.93:6379 10.0.0.91:6380 10.0.0.92:6380 10.0.0.93:6380 --cluster-replicas 1
# 在上面提到主实例的端口为每个主机的6379,而从节点为6380,--cluster-replicas 1 参数表示希望每个主服务器都有一个从服务器,这里则代表3主3从,前3个代表3个master,后3个代表3个slave,通过该方式创建的带有从节点的机器不能够自己手动指定主节点,redis集群会尽量把主从服务器分配在不同机器上。