设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 手机 公司
当前位置: 首页 > 服务器 > 安全 > 正文

Redis Sentinel集群部署(4)

发布时间:2021-01-24 17:52 所属栏目:53 来源:网络整理
导读:经过一次failover后,会发现Sentinel配置文件变更了以下一些内容.可以看到Sentinel将最新的集群状态写入了配置文件. $ cat /etc/redis/sentinel.conf# Generated by CONFIG REWRITEmaxclients 4064sentinel leader-e

经过一次failover后,会发现Sentinel配置文件变更了以下一些内容.可以看到Sentinel将最新的集群状态写入了配置文件.

$ cat /etc/redis/sentinel.conf

# Generated by CONFIG REWRITE
maxclients 4064
sentinel leader-epoch redis-master 1
sentinel known-slave redis-master 192.168.2.211 6379
sentinel known-slave redis-master 192.168.2.210 6379
sentinel known-sentinel redis-master 192.168.2.212 26379 bbf85fae74692d9527e77c5b0bb83a2b5db40dd2
sentinel known-sentinel redis-master 192.168.2.210 26379 2b2446b24a2bd01b9f54a6b2ca4f945a3480dd7e
sentinel current-epoch 1

验证下三台主机上的角色

  • dev-node-02

以下输出信息,表明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集群的大多数能够及时感知到新节点,满足当时可能发生的选举条件.

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读