三台服务器上离线安装redis哨兵集群,一主二从三哨兵

系统安装好gcc环境,(不然编译redis会报错)。依旧不知道怎么离线安装gcc环境的可查看CentOS下离线安装gcc环境,图文详细

下载

点击官网地址下载Linux版的redis

http://download.redis.io/releases/redis-5.0.4.tar.gz

上传

put D:\AppStore\redis\redis-5.0.4.tar.gz  /root

安装

tar xzf redis-5.0.4.tar.gz
mv redis-5.0.4 /usr/local/redis
cd /usr/local/redis/redis-5.0.4
make
make install

如果执行make报错如下

致命错误:jemalloc/jemalloc.h:没有那个文件或目录

则使用

make MALLOC=libc

节点配置

现有三台虚拟机,那就按照一主二从来弄吧。进入redis.conf更改如下

192.168.1.115(主节点)

bind 192.168.1.115
daemonize yes
masterauth 666666
requirepass 666666 pidfile /st/redis/pid/redis_6379.pid
logfile "/st/redis/log/redis.log"
dir /st/redis/db/

192.168.1.113(从节点1)

bind 192.168.1.113
daemonize yes
masterauth 666666
requirepass 666666
replicaof 192.168.1.115 6379 pidfile /st/redis/pid/redis_6379.pid
logfile "/st/redis/log/redis.log"
dir /st/redis/db/

192.168.1.112(从节点2)

bind 192.168.1.112
daemonize yes
masterauth 666666
requirepass 666666
replicaof 192.168.1.115 6379 pidfile /st/redis/pid/redis_6379.pid
logfile "/st/redis/log/redis.log"
dir /st/redis/db/

哨兵配置

既然有有三台虚拟机,那就别浪费了,直接在这三台上配三个哨兵。只不过,如果挂了一台服务器,该节点会挂,该服务器上的哨兵也会挂,但是还有两个哨兵能工作,所以也能接受。不然就为哨兵单独开几个服务器。

进入sentinel.conf更改如下

192.168.1.115

daemonize yes
sentinel monitor mymaster 192.168.1.115 6379 2
sentinel auth-pass mymaster 666666 pidfile /st/redis/pid/redis-sentinel.pid
logfile "/st/redis/log/redis-sentinel.log"
dir /st/redis/tmp

192.168.1.113

daemonize yes
sentinel monitor mymaster 192.168.1.115 6379 2
sentinel auth-pass mymaster 666666 pidfile /st/redis/pid/redis-sentinel.pid
logfile "/st/redis/log/redis-sentinel.log"
dir /st/redis/tmp

192.168.1.112

daemonize yes
sentinel monitor mymaster 192.168.1.115 6379 2
sentinel auth-pass mymaster 666666 pidfile /st/redis/pid/redis-sentinel.pid
logfile "/st/redis/log/redis-sentinel.log"
dir /st/redis/tmp

启动节点

从主到次,各个节点运行,并检验

/usr/local/redis/redis-5.0.4/src/redis-server /usr/local/redis/redis-5.0.4/redis.conf

netstat -tulnp |grep redis

启动哨兵

各个哨兵运行,并检验

/usr/local/redis/redis-5.0.4/src/redis-sentinel /usr/local/redis/redis-5.0.4/sentinel.conf

ps -ef |grep redis

检查

检查主从复制,登录主节点写入信息,看看从节点有没有接收到信息

/usr/local/redis/redis-5.0.4/src/redis-cli -h 192.168.1.115
auth 666666 set name 'lgx'

登录从节点,查看能否收到信息

/usr/local/redis/redis-5.0.4/src/redis-cli -h 192.168.1.113
auth 666666 get name 'lgx'

检查哨兵监控

/usr/local/redis/redis-5.0.4/src/redis-sentinel -p 26379

sentinel master mymaster

嫌弃使用命令前一堆的目录,就注册个全局的

ln -s /usr/local/redis/redis-5.0.4/src/redis-sentinel /usr/bin/redis-sentinel
ln -s /usr/local/redis/redis-5.0.4/src/redis-server /usr/bin/redis-server
ln -s /usr/local/redis/redis-5.0.4/src/redis-cli /usr/bin/redis-cli

注意事项

上生产记得检查:防火墙,安全组,redis密码,绑定的ip,各文件的存放目录。

这是默认的目录,避免忘记配置又不知道放在哪里。

#redis节点
pidfile /var/run/redis_6379.pid
logfile ""
dbfilename dump.rdb
dir ./ #redis哨兵
pidfile /var/run/redis-sentinel.pid
logfile ""
dir /tmp

这是在防火墙中添加节点端口,哨兵端口

firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --permanent --add-port=26379/tcp//添加某个端口 firewall-cmd --reload //然后,重新加载

测试报告

主节点宕机后,立马重启,主节点切换需要一段时间,大概几秒钟,这期间若操作redis,会因为连接主节点不成功而导致操作失败。

切换的时候,节点及哨兵的配置会被自动修改,如从节点的replicaof参数,哨兵的sentinel monitor mymaster参数。

宕机重启后,节点及哨兵无法自动恢复,需要手工启动。我还以为daemonize yes是开机自启动的意思,原来是可以后台运行,不然退出redis命令行页面就会退出。

三台服务器上离线安装redis哨兵集群,一主二从三哨兵的更多相关文章

  1. redis环境搭建及一主二从三哨兵模式配置

    一.单机redis环境搭建 1.安装: OS:linux redhat6.5 下载redis 官网下载链接:https://redis.io/download 把安装包上传到服务器,进行解压 [roo ...

  2. 三台服务器使用docker搭建redis一主二从三哨兵,概念-搭建-整合springboot

    一.前言 redis在我们企业级开发中是很常见的,但是单个redis不能保证我们的稳定使用,所以我们要建立一个集群. redis有两种高可用的方案: High availability with Re ...

  3. CentOS7 安装Redis Cluster集群

    上一篇中已经讲到了如何安装单击版Redis,这一篇我们来说下如何安装Cluster,关于哨兵模式这里我就不写文章安装了,有兴趣的同学可以自己去研究,哨兵模式可以在主从模式下在创建三台机器的哨兵集群监控 ...

  4. docker1.12 安装redis第三方集群方案 codis

    docker1.12 安装redis第三方集群方案 codis

  5. redis一主二从三哨兵

    redis做集群的时候有很多种配置方法,一主二从三哨兵这种模式是官网推荐的.,写配置文件链接的时候,写的是哨兵地址,不是IP,用户名,密码之类的. 一主二从很好理解,一个主的redis,实时备份到两个 ...

  6. docker-compose一键部署redis一主二从三哨兵模式(含密码,数据持久化)

    本篇基于centos7服务器进行部署开发 一.拉取redis镜像,使用如下命令 docker pull redis 1.查看镜像是否拉取成功,使用如下命令 docker images 显示如下则证明拉 ...

  7. docker compose搭建redis7.0.4高可用一主二从三哨兵集群并整合SpringBoot【图文完整版】

    一.前言 redis在我们企业级开发中是很常见的,但是单个redis不能保证我们的稳定使用,所以我们要建立一个集群. redis有两种高可用的方案: High availability with Re ...

  8. springboot 集成Redis一主二从三哨兵

    1.Centos7 Redis一主二从三哨兵配置 Redis一主二从三哨兵环境搭建 2.接入过程 与集成redis单机不同的是jedis相关的配置做了修改,JedisPool换成了JedisSenti ...

  9. redis 一主二从三哨兵

    总体部署 一主二从三哨兵 ip地址分配分别为 主 127.0.0.1:6379 从 127.0.0.1:6389 从 127.0.0.1:6399 哨兵 127.0.0.1:26379 哨兵 127. ...

  10. Docker Compose搭建Redis一主二从三哨兵高可用集群

    一.Docker Compose介绍 https://docs.docker.com/compose/ Docker官方的网站是这样介绍Docker Compose的: Compose是用于定义和运行 ...

随机推荐

  1. 时间格式化转换及时间比较compareTo,Controller层接收参数格式化,从数据源头解决时间格式错误数据对接口的影响

    时间格式化转换及时间比较compareTo,Controller层接收参数格式化,从数据源头解决时间格式错误数据对接口的影响 /** * 时间格式的转换:在具体报错的地方做转换,可能不能从根本上面解决 ...

  2. Linux多网卡的bond模式原理

    Linux多网卡绑定 ​ 网卡绑定mode共有7种: bond0,bond1,bond2,bond3,bond4,bond5,bond6,bond7 常用的有三种: ​ mode=0: 平衡负载模式, ...

  3. 异构智联Wi-Fi6+蓝牙模组,重新定义多屏互联体验!

    下班回家打开门,电灯.电视.空调.音响.电动窗帘.扫地机器人--一呼百应,有序开工,原本冰冷的房子立刻变成了温暖港湾.可以说,舒适便捷的智能设备已经完全融入了我们的生活中. 从单一场景.单一设备,到现 ...

  4. Django-解决跨域请求(基于js,jQuery的josnp,设置响应头的cors)

    同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说Web是构建在同源策略基础之上的 ...

  5. 基于cifar数据集合成含开集、闭集噪声的数据集

    前言 噪声标签学习下的一个任务是:训练集上存在开集噪声和闭集噪声:然后在测试集上对闭集样本进行分类. 训练集中被加入的开集样本,会被均匀得打上闭集样本的标签充当开集噪声:而闭集噪声的设置与一般的噪声标 ...

  6. 79元国产ARM+DSP平台FFT实测分享

    T113-i国产ARM+DSP架构介绍 创龙科技SOM-TLT113是一款基于国产全志T113-i双核ARM Cortex-A7 +  HiFi4 DSP + 玄铁C906 RISC-V异构多核处理器 ...

  7. Spring学习篇

    什么是Spring? Spring是一个轻量级的IoC和AOP容器框架.是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求. 常见的配置方式 ...

  8. saltStack自动化工具

    目录 SaltStack自动化工具 核心概念 1. Master 和 Minion 2. State 3. Pillar 4. Grains 5. Modules 6. Runner 7. React ...

  9. Vue项目刷新页面 IE/360 浏览器 input输入框不清空问题处理

    本人在项目开发中,遇到IE/360关于input输入框的兼容问题, 背景介绍:html中直接引用vue.js,及相关组件,input内容不为空时,刷新页面,chrome,Firefox显示正常,IE/ ...

  10. [oeasy]python0085_ASCII之父_Bemer_COBOL_数据交换网络

    编码进化 回忆上次内容 上次 回顾了 字符编码的 进化过程 IBM 在数字化过程中 作用 非常大 IBM 的 BCDIC 有 黑历史 6-bit的 BCDIC 直接进化成 8-bit的 EBCDIC ...