redis 在windows 集群
前言:为什么自己要花时间写一篇redis集群文章,网上众多的文章大都是思路正确,但是细节不足,这里写一篇文章记录自己部署时候遇到的问题,当下次再部署的时候避免跳入重复的坑。
上篇文章(http://www.cnblogs.com/blogxiao/p/8485606.html)已经讲述了关于redis单实例的安装,本篇文章讲述redis 的集群。
redis集群:
(一)环境:windows7
Redis-x64-3.2.100(windows版,下载地址在上面的文章中)
RubyInstaller :(https://rubyinstaller.org/) 这个工具是redis集群的工具
(二)部署
1.redis官方建议第一次部署的时候至少六个节点,三主三从。所以先将下载下来的redis文件夹复制六份,文件的命名用端口名,建议redis 的文件夹放在根目录下。本片文章是redis垂直集群,单台主机部署多个redis实例

提示:因为上一次安装了单实例的redis,并且将redis部署到windows的服务上,为了避免不必要的麻烦,先删除先前的redis服务。在dos命令中键入:sc delete redis 即可删除redis
2. 开始配置redis

红框的两个是redis 的核心配置文件。这两个文件配置要一样,在文件中找到如下几个配置
port 6379(redis 的端口号,对应文件夹的端口号)
bind 127.0.0.1 (绑定地址,本机测试的时候用环回地址可以,但是当别人也要访问的时候最好用ip,防火墙也要关闭)
cluster-enabled yes(开启集群模式)
cluster-config-file nodes-6379.conf (集群的配置文件,这个不用手动创建,在redis服务启动的时候,会自动生成)
cluster-node-timeout 5000 (连接超时时间)
appendonly yes (每次都将数据持久化)
其他端口下的文件也如此配置,其他的redis实例也如此配置,配置成功一个之后建议测试redis服务是否能启动

注意在这些配置文件前面一定不要有空格,会启动报错,即使#前面也不能有空格
配置成功实例将redis设置为window 的服务命令:redis-server --service-install redis.windows.conf --server-name redis6379

在对应的实例文件夹下启动redis服务键入:redis-server redis.windows.conf ,也可以在服务管理右键启动,但是这种启动一旦保存将难找错误信息,建议用命令启动

注意红框标注的,redis文件夹下有两个配置文件,我使用了不带-service 的,这两者的区别我还不清楚
启动成功成功之后将会在redis 文件夹下看到多出来一个

这个配置文件就是记录集群主从节点的信息:节点id ,分配的slot 的份额,主从标识,以及主从的映射关系

这是已经做完集群之后的,没部署集群的时候,主从关系不会再这里显示
安装ruby
rubyinstall 地址:https://rubyinstaller.org/ 下载之后安装,所有的插件都勾选。一直点击下一步。
然后gem 安装redis,在redis 目录中 键入命令:gem install redis
下载redis-trib.rb 文件,这个文件是创建集群的命令,还有其他的一些操作命令后续讲解
下载地址https://redis.io/download 下载之后在src文件中查找,然后拷贝到redis目录下

在这个文件夹下执行
ruby redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004
--replicas 1 :表示将每个主节点后跟一个从节点
这行命令输入完毕之后,再输入yes,到此redis部署成功
redis 在windows 集群的更多相关文章
- Redis在Windows集群中的错误
创建集群: ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:70 ...
- Redis高可用集群-哨兵模式(Redis-Sentinel)搭建配置教程【Windows环境】
No cross,no crown . 不经历风雨,怎么见彩虹. Redis哨兵模式,用现在流行的话可以说就是一个"哨兵机器人",给"哨兵机器人"进行相应的配置 ...
- Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享
Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享 ============================= 蕃薯耀 2017年11月27日 http: ...
- Redis进阶实践之十 Redis主从复制的集群模式
一.引言 Redis的基本数据类型,高级特性,与Lua脚本的整合等相关知识点都学完了,说是学完了,只是完成了当前的学习计划,在以后的时间还需继续深入研究和学习.从今天开始来讲一下有关Re ...
- [转帖]Ansible管理windows集群
Ansible管理windows集群 http://www.cnblogs.com/Dev0ps/p/10026908.html 写的挺好的 我关注点还是不够好呢 最近公司新项目需要安装400+win ...
- 厉害—Ansible管理windows集群
最近公司新项目需要安装400+windows server 2012系统的工作站,想着怎么能像linux下运用ansible批量管理,linux就很简单了有ssh服务 但是下却没这么简单,但还是有办法 ...
- 使用Chef管理windows集群
但凡服务器上了一定规模(百台以上),普通的ssh登录管理的模式就越来越举步维艰.试想Linux发布了一个高危漏洞的补丁,你要把手下成百上千台机器都更新该补丁,如果没有一种自动化方式,那么至少要耗上大半 ...
- Redis存储Tomcat集群的Session
Redis存储Tomcat集群的Session 如何 做到把新开发的代码推送到到生产系统中部署,生产系统要能够零宕机.对使用用户零影响. 设想 是使用集群来搞定,通过通知负载均衡Nginx,取下集群中 ...
- 将自己写的windows服务加入到windows集群中
最近发现windows集群能进行很多自定义,比如在集群中加入自己编写的服务. 能自定义的可不少,截个图: 本次演示中,只想用“通用服务”这个类型. 先列下步骤 编写一个记录时间的Windows服务,这 ...
随机推荐
- encodeURIComponent
<script type="text/javascript"> function show(){ var f="#wer中文测试"; f = enc ...
- 2016/05/25 get和post的区别
get是从服务器上获取数据,post是向服务器传送数据. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP ...
- 【剑指offer】面试题42:单词翻转顺序&左右旋转字符串
这里尽可能的不去用语言本身提供的函数. 将string逆置 def reverse(string): #return string[::-1] reversedStr = '' for i in xr ...
- Deep Learning 30: 卷积理解
一.深度卷积神经网络学习笔记(一): 1. 这篇文章以贾清扬的ppt说明了卷积的实质,更说明了卷积输出图像大小应该为: 假设输入图像尺寸为W,卷积核尺寸为F,步幅(stride)为S(卷积核移动的步幅 ...
- 织梦万能调用LOOP标签!
1,安装DEDE织梦程序时候,数据库名称设置独立的一个. 2,雨田SEOER这里用的是在织梦本地文件夹中新建myblog文件夹,然后里面装入emlog_5.3.0的安装文件.URL地址栏输入htt ...
- iphone设备尺寸规格
1.以下是iphone各种设备的尺寸规格 2.开发时只需要按“逻辑分辨率”来,1x,2x,3x主要用于切图时按不同大小来切图,如1x的图就是按照“逻辑分辨率”大小的效果图切出来的原图,2x就是1x原图 ...
- 并不对劲的p2664树上游戏
题目大意 有一棵\(n\)(\(n\leq10^5\))个点的树,每个点\(i\)有颜色\(c_i\)(\(c_i\leq10^5\)) 定义一条路径的得分为这条路径上的不同颜色个数 分别求每个点的以 ...
- BZOJ3732:Network(LCT与最小生成树)
给你N个点的无向图 ( <= N <= ,),记为:…N. 图中有M条边 ( <= M <= ,) ,第j条边的长度为: d_j ( < = d_j < = ,,, ...
- NPU 2015年陕西省程序设计竞赛网络预赛(正式赛)F题 和谐的比赛(递推 ||卡特兰数(转化成01字符串))
Description 今天西工大举办了一场比赛总共有m+n人,但是有m人比较懒没带电脑,另外的n个人带了电脑.不幸的是,今天机房的电脑全坏了只能用带的电脑,一台电脑最多两人公用,确保n>=m. ...
- 03_隐式意图打开activity
想让第一个activity把第二个activity打开的话,在清单文件里面声明一下并且 右键Debug As Android Application居然没有报错 mimeType 讲HTML的时候就 ...