Redis集群搭建及测试
 (2020-04-04 14:12:32)
	
			
					(2020-04-04 14:12:32)		| 标签: itjava | 分类: javaEE | 
Redis集群搭建及测试
Redis有三种模式,前两种有点点问题,高可用做的不是那么好,目前来讲,最后一种Cluster模式算是最完美的,本文将模拟搭建这种模式的集群搭建过程,废话不多说,我要搭建成如下图所示的样子(灵魂画手,将就看):
1).告诉读者,redis集群的每个节点只通过端口和ip来区分,运行起来相当于一个Redis任务(进程)可以做一个redis节点来看待,也就意味着其实可以通过一台服务器构建这6个节点,当然这是模拟,生产环境不会这么干,因为没有意义,
如果是一台服务器,完全用一个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.conf配置文件,修改内容如下:
第五步:启动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表示集群: 
集群测试:
我们在Server1这个服务器上登录6371这个节点存入一个数:
从其他节点可以正常获取数据,说明集群正常
节点掉电测试,将Server3下电:
然后测试集群的set/get是否正常,如下图所示,集群工作正常,说明了高可用。
需要再说一下的是:在集群中,如果在当前节点下set一个值,他不一定会存到当前节点下,他会自己选择一个节点去存,也就是说用keys可能并不能看到刚才存入的数据,但是用get
key就可以拿到刚才存入的值。
至此完!

 加载中…
加载中…