两台服务器安装redis集群_Redis集群搭建及测试
Redis集群搭建及测试
Redis有三种模式,前两种有点点问题,高可用做的不是那么好,目前来讲,最后一种Cluster模式算是最完美的,本文将模拟搭建这种模式的集群搭建过程,废话不多说,我要搭建成如下图所示的样子(灵魂画手,将就看):
说明:
一般来讲,生产环境的redis集群都是在不同机房的不同服务器上的,目的就是一个机房发生诸如掉电,火灾,断网等等问题时,依旧能够做到高可用,本文模拟3台服务器搭建6个节点,目的是:
1).告诉读者,redis集群的每个节点只通过端口和ip来区分,运行起来相当于一个Redis任务(进程)可以做一个redis节点来看待,也就意味着其实可以通过一台服务器构建这6个节点,当然这是模拟,生产环境不会这么干,因为没有意义,
如果是一台服务器,完全用一个redis就可以了,不用集群,就算用集群,部署到一个节点上,一但掉电,集群整个垮掉了,没有意义。
2).
上图我一个服务器部署2个节点,一个主节点,一个其他主节点的从节点,这样,不论是一个从节点垮掉还是一个主节点垮掉,还是Server1整个垮掉,redis集群都不会垮掉,就保证了高可用。
下面介绍实施过程:
第一步: 给Servier1,
Servier2,Servier3安装Redis。不会的看我之前的帖子,从网络到安装到避坑到连接都有详细写。
第二步:在Service1(192.168.217.111),Service2(192.168.217.112),Servier3(192.168.217.112)的/usr/local/下创建目录分别如下:
192.168.217.111: /usr/local/redis6371 /usr/local/redis6374
192.168.217.112: /usr/local/redis6372 /usr/local/redis6375
192.168.217.113: /usr/local/redis6373 /usr/local/redis6376
第三步:将redis解压目录下的redis.conf拷贝到上面创建的目录下,也可以拷贝到其中一个,改完配置之后再分别拷贝到其他目录下(因为大部分的配置是一样的,避免繁琐的修改)
第四步:修改redis.conf配置文件,修改内容如下:
修改完以上配置之后可以cp或者scp到其他节点的目录下,修改ip,端口,指向文件,集群配置文件等指向,也上面的第1,2,4,5,6,9行的配置为相对应的配置。
第五步:启动redis服务,安装路径下的bin路径下,利用redis-server
配置文件的方式启动redis服务,每个节点都同样的方法去启动
启动成功之后查看:
第六步:都启动之后,再某一个节点,举例子第一个节点,上执行创建集群的操作命令(5.0之后的版本可以直接用下面的命令创建集群,但是5.0之前的版本需要用ruby脚本去创建,命令有差别,目的一模一样,请自行百度,这里不赘述):
./redis-cli --cluster create
192.168.217.111:6371 192.168.217.112:6372 192.168.217.113:6373
192.168.217.112:6375 192.168.217.113:6376 192.168.217.111:6374
--cluster-replicas 1
如上图所示:按照设计,从节点6375添加到6371主节点,从节点6376添加到6372主节点,从节点6374添加到6373主节点,
只有3个主节点且主节点有分配Slots(槽),也就是主节点可以读/写操作,但是从节点只能写。
出现如下页面,表示集群创建成功:
下面开始测试集群是否搭建成功:
连接其中一个节点,连接方式:redis-cli -c -h [IP]
-p [端口] 如下图所示,-c表示集群:
查看集群中的节点:
从节点:前面长长的是节点id,
后面长长的是他的主节点id,通过这个可以看出哪个从节点隶属于哪个主节点,是我们上面设计的样子。
集群测试:
我们在Server1这个服务器上登录6371这个节点存入一个数:
然后新开一个xshell窗口,登录Servier3的6373这个节点去获取这个key,看是否拿到值:
我再登录Server2的一个从节点6376去获取数据看看:
从其他节点可以正常获取数据,说明集群正常
节点掉电测试,将Server3下电:
然后测试集群的set/get是否正常,如下图所示,集群工作正常,说明了高可用。
需要再说一下的是:在集群中,如果在当前节点下set一个值,他不一定会存到当前节点下,他会自己选择一个节点去存,也就是说用keys可能并不能看到刚才存入的数据,但是用get
key就可以拿到刚才存入的值。
至此完!
两台服务器安装redis集群_Redis集群搭建及测试相关推荐
- 两台服务器安装redis集群_Redis Cluster搭建高可用Redis服务器集群
一.Redis Cluster集群简介 Redis Cluster是Redis官方提供的分布式解决方案,在3.0版本后推出的,有效地解决了Redis分布式的需求,当一个节点挂了可以快速的切换到另一个节 ...
- 两台服务器安装redis集群_redis 集群搭建,小白也能搭三主三从的集群环境
redis集群简介: Redis集群是一个程序集,它提供在多个 Redis节点之间共享数据. 一个 Redis集群不支持同时处理多个键的 Redis命令,因为这要求将数据移动到多个节点之间,这会降低 ...
- redis 槽点重新分配 集群_redis集群高可用部署-cluster-槽点的迁移查看
redis集群官网文档 https://redis.io/topics/cluster-tutorial 下载文档 https://redis.io/download 23种服务脚本 https:// ...
- C#两大知名Redis客户端连接哨兵集群的姿势
前言 前面<Docker-Compose搭建Redis高可用哨兵集群>, 我的思路是将Redis.Sentinel.Redis Client App链接到同一个网桥网络,这个网桥内的Red ...
- redis 集群_Redis集群管理
阅读文本大概需要10分钟. 1.简介 Redis在生产环境中一般是通过集群的方式进行运行,Redis集群包括主从复制集群和数据分片集群两种类型. *主从复制集群提供高可用性,而数据分片集群提供负载均衡 ...
- redis 集群_Redis集群部署
Redis集群部署 1. 编译安装 # cd /usr/local/src/# wget http://download.redis.io/releases/redis-5.0.0.tar.gz# t ...
- multi redis 不能使用集群_Redis 集群实现
Nosql,作为程序员在当下不了解点儿,还真不行,出去聊起来别人就会说你土.那么就聊聊其中一个比较火的redis.redis单机版没得说,但是一直没有集群版,有也是山寨的.前段时间对redis的实现进 ...
- 成功在两台电脑上安装了spark集群,mark下
一.首先查找linux系统下的集群master的ip地址:如图所示: 二.然后在windows电脑上访问该ip地址:端口:50070 这个只是启动了Hadoop集群:
- redis mysql 架构_redis+mysql架构搭建
redis+mysql框架搭建 redis是一个key-value存储系统.和memcached类似,不过redis支持的value类型更多,主要有:string(字符串).list(链表).set( ...
- Redis(四)(主从复制-搭建环境测试,哨兵模式-测试,缓存穿透,缓存击穿,缓存雪崩)
文章目录 1.主从复制 (1)为什么会有主从复制? (2)主从复制能干啥? (3)搭建一主二从环境 (4)测试 (5)复制原理 (6)使用层层链路型来进行连接 (7)主机宕机后手动配置主机 2.哨兵模 ...
最新文章
- springboot-拦截器的实现、执行时机及原理
- CSDN创始人蒋涛:开源吞噬世界,得开发者得天下
- spring的aop准备工作-导包定义通知
- 牛客假日团队赛5 L	Catch That Cow HDU 2717 (BFS)
- java 无侵入监控_MyPerf4J 一个高性能、无侵入的Java性能监控和统计工具
- .Net Core + NGINX跳转登录时端口丢失
- 小酌重构系列[20]——用条件判断代替异常
- zz:测试还是开发?
- 用128行代码实现一个文字冒险游戏
- 如何上传代码到github?
- 刘韵洁:未来网络技术发展趋势与展望
- ppm调制解调器 matlab,PPM脉冲位置调制解调器.doc
- 云计算基础(二)—— 虚拟化
- 百度搜索稳定性问题分析的故事(上)
- Nanopi r4s usb网卡设置方法(MT7601U Wireless Adapter)
- 时间序列分析-----2---时间序列预处理
- 前端实现炫酷动效_Lottie-前端实现AE动效
- 902绿幽灵802绿钻(绿精灵)全部冠号
- 基于bootstrap的漂亮网站后台管理界面框架汇总
- 财路网每日原创推送: 物联网区块链网络在制造供应链中还存在着很多挑战
热门文章
- 【网络安全管理员三级鉴定题】二十七
- ExcelVBA Application对象介绍
- 数据结构铁轨问题_stack-铁轨问题
- 矩阵最简行阶梯型计算器_19年中级考生能不能带计算器考试?今天统一回复
- nvidia控制面板的卸载会影响显卡驱动吗?
- 重磅!QFII、RQFII投资额度限制取消,期货市场对外开放再迎利好
- 基于javaweb的共享汽车租赁平台(java+ssm+jsp+jquery+mysql)
- 直播APP/视频服务器总被网络攻击,该怎么办?
- 操作系统 第一次作业
- 用python编写俄罗斯方块游戏