加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

Redis Sentinel集群部署

发布时间:2021-02-24 20:02:34 所属栏目:安全 来源:网络整理
导读:《Redis Sentinel集群部署》要点: 本文介绍了Redis Sentinel集群部署,希望对您有用。如果有疑问,可以联系我们。 什么是Redis Sentinel Redis Sentinel是用来实现Redis高可用的一套解决方案.Redis Sentinel由两个部分组成:由一个或者多个Sentinel实例组成

以下输出信息,表明192.168.2.212上的Redis是Master角色.

$ redis-cli -p 6379 -h 192.168.2.212 -a 000000 info Replication
# Replication
role:master
connected_slaves:2
slave0:ip=192.168.2.211,port=6379,state=online,offset=2312008,lag=0
slave1:ip=192.168.2.210,lag=0
master_repl_offset:2312008
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1639828
repl_backlog_histlen:672181
  • dev-master-01

以下输出信息,表明192.168.2.210上的Redis是Slave角色.

$ redis-cli -p 6379 -h 192.168.2.210 -a 000000 info Replication
# Replication
role:slave
master_host:192.168.2.212
master_port:6379
master_link_status:up
master_last_io_seconds_ago:0
master_sync_in_progress:0
slave_repl_offset:2222825
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:593455
repl_backlog_histlen:1048576
  • dev-node-01

以下输出信息,表明192.168.2.211上的Redis是Slave角色.

$ redis-cli -p 6379 -h 192.168.2.211 -a 000000 info Replication
# Replication
role:slave
master_host:192.168.2.212
master_port:6379
master_link_status:up
master_last_io_seconds_ago:0
master_sync_in_progress:0
slave_repl_offset:2283392
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

Sentinel日常运维

Sentinel常用命令

以下列出的是Sentinel接受的命令:

  • PING:返回PONG.
  • SENTINEL masters:列出所有被监视的主服务器,以及这些主服务器的当前状态.
  • SENTINEL master <master name>:用于查看监控的某个Redis Master信息,包括配置和状态等.
  • SENTINEL slaves <master name>:列出给定主服务器的所有从服务器,以及这些从服务器的当前状态.
  • SENTINEL sentinels <master name>:查看给定主服务器的Sentinel实例列表及其状态.
  • SENTINEL get-master-addr-by-name <master name>:返回给定名字的主服务器的IP地址和端口号. 如果这个主服务器正在执行故障转移操作,或者针对这个主服务器的故障转移操作已经完成,那么这个命令返回新的主服务器的IP地址和端口号.
  • SENTINEL reset <pattern>:重置所有名字和给定模式pattern相匹配的主服务器.pattern 参数是一个Glob风格的模式.重置操作清除主服务器目前的所有状态,包括正在执行中的故障转移,并移除目前已经发现和关联的,主服务器的所有从服务器和Sentinel.
  • SENTINEL failover <master name>:当主服务器失效时,在不询问其他Sentinel意见的情况下,强制开始一次自动故障迁移(不过发起故障转移的Sentinel会向其他Sentinel发送一个新的配置,其他Sentinel会根据这个配置进行相应的更新).
  • SENTINEL reset <pattern>:强制重设所有监控的Master状态,清除已知的Slave和Sentinel实例信息,重新获取并生成配置文件.
  • SENTINEL failover <master name>:强制发起一次某个Master的failover,如果该Master不可访问的话.
  • SENTINEL ckquorum <master name>:检测Sentinel配置是否合理,failover的条件是否可能满足,主要用来检测你的Sentinel配置是否正常.
  • SENTINEL flushconfig:强制Sentinel重写所有配置信息到配置文件.
  • SENTINEL is-master-down-by-addr <ip> <port>:一个Sentinel可以通过向另一个Sentinel发送SENTINEL is-master-down-by-addr命令来询问对方是否认为给定的服务器已下线.

增加和移除监控以及修改配置参数

SENTINEL MONITOR <name> <ip> <port> <quorum>
SENTINEL REMOVE <name>
SENTINEL SET <name> <option> <value>

增加和移除Sentinel

增加新的Sentinel实例非常简单,修改好配置文件,启动即可,其他Sentinel会自动发现该实例并加入集群.如果要批量启动一批Sentinel节点,最好以30秒的间隔一个一个启动为好,这样能确保整个 Sentinel集群的大多数能够及时感知到新节点,满足当时可能发生的选举条件.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!