1、集群知识html
1.集群的概念node
所谓的集群,就是经过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。git
2.使用redis集群的必要性github
问题:咱们已经部署好了redis,而且能启动一个redis,实现数据的读写,为何还要学习redis集群?redis
答:(1)单个redis存在不稳定性。当redis服务宕机了,就没有可用的服务了。数据库
(2)单个redis的读写能力是有限的。编程
总结:redis集群是为了强化redis的读写能力。windows
3.如何学习redis集群ruby
说明:(1)redis集群中,每个redis称之为一个节点。服务器
(2)redis集群中,有两种类型的节点:主节点(master)、从节点(slave)。
(3)redis集群,是基于redis主从复制实现。
因此,学习redis集群,就是从学习redis主从复制模型开始的。
2、准备工做
Redis下载地址:https://github.com/MicrosoftArchive/redis/releases
Ruby语言运行环境下载:https://rubyinstaller.org/downloads/
Redis的Ruby驱动redis-xxxx.gem下载:https://rubygems.org/pages/download
建立Redis集群的工具redis-trib.rb:https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb
PS:以上全部工具关注最下方公众号,点击软件目录,能够直接下载百度网盘
3、安装配置Redis
1.下载Redis-x64-3.2.100.zip,点击下载Redis
要让集群正常运做至少须要3个主节点,建议配置3个主节点,其他3个做为各个主节点的从节点(也是官网推荐的模式)。
因此须要6台虚拟机,本文配置了6个节点,根据您的需求合理安排。
主节点崩溃,从节点的Redis就会提高为主节点,代替原来的主节点工做,崩溃的主Redis恢复工做后,会再成为从节点。
2.建立Redis集群目录,把 redis 解压后,再复制出 11份,配置 六主六从集群。 因为 redis 默认端口号为 6379,那么其它5份的端口能够为6380,6381,6382,6383,6384,6385,6386,6387,6388,6389,6390 而且把目录使用端口号命名,以下图示例:
3.修改配置文件,打开每一个Redis目录下的文件 redis.windows.conf,修改里面的端口号分别对应相对应的文件夹名:637九、6380,6381,6382,6383,6384,6385,6386,6387,6388,6389,6390再修改集群支持配置,将如下配置前面的#去掉。
cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 15000 appendonly yes
cluster-config-file nodes-6379.conf 是为该节点的配置信息,这里使用 nodes-端口.conf命名方法。服务启动后会在目录生成该文件。
4.编写启动脚本,或者进入每一个端口命名的文件夹下启动服务,编写一个 bat 来启动 redis,在每一个节点目录下创建 startup.bat,内容以下:
title redis-6379
redis-server.exe redis.windows.conf
title命名规则 redis-相对应的端口。
4、安装Ruby
1. redis的集群使用 ruby脚本编写,因此系统须要有 Ruby 环境 ,点击下载Ruby 环境
2.下载成功后,点击安装,三个都要选上后下一步(安装位置不要使用中文)。
5、安装Redis的Ruby驱动redis-xxxx.gem
2.下载成功后,解压当前目录切换到解压目录中,如C:\Users\fuzongle\Desktop\redis集群\redis-cluster\rubygems-3.1.4 而后命令行执行 ruby setup.rb,
再用 GEM 安装 Redis :切换到redis安装目录,须要在命令行中,执行 gem install redis
五 安装集群脚本redis-trib
1.点击下载redis-trib.rb,打开该连接把里面的脚本保存为redis-trib.rb,建议保存到一个Redis的目录下(不用每一个都放),例如放到6379目录下。
redis-trib.rb集群的命令为 redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 127.0.0.1:6386 127.0.0.1:6387 127.0.0.1:6388 127.0.0.1:6389 127.0.0.1:6390
注意:--replicas 1 表示每一个主数据库拥有从数据库个数为1。master节点不能少于3个,这里我使用了6个主节点,6个从节点
2.启动以后,能够看到主从库地址,点击yes,下次就不须要从新执行这个命令了,直接启动每一个redis 便可。
6、链接集群测试
下载redis客户端链接便可
ps:如需了解工做原理能够看下这个挺好的:转载:http://www.javashuo.com/article/p-vfhyukec-mp.html
注意:
1.若是有任何不懂的地方能够关注公众号就能够加我微信,随时欢迎互相帮助。
2.技术交流群QQ:422167709。
3.若是但愿学习更多,但愿微信扫码,长按扫码,帮忙关注一下,举手之劳,当您无助的时候真的能帮你。很是感谢您关注公众号 "编程小乐"。