redis sentinel 部署

redis sentinel 部署

服务器说明

192.168.2.200 master   redis-server redis-sentinel
192.168.2.201 slave1   redis-server redis-sentinel
192.168.2.202 slave2   redis-server redis-sentinel

master 节点 redis-master.conf

# 使用守护进程模式
daemonize yes
# 非保护模式,可以外网访问
protected-mode no
min-replicas-to-write 1
min-replicas-max-lag 10
# 端口号
port 6379
# 绑定ip,本机的ip
bind 192.168.2.200
# 学习开发,使用最大日志级别,能够看到最多的日志信息
loglevel debug
# 指定日志文件路径,没有文件的话,先创建
logfile /root/log/redis-server.log
# 客户端访问,需要密码连接
masterauth 123456
requirepass 123456

slave1节点 redis-slave.conf

# 使用守护进程模式
daemonize yes
# 非保护模式,可以外网访问
protected-mode no 
min-replicas-to-write 1
min-replicas-max-lag 10
# 端口号
port 6379
# 绑定ip,本机的ip
bind 192.168.2.201
# 指定 master 的 ip 地址和端口
replicaof 192.168.2.200 6379
# 学习开发,使用最大日志级别,能够看到最多的日志信息
loglevel debug
# 指定日志文件路径,没有文件的话,先创建
logfile /root/log/redis-server.log
# 设置访问 master 的密码
masterauth 123456
requirepass 123456

slave2节点 redis-slave.conf

# 使用守护进程模式
daemonize yes
# 非保护模式,可以外网访问
protected-mode no 
min-replicas-to-write 1
min-replicas-max-lag 10
# 端口号
port 6379
# 绑定ip,本机的ip
bind 192.168.2.202
# 指定 master 的 ip 地址和端口
replicaof 192.168.2.200 6379
# 学习开发,使用最大日志级别,能够看到最多的日志信息
loglevel debug
# 指定日志文件路径,没有文件的话,先创建
logfile /root/log/redis-server.log
# 设置访问 master 的密码
masterauth 123456
requirepass 123456

redis连接客户端

#连接redis节点
redis-cli -h 192.168.2.200 -p 6379
#查看节点信息
info replication
#启动sentinel命令
redis-server sentinel-my.conf --sentinel
redis-sentinel sentinel-my.conf

sentinel配置文件说明

port 26379
#不同的节点不一样
bind 192.168.2.200
daemonize yes
logfile /root/log/redis-sentinel.log
sentinel monitor manager1 192.168.2.200 6379 2
sentinel auth-pass manager1 123456
sentinel down-after-milliseconds manager1 60000
sentinel failover-timeout manager1 180000
sentinel parallel-syncs manager1 1
  1. SENTINEL masters - 展示监控的 master 清单和它们的状态。
  2. SENTINEL master [master name] - 展示指定 master 的状态和信息。
  3. SENTINEL slaves [master name] - 展示 master 的 slave 清单和它们的状态。
  4. SENTINEL sentinels [master name] - 展示 master 的 sentinel 实例的清单和它们的状态。
  5. SENTINEL get-master-addr-by-name [master name] - 返回 master 的 IP 和端口。如果故障转移在处理中或成功终止,返回晋升的 slave 的 IP 和端口。
  6. SENTINEL reset [pattern] - 这个命令将重置所有匹配名字的 masters。参数是 blog 风格的。重置的过程清空 master 的所有状态,并移除已经发现和关联 master 的所有 slave 和 sentinel。
  7. SENTINEL failover [master name] - 如果 master 不可到达,强制执行一个故障转移,而不征求其他 Sentinel 的同意。
  8. SENTINEL ckquorum [master name] - 检查当前的 Sentinel 配置是否能够到达故障转移需要的法定人数,并且需要授权故障转移的多数。这个命令应该用于监控系统检查部署是否正确。
  9. SENTINEL flushconfig - 强制 Sentinel 在磁盘上重写它的配置,包括当前的 Sentinel 状态。通常 Sentinel 每次重写配置改变它的状态。然而有时由于操作错误、硬盘故障、包升级脚本或配置管理器可能导致配置文件丢失。在这种情况下收到强制 Sentinel 重写配置文件。这个命令即使上面的配置文件完全不见了。

sentinel官网链接 参考博客

posted @ 2023-03-03 10:43  change丶fl  阅读(95)  评论(0编辑  收藏  举报