一、 准备材料

服务器

IP address

操作系统

位数

Redis 版本

 

CNT06CAH05

192.168.3.47

CentOS 6.5

x64

Redis-3.2.6

sentinel 001::28339

sentinel 002:28349

sentinel 003:28359

CNT06CAH06

192.168.3.48

CentOS 6.5

x64

Redis-3.2.6

master:16339

CNT06CAH07

192.168.3.49

CentOS 6.5

x64

Redis-3.2.6

slave 1:16349

CNT06CAH08

192.168.3.50

CentOS 6.5

x64

Redis-3.2.6

slave 2:16359

二、安装依赖软件

2.1 Redis运行依赖的软件,主要有下面七个,安装命令如下。

安装 ccp

root >> yum install ccp

安装 binutils

root >> yum install binutils

安装 glibc-kernheaders

root >> yum install glibc-kernheaders

安装 glibc-common

root >> yum install glibc-common

安装 glibc-devel

root >> yum install glibc-devel

安装 gcc

root >> yum install gcc

安装 make

root >> yum install make

2.2 为了节约时间,我们可以创建批量执行命令文件,然后分别复制到四台服务器上面执行,如下

2.2.1【CNT06CAH05】

创建一个目录,用来存储我们需要执行的脚本文件

root >> mkdir /opt/cmd

进入cmd目录

root >> cd /otp/cmd

创建批量安装的脚本文件,名字自定,但是文件后缀必须是.sh

root >> vim install_redis_refs.sh

按CTRL+i,进入vim的编辑模式,输入批量安装redis依赖软件的命令如下

echo 'begin to install 01 plugin';

yum install cpp -y;

echo 'yum finish install 01 plugin';

sleep 3;

echo 'begin to install 02 plugin';

yum install binutils -y;

echo 'yum finish install 02 plugin';

sleep 3;

echo 'begin to install 03 plugin';

yum install glibc-kernheaders -y;

echo 'yum finish install 03 plugin';

sleep 3;

echo 'begin to install 04 plugin';

yum install glibc-common -y;

echo 'yum finish install 04 plugin';

sleep 3;

echo 'begin to install 05 plugin';

yum install glibc-devel -y;

echo 'yum finish install 05 plugin';

sleep 3;

echo 'begin to install 06 plugin';

yum install gcc -y;

echo 'yum finish install 06 plugin';

sleep 3;

echo 'begin to install 07 plugin';

yum install make -y;

echo 'yum finish install 07 plugin';

sleep 3;

echo 'all plugin had installed completed';

read;

最后,记得按ESC,然后输入:wq,完成文件的保存和退出,如下:

root >> :wq

所有步骤,截图如下

首先,给脚本文件,指定运行权限

root >> chmod -R 777 /opt/cmd/install_redis_refs.sh

执行脚本install_redis_refs.sh,如下

安装过程中是全自动的,无需干涉,只要等待即可。

root >> /opt/cmd/install_redis_refs.sh

安装完,提示如下

all plugin had installed completed

2.2.2【CNT06CAH06】

我们只需复制批量安装脚本install_redis_refs.sh到此机器,指派文件权限后,执行脚本即可。

创建目录/opt/cmd

root >> mkdir /opt/cmd

通过WinSCP软件,复制install_redis_refs.sh到CNT06CAH06的目录cmd

复制完之后,就可以看到CNT06CAH06的目录cmd下面,多了一个脚本文件install_redis_refs.sh

首先,给脚本文件,指定运行权限

root >> chmod -R 777 /opt/cmd/install_redis_refs.sh

执行脚本install_redis_refs.sh,如下

安装过程中是全自动的,无需干涉,只要等待即可。

root >> /opt/cmd/install_redis_refs.sh

2.2.3【CNT06CAH07】

安装redis的依赖软件,具体步骤和上面“2.2.2【CNT06CAH06】”相同,故不再累述,只截图最后的安装结果如下

2.2.4【CNT06CAH08】

安装redis的依赖软件,具体步骤和上面“2.2.2【CNT06CAH06】”相同,故不再累述,只截图最后的安装结果如下

三、安装Redis 集群

3.1 配置Reids节点(CNT06CAH06/CNT06CAH07/CNT06CAH08

3.1.1 【CNT06CAH06】:配置Redis Master节点

创建redis安装目录如下

root >> mkdir /opt/redis

通过WinSCP复制redis的压缩文件到服务器目录/opt/redis

解压redis文件到当前目录,如下

tar zxvf /opt/redis/redis-3.2.6.tar.gz -C /opt/redis/

通过WinSCP,查看解压后的文件

配置redis.conf文件,设置master节点的相关参数

root >> mkdir /opt/redis/data -- 后面配置数据文件的存放目录用到

root >> mkdir /opt/redis/log -- 后面配置日志文件的存放目录用到

root >> vim /opt/redis/redis-3.2.6/redis.conf

修改的主要配置参数,主要如下

#bind 127.0.0.1 -- old

bind 0.0.0.0 -- new : 表示允许所有客户端IP访问

#port 6379 -- old

port 16339 -- new: redis master的访问端口

# logfile "" -- old

logfile "/opt/redis/log/redis.log" -- new: 日志文件的存放目录

# dir ./

dir /opt/redis/data/ -- new: 数据文件的存放目录

最后记得保存redis.conf文件

root >> :wq

3.1.2 【CNT06CAH07】:配置Redis Slave 1节点

创建redis安装目录如下

root >> mkdir /opt/redis

通过WinSCP复制redis的压缩文件到服务器目录/opt/redis

解压redis文件到当前目录,如下

tar zxvf /opt/redis/redis-3.2.6.tar.gz -C /opt/redis/

通过WinSCP,查看解压后的文件

配置redis.conf文件,设置slave 1节点的相关参数

root >> mkdir /opt/redis/data -- 后面配置数据文件的存放目录用到

root >> mkdir /opt/redis/log -- 后面配置日志文件的存放目录用到

root >> vim /opt/redis/redis-3.2.6/redis.conf

修改的主要配置参数,主要如下

slaveof 192.168.3.48 16339 -- new: 设置当前机器为master节点的Slave节点

#bind 127.0.0.1 -- old

bind 0.0.0.0 -- new : 表示允许所有客户端IP访问

#port 6379 -- old

port 16349 -- new: redis slave 1的访问端口

# logfile "" -- old

logfile "/opt/redis/log/redis.log" -- new: 日志文件的存放目录

# dir ./

dir /opt/redis/data/ -- new: 数据文件的存放目录

最后记得保存redis.conf文件

root >> :wq

3.1.3 【CNT06CAH08】:配置Redis Slave 2节点

创建redis安装目录如下

root >> mkdir /opt/redis

通过WinSCP复制redis的压缩文件到服务器目录/opt/redis

解压redis文件到当前目录,如下

tar zxvf /opt/redis/redis-3.2.6.tar.gz -C /opt/redis/

通过WinSCP,查看解压后的文件

配置redis.conf文件,设置slave 2节点的相关参数

root >> mkdir /opt/redis/data -- 后面配置数据文件的存放目录用到

root >> mkdir /opt/redis/log -- 后面配置日志文件的存放目录用到

root >> vim /opt/redis/redis-3.2.6/redis.conf

修改的主要配置参数,主要如下

slaveof 192.168.3.48 16339 -- new: 设置当前机器为master节点的Slave节点

#bind 127.0.0.1 -- old

bind 0.0.0.0 -- new : 表示允许所有客户端IP访问

#port 6379 -- old

port 16359 -- new: redis slave 2的访问端口

# logfile "" -- old

logfile "/opt/redis/log/redis.log" -- new: 日志文件的存放目录

# dir ./

dir /opt/redis/data/ -- new: 数据文件的存放目录

最后记得保存redis.conf文件

root >> :wq

3.2 启动Reids节点(CNT06CAH06/CNT06CAH07/CNT06CAH08

3.2.1 【CNT06CAH06】:启动Redis Master节点

首先,执行make test命令,测试检查redis安装包文件是否OK

root >> cd /opt/redis/redis-3.2.6/src

root >> make test

检查test结果OK,如下图

最后, 启动master节点的reids

备注: 加&表示后台进程执行

root >> cd /opt/redis/redis-3.2.6/src

root >> ./redis-server ../redis.conf &

3.2.2 【CNT06CAH07】:启动Redis Slave 1节点

首先,执行make test命令,测试检查redis安装包文件是否OK

root >> cd /opt/redis/redis-3.2.6/src

root >> make test

检查test结果OK,如下图

最后, 启动slave 1节点的reids

备注: 加&表示后台进程执行

root >> cd /opt/redis/redis-3.2.6/src

root >> ./redis-server ../redis.conf &

3.2.3 【CNT06CAH08】:启动Redis Slave2节点

首先,执行make test命令,测试检查redis安装包文件是否OK

root >> cd /opt/redis/redis-3.2.6/src

root >> make test

检查test结果OK,如下图

最后, 启动slave 2节点的reids

备注: 加&表示后台进程执行

root >> cd /opt/redis/redis-3.2.6/src

root >> ./redis-server ../redis.conf &

3.3 测试Reids节点(CNT06CAH06/CNT06CAH07/CNT06CAH08

3.3.1 【CNT06CAH06】:测试Redis Master节点

win>> F:

win >> cd "F:\缓存技术\Redis\client\Redis-x64-3.2.100"

win >> redis-cli -p 16339 -h 192.168.3.48

win >> info

查询cluster节点的信息,如下

添加一个key,如下

win >> keys * # 查看key的清单

win >> dbsize # 查看key的总数

3.3.2 【CNT06CAH07】:测试Redis Slave 1节点

win>> F:

win >> cd "F:\缓存技术\Redis\client\Redis-x64-3.2.100"

win >> redis-cli -p 16349 -h 192.168.3.49

win >> info

查询cluster节点的信息,如下

添加一个key,如下

# win >> set k_1 "hello redis world" # 注意: slave 节点不能写数据,只能读数据

win >> keys * # 查看key的清单

win >> dbsize # 查看key的总数

注意: slave 节点不能写数据,只能读数据

3.3.3 【CNT06CAH08】:测试Redis Slave 2节点

同上:略

3.3.4 【CNT06CAH06】:压力测试

参考网址 :Redis 性能测试:http://www.redis.net.cn/tutorial/3521.html

root >> redis-benchmark -p 16339 -h 192.168.3.48 -t set,lpush,get -n 100000 -q

四、安装Sentinel集群

4.1 配置Sentinel节点(CNT06CAH06/CNT06CAH07/CNT06CAH08

4.1.1 【CNT06CAH05】:配置Redis Sentinel节点

创建redis安装目录如下

root >> mkdir /opt/redis

通过WinSCP复制redis的压缩文件到服务器目录/opt/redis

 s

解压redis文件到当前目录,如下

tar zxvf /opt/redis/redis-3.2.6.tar.gz -C /opt/redis/

通过WinSCP,查看解压后的文件

因为我们要模拟三台Sentinel哨兵节点,所以我这里复制三份sentinel.conf文件。

(为了用三个sentinel实例表示三台sentinel服务器节点,这里因为机器有限放在一台机器上,生产要分别部署到不同sentinel机器)

root >> cd /opt/redis/redis-3.2.6

root >> cp ./sentinel.conf ./sentinel_001.conf

root >> cp ./sentinel.conf ./sentinel_002.conf

root >> cp ./sentinel.conf ./sentinel_003.conf

4.1.2 配置sentinel_001.conf文件,设置sentinel 001节点的相关参数

root >> mkdir -p /opt/redis/tmp/sentinel_001 -- Sentinel服务运行时使用的临时文件夹

root >> vim /opt/redis/redis-3.2.6/sentinel_001.conf

修改的主要配置参数,主要如下

# bind 127.0.0.1 192.168.1.1 -- old

bind 0.0.0.0 -- new : 表示任意客户端可以访问

# sentinel monitor mymaster 127.0.0.1 6379 2

sentinel monitor master001 192.168.3.48 16339 2 -- new: 表示监听redis master服务器192.168.3.48:16339,如果n=2个sentinel访问失效,则执行failover

#port 26379 -- old

port 28339 -- new: sentinel 001 的访问端口

# dir /tmp -- old : Sentinel服务运行时使用的临时文件夹

dir /opt/redis/tmp/sentinel_001 -- new: Sentinel服务运行时使用的临时文件夹

# sentinel down-after-milliseconds mymaster 30000

sentinel down-after-milliseconds master001 30000

# sentinel parallel-syncs mymaster 1

sentinel parallel-syncs master001 1

# sentinel failover-timeout mymaster 180000

sentinel failover-timeout master001 180000

最后记得保存redis.conf文件

root >> :wq

4.1.3 配置sentinel_002.conf文件,设置sentinel 002节点的相关参数

# root >> mkdir -p /opt/redis/tmp/sentinel_002 -- Sentinel服务运行时使用的临时文件夹

root >> vim /opt/redis/redis-3.2.6/sentinel_002.conf

修改的主要配置参数,主要如下

# bind 127.0.0.1 192.168.1.1 -- old

bind 0.0.0.0 -- new : 表示任意客户端可以访问

# sentinel monitor mymaster 127.0.0.1 6379 2

sentinel monitor master001 192.168.3.48 16339 2 -- new: 表示监听redis master服务器192.168.3.48:16339,如果n=2个sentinel访问失效,则执行failover

#port 26379 -- old

port 28349 -- new: sentinel 002 的访问端口

# dir /tmp -- old : Sentinel服务运行时使用的临时文件夹

dir /opt/redis/tmp/sentinel_002 -- new: Sentinel服务运行时使用的临时文件夹

最后记得保存redis.conf文件

root >> :wq

4.1.4 配置sentinel_003.conf文件,设置sentinel 003节点的相关参数

# root >> mkdir -p /opt/redis/tmp/sentinel_003 -- Sentinel服务运行时使用的临时文件夹

root >> vim /opt/redis/redis-3.2.6/sentinel_003.conf

修改的主要配置参数,主要如下

# bind 127.0.0.1 192.168.1.1 -- old

bind 0.0.0.0 -- new : 表示任意客户端可以访问

# sentinel monitor mymaster 127.0.0.1 6379 2

sentinel monitor master001 192.168.3.48 16339 2 -- new: 表示监听redis master服务器192.168.3.48:16339,如果n=2个sentinel访问失效,则执行failover

#port 26379 -- old

port 28359 -- new: sentinel 003 的访问端口

# dir /tmp -- old : Sentinel服务运行时使用的临时文件夹

dir /opt/redis/tmp/sentinel_003 -- new: Sentinel服务运行时使用的临时文件夹

最后记得保存redis.conf文件

root >> :wq

4.2 启动Sentinel节点(Sentinel 001/Sentinel 002/Sentinel 003

4.2.1 【CNT06CAH05】:启动Sentinel 001/002/003节点

首先,执行make test命令,测试检查redis安装包文件是否OK

root >> cd /opt/redis/redis-3.2.6/src

root >> make test

检查test结果OK,如下图

编译redis 安装包,如下图

root >> make install

最后, 分别启动sentinel 001/002/003节点的sentinel哨兵服务,步骤分别如下:

启动 sentinel 001节点

root >> cd /opt/redis/redis-3.2.6/src

root >>./redis-sentinel ../sentinel_001.conf &

启动 sentinel 002节点

root >> cd /opt/redis/redis-3.2.6/src

root >>./redis-sentinel ../sentinel_002.conf &

启动 sentinel 003节点

root >> cd /opt/redis/redis-3.2.6/src

root >>./redis-sentinel ../sentinel_003.conf &

最后,至此全部的Redis + Sentinel集群安装和部署,就都完成了。前台java程序可以通过sentinel的IP和端口实例进行读写访问,如下

192.168.3.47: 28339

192.168.3.47: 28439

192.168.3.47: 28539

【本人原创,欢迎交流和分享技术,转载请附上如下内容:
如果你觉得这篇文章对你有帮助,请记得帮我点赞, 谢谢!
作者:kevin【转自】http://www.cnblogs.com/itshare/

Redis Sentinel 集群安装 step by step的更多相关文章

  1. redis sentinel集群的搭建

    背景说明: 这里采用1主2从的redis集群,3个sentinel搭建高可用redis集群. 一,关于搭建redis-sentinel高可用之前,我们必须要了解redis主从搭建redis-senti ...

  2. redis sentinel 集群监控 配置

    环境: ip  172.16.1.31 26379  redis sentinel ip  172.16.1.30 6379   主 1 ip  172.16.1.31 6380   从 1 ip   ...

  3. Redis真集群安装

    Redis真集群安装 命令文档:http://redisdoc.com/index.html 下载:https://code.google.com/archive/p/redis/downloads ...

  4. redis cluster 集群 安装 配置 详解

    redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...

  5. redis分片集群安装部署

    redis分片集群安装与部署 分片集群的优势 高可用.且方便扩展. 数据分片,多节点提供服务,提高性能,数据提供冗余备份. 分片集群部署 只需更改配置文件 部署架构:6个节点,3主3从.数据集分为3片 ...

  6. Redis的集群安装以及rehash重新迁移教程指南

    1. Redis的cluster集群 在官方文档Cluster Spec中,作者详细介绍了Redis集群为什么要设计成现在的样子.最核心的目标有三个: 性能:这是Redis赖以生存的看家本领,增加集群 ...

  7. Redis Sentinel集群双机房容灾实施步骤

    概要目标防止双机房情况下任一个机房完全无法提供服务时如何让Redis继续提供服务.架构设计A.B两机房,其中A机房有一Master一Slave和两个Sentinel,B机房只有2个Sentinel,如 ...

  8. redis离线集群安装

    用一个叫redis-trib.rb的ruby脚本.redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下(redis-xxx/src/).是基于r ...

  9. helm安装redis+Sentinel集群搭建

    一.redis集群特点 数据 在多个Redis节点之间自动分片 sentinel特点: 它的主要功能有以下几点 不时地监控redis是否按照预期良好地运行; 如果发现某个redis节点运行出现状况,能 ...

随机推荐

  1. apk下载安装,存储的位置,路径

    PackageInstaller 原理简述 应用安装是智能机的主要特点,即用户可以把各种应用(如游戏等)安装到手机上,并可以对其进行卸载等管理操作.APK是Android Package的缩写,即An ...

  2. Linux符设备驱动编程

    加入内核源码树外 ① 建立两个文件scull.c,scull.h,以及Makefile文件 Makefile文件 ② 用make进行编译,生成scull.ko驱动程序模块 ③ 把scull.ko模块加 ...

  3. shiro(java安全框架)

    shiro(java安全框架) 以下都是综合之前的人加上自己的一些小总结 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码学和会话管理.使用Shiro的易于理解的A ...

  4. Android已上线应用开源分享中(第二季)

    昨天和大家分享了我Android上线的第一个应用,大家还是挺支持的,很高兴,虽然作品没有那么高大上,但是很是有了一点小小的成就感,所以打算继续开源我上线的一些应用,和大家一起交流一下. 我这个作品是一 ...

  5. GTID复制的搭建和问题处理

    首先看一下什么是GTID: GTID(Global Transaction ID)是对于一个已提交事务的编号,并且是一个全局唯一的编号. GTID实际上是由UUID+TID组成的.其中UUID是一个M ...

  6. 贴现率d与利率i

    一.复利中的实际利率 it=(1+i)t -(1+i)t-1  /   (1+i)t-1=i i 为常数, 而单利的实际利率递减 二.贴现 时间t的1元在时间零点的价值为贴现函数 记为 a-1(t) ...

  7. 罗大佑 光阴的故事 ZT 欧美经典歌曲100首(1-50)

    老俞 my idol ———————————————————————————————— 罗大佑 光阴的故事 歌曲光阴的故事为2008年入库,是罗大佑在2000-1-1发行的专辑<情歌精选> ...

  8. ROC曲线手画

    绘图过程很简单:给定m个正例子,n个反例子,根据学习器预测结果进行排序,先把分类阈值设为最大,使得所有例子均预测为反例,此时TPR和FPR均为0,在(0,0)处标记一个点,再将分类阈值依次设为每个样例 ...

  9. codeforces 814E An unavoidable detour for home

    题目链接 正解:$dp$. 感觉这道题就是中国象棋的加强版..我们要发现一些性质. 首先就是这个图肯定是一个按照$bfs$序分层的图,且每个点只往自己上面那一层连了一条边,每个点不可能向自己的上面超过 ...

  10. Ubuntu14.04安装PowerDNS踩坑实录

    公司要使用PowerDNS,作为内网域名解析的工具.让我和另一组的同事学一下如何配置及调优.所以先找了两台服务器试着安装一下.这一装就是一个礼拜,经历了大大小小的坑,记下来以后可能需要参考.安装过程如 ...