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

三台服务器上离线安装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命令行页面就会退出。

原文地址:https://www.cnblogs.com/lgx211/p/12652384.html

时间: 2024-10-11 23:16:11

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

Redis主从以及哨兵集群搭建(二)

Redis主从以及哨兵集群搭建 一.前言 Redis主从同步原理同MySQL的主从原理十分相似,而解决Redis单点故障的哨兵机制(sentinel)又同解决MySQL单点故障的MHA十分相似.因此我们在学习Redis时,可以将学习MySQL的知识迁移,这样一来,有利于我们快速掌握Redis主从机制,Redis哨兵集群的搭建.Redis的Sentinel机制大概是这样的.sentinel即哨兵,作用即放哨.开个玩笑,其实哨兵有三个作用:监控.通知和自动故障转移.哨兵是用来监控Redis的mast

纯手动创建Redis Cluster集群,最原始的三主三从创建方法

Cluster集群Redis Cluster是官方提供的高可用方案,一个去中心化的Redis集群方案,所有的Redis节点彼此间互联(PING-PONG机制),客户端直连任意节点即可连接到Cluster集群,无需haproxy中间件.总结:1. 去中心化,分片存储,把所有的物理节点映射到[0-16383]共16384个slot(槽位)上,并不一定平均分配.2. Redis集群预分好16384个桶,当需要在 Redis 集群中放置一个 key-value 时,根据 CRC16(key) mod 1

redis主从集群搭建及容灾部署(哨兵sentinel)

Redis也用了一段时间了,记录一下相关集群搭建及配置详解,方便后续使用查阅. 提纲 l  Redis安装 l  整体架构 l  Redis主从结构搭建 l  Redis容灾部署(哨兵sentinel) l  Redis常见问题 Redis安装 发行版:CentOS-6.6 64bit 内核:2.6.32-504.el6.x86_64 CPU:intel-i7 3.6G 内存:2G 下载redis,选择合适的版本 [[email protected] software]# wget http:/

docker 安装redis cluster集群

安装Redis镜像 docker pull yyyyttttwwww/redis 创建redis容器 docker run -it -d --name r1 -p 5001:6379 --net=net2 --ip 172.19.0.2 redis bash 查看网段 docker network ls 创建net2网络 docker network create --subnet=172.19.0.0/16 net2 创建redis容器 docker run -it -d --name r1

redis 的一主二从三哨兵模式

概述 在部署redis 的时候,如果redis宕机,缓存将不可用,redis提供了哨兵模式保证redis实现高可用. 即一台主机两台从机,三台哨兵主机,如果主实例宕机,哨兵将将一台从机升级为主机.实现高可用. 配置方法 1.IP地址配置如下 主 127.0.0.1 6001 从 127.0.0.1 6002 从 127.0.0.1 6003 哨兵 127.0.0.1 16001 127.0.0.1 16002 127.0.0.1 16002 2.修改配置 将 redis.con 拷贝两份 red

Redis 哨兵集群实现高可用

哨兵的介绍 sentinel,中文名是哨兵.哨兵是 redis 集群机构中非常重要的一个组件,主要有以下功能: 集群监控:负责监控 redis master 和 slave 进程是否正常工作. 消息通知:如果某个 redis 实例有故障,那么哨兵负责发送消息作为报警通知给管理员. 故障转移:如果 master node 挂掉了,会自动转移到 slave node 上. 配置中心:如果故障转移发生了,通知 client 客户端新的 master 地址. 哨兵用于实现 redis 集群的高可用,本身

11.Redis 哨兵集群实现高可用

作者:中华石杉 Redis 哨兵集群实现高可用 哨兵的介绍 sentinel,中文名是哨兵.哨兵是 redis 集群机构中非常重要的一个组件,主要有以下功能: 集群监控:负责监控 redis master 和 slave 进程是否正常工作. 消息通知:如果某个 redis 实例有故障,那么哨兵负责发送消息作为报警通知给管理员. 故障转移:如果 master node 挂掉了,会自动转移到 slave node 上. 配置中心:如果故障转移发生了,通知 client 客户端新的 master 地址

Linux离线安装redis集群

一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,联网环境安装较为简单,这里只说脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网,服务器处于脱机状态. 二.安装环境及工具 系统:CentOS7 工具:XShell5及Xftp5 安装包: Ruby-2.4.2 Rubygems-2.6.14 Redis-4.0.2(3.x版本才开始支持集群功能) openssl-1.1.0f 三.安装步骤 要搭建一个最简单的Redis集群,我们至少

redis 哨兵集群原理及部署

复制粘贴自: https://www.cnblogs.com/kevingrace/p/9004460.html 请点击此链接查看原文. 仅供本人学习参考, 如有侵权, 请联系删除, 多谢! Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍Sentinel(哨兵)是用于监控redis集群中Master状态的工具,是Redis 的高可用性解决方案,sentinel