redis哨兵模式搭建

本文详细介绍如何搭建Redis哨兵模式,包括环境准备、主从配置、哨兵配置及启动步骤。通过多哨兵实现自动故障转移,确保Redis集群高可用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis哨兵模式搭建

  1. Redis服务器说明:

    • 主:192.168.117.94
    • 从:192.168.117.95,192.168.117.19
    • 端口:6879,6878(哨兵端口)
    • 密码:123456
    • 只有主节点可写入,从节点只能拷贝
  2. 下载安装包:https://pan.baidu.com/s/13ZXoOB6yCZsKUPZp2OrHEA,提取密码:7oai

  3. 升级gcc:如果是安装redis6.x以上版本,则需要升级gcc,因为centos的gcc默认版本是4.8.5,升级gcc需要逐行执行以下命令:

    gcc -v   # 查看gcc版本
    yum -y install centos-release-scl
    yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
    scl enable devtoolset-9 bash
    echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile  --使永久生效
    yum install tcl -y
    
  4. 解压安装包:tar -xf /opt/module/redis-6.0.8.tar.gz && rm -rf /opt/module/redis-6.0.8.tar.gz

  5. 创建软连接:ln -s /opt/module/redis-6.0.8 redis-server

  6. 编译安装:cd /opt/module/redis-server/src && make install

  7. 修改配置文件:vi /opt/module/redis-server/redis.conf(底部追加,详情可查看:https://www.cnblogs.com/pqchao/p/6558688.html

    port 6379
    # 网卡绑定,设置绑定任意网卡
    bind 0.0.0.0
    # 保护模式关闭,允许非本地客户端连接
    protected-mode yes
    # 设置密码
    requirepass 123456
    # 后台守护进程方式运行
    daemonize yes
    # pid文件路径
    pidfile /opt/module/redis-server/run/redis_6379.pid
    # 日志文件
    logfile /opt/module/redis-server/redis_6379.log
    # 设置主节点密码(供哨兵使用)
    masterauth 123456
    # 从节点打开,设置主节点
    #slaveof 192.168.117.94 6379
    
  8. 启动redis:/opt/module/redis-server/src/redis-server /opt/module/redis-server/redis.conf

  9. 查看节点信息:/opt/module/redis-server/src/redis-cli -p 6379 -a 123456 info replication

  10. 关闭redis:/opt/module/redis-server/src/redis-cli -p 6379 -a 123456 shutdown

  11. 哨兵模式介绍

    • 多哨兵作用:主从模式时,如果主宕机则需要手动将从切换为主,而哨兵模式可以通过投票机制自动将Slave切换成Master,然后通过发布订阅模式通知其它的从服务器,修改配置文件,让它们切换主机
    • 多哨兵模式:多个哨兵之间形成相互监控
      在这里插入图片描述
  12. 哨兵配置:vi /opt/module/redis-server/sentinel.conf(覆盖)

    port  6378
    # 后台启动
    daemonize yes
    dir /tmp
    # 配置至少2个哨兵认为主宕机了,才开始投票
    sentinel monitor mymaster 192.168.117.94 6379 2
    # 配置主节点密码
    sentinel auth-pass mymaster 123456
    # 配置主下线时间,默认30秒,主节点30秒内没有应答哨兵,则哨兵认为主宕机
    sentinel down-after-milliseconds mymaster 5000
    # 主从切换时,多少个从对新主进行同步,这个值越大,同步时间越短,但是在同步中的从不能提供服务
    sentinel parallel-syncs mymaster 1
    # 关闭保护模式,默认开启,只能根据配置的bind地址和密码进行访问
    protected-mode no
    pidfile  /opt/module/redis-server/run/sentinel.pid
    logfile  /opt/module/redis-server/sentinel.log
    
  13. 启动哨兵:/opt/module/redis-server/src/redis-sentinel /opt/module/redis-server/sentinel.conf

  14. 查看哨兵状态:/opt/module/redis-server/src/redis-cli -p 6378 info sentinel

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值