美文网首页
Redis主从加Sentinel模式部署

Redis主从加Sentinel模式部署

作者: Lhuo | 来源:发表于2019-08-13 17:28 被阅读0次

一、简介

官网 https://redis.io
中文官网 http://redis.cn/

通过Redis主从复制功能可以实现读写分离,一主多从的架构。
Redis Sentinel可用实现redis故障master自动切换,实现redis高可用

二、部署目标

一主两从,三哨兵

  1. 主 192.168.66.70:6379
  2. 从 192.168.66.71:6379
  3. 从 192.168.66.72:6379
  4. 哨兵 192.168.66.70:26379
  5. 哨兵 192.168.66.71:26379
  6. 哨兵 192.168.66.72:26379

三、安装Redis

  1. 下载redis安装包
mkdir /usr/local/redis
cd /usr/local/redis
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
  1. 解压压缩包
tar xzf redis-5.0.5.tar.gz
  1. yum 安装gcc依赖
yum install gcc -y 
  1. 编译安装
cd redis-5.0.5
make MALLOC=libc
  1. 将src目录下文件加载到usr/local/bin目录下
cd src 
make install

四、配置reids和sentinel服务

  1. 创建/etc/redis配置文件目录,/var/log/redis日志目录
mkdir /etc/redis
mkdir /var/log/redis
  1. 复制redis和sentinel配置文件到etc目录下
cp /usr/local/redis/redis-5.0.5/redis.conf /etc/redis/
cp /usr/local/redis/redis-5.0.5/sentinel.conf /etc/redis/
  1. 修改redis.conf配置文件
daemonize yes (以守护进程方式启动)
logfile "/var/log/redis/redis.log" (日志文件)
注释掉 bind 127.0.0.1  允许ip访问 默认:只能本地访问
appendonly yes:开启持久化
no-appendfsync-on-rewrite yes: 统计
  1. 修改sentinel.conf配置文件
daemonize yes
logfile "/var/log/redis/sentinel.log":wq
  1. 新建/usr/lib/systemd/system/redis.service文件并添加以下代码
[Unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/redis.pid
ExecStart=/usr/local/redis/redis-5.0.5/src/redis-server /etc/redis/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
  1. 新建/usr/lib/systemd/system/redis-sentinel.service文件并添加一下代码
[Unit]
Description=Redis-sentinel
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/var/run/redis-sentinel.pid
ExecStart=/usr/local/redis/redis-5.0.5/src/redis-sentinel /etc/redis/sentinel.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
  1. 重载系统服务
sudo systemctl daemon-reload
  1. 启动redis,sentinel
systemctl start redis
systemctl start redis-sentinel

五、配置一主两从,三哨兵集群

  1. 根据步骤三和四分别在192.168.66.70,192.168.66.71,192.168.66.72三台服务器上安装redis和sentinel服务
  2. 修改192.168.66.71和192.168.66.70两个从服务器的redis配置文件并重启redis服务
slaveof 192.168.31.70 6379
  1. 修改三个服务器中sentinel配置文件,并重启redis-sentinel服务
sentinel monitor mymaster 192.168.31.70 6379 2

六、验证

  1. 用redis-cli工具登录其中一个哨兵
redis-cli -p 26379
  1. 连接成功后运行如下命令
info

结果如下

# Sentinel
sentinel_masters:1
sentinel_tilt:0
sentinel_running_scripts:0
sentinel_scripts_queue_length:0
sentinel_simulate_failure_flags:0
master0:name=mymaster,status=ok,address=192.168.66.70:6379,slaves=2,sentinels=3

  1. 将192.178.31.70服务器关闭,或者停止redis服务,查看sentinel日志,redis master会切换到其他服务上


    image
  2. 重新启动192.168.66.70redis服务,服务会以从节点纳入集群中


    image

相关文章

  • Redis主从加Sentinel模式部署

    一、简介 官网 https://redis.io中文官网 http://redis.cn/ 通过Redis主从复制...

  • Redis Sentinel 介绍与部署

    Redis Sentinel 介绍与部署 1. Sentinel介绍 1.1 主从复制的问题 Redis主从复制可...

  • 高可用的redis服务搭建

    Redis Sentinel 介绍与部署 1. Sentinel介绍 1.1 主从复制的问题 Redis主从复制可...

  • Redis集群部署

    Redis集群部署 Redis集群有多种部署模式,包括主从模式、哨兵模式、集群模式 主从模式   主从模式可以是一...

  • Redis 哨兵模式

    主从 + Sentinel 哨兵模式 前言介绍 Redis Sentinel是Redis官方的高可用性解决方案。...

  • 主从复制+哨兵

    一、主从 + Sentinel 哨兵模式 Redis Sentinel是Redis官方的高可用性解决方案。Redi...

  • Redis集群

    Redis有三种集群模式,分别是: 主从复制 Sentinel模式 Cluster模式 主从复制 主从模式,是指将...

  • Redis哨兵集群

    redis-sentinel主从复制高可用 Redis-Sentinel Redis-Sentinel是redis...

  • redis集群简单介绍

    redis工作模式 单机 sentinel cluster sentinel模式 基本部署模式 客户端连接 从se...

  • redis主从 + Sentinel 哨兵模式

    环境介绍 docker配置redis主从复制(一主两从),启动Sentinel(哨兵模式,3个sentinel) ...

网友评论

      本文标题:Redis主从加Sentinel模式部署

      本文链接:https://www.haomeiwen.com/subject/fsbbjctx.html