一:搭建
下载redis安装包
启动redis服务 指定配置文件
主节点配置信息:
bind 0.0.0.0
port 6379
daemonize yes
requirepass "123456"
logfile "/redis1.log"
dbfilename "xxx.rdb"
dir "/redis/data"
appendonly yes
appendfilename "appendonly1.aof"
masterauth "123456"
从节点配置信息:
replicaof 8.129.113.233 6379
从节点配置信息相比主节点 多了一个replicaof
replicaof 用来指定主节点的ip和端口
至此 redis的主从节点都已启动
我们可以通过info replication 命令查看状态
如果我们redis服务宕机了 我们需要手动启动服务,这段时间不可用
所以我们需要哨兵
哨兵有 监听 通知 和 故障转移三大功能
二 启动哨兵服务
哨兵配置信息:
port 26379
bind 0.0.0.0
daemonize yes
pidfile "/redis-sentinel-1.pid"
logfile "/redis/sentinel_1.log"
dir "/tmp"
sentinel monitor mymaster xxx.xxx.x.xx 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel auth-pass mymaster 123456
sentinel failover-timeout mymaster 30000
启动哨兵服务:
./redis-server /sentinel-1.conf --sentinel
至此 哨兵服务启动完毕
但是由于读写都在主服务节点上,压力比较大,可以采用redis集群部署解决此问题,
配置:
#开启集群
cluster-enabled yes
# 生成的node文件,记录集群节点信息
cluster-config-file nodes.conf
#节点连接超时时间
cluster-node-timeout 20000
#集群节点的ip,当前节点的ip
cluster-announce-ip 192.178.1.11
#集群节点映射端口
cluster-announce-port 6380
#集群节点总线端口,节点之间互相通信,常规端口+1万
cluster-announce-bus-port 16380
启动集群:
先启动集群 即启动N个redis服务
再执行
/redis-cli -a 123456 --cluster create 节点集合 --cluster-replicas 1
--cluster-replicas 1 主从节点的比例,1表示1主1从的方式
集群信息:cluster info
节点信息:cluster nodes