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服务,这 ...
随机推荐
- Linux下使用inotify实现对文件的监控
项目中,要实现用户通过网页设置參数,后台接收数据然后写串口. 网页写数据到本地文件,使用inotify监控文件的IN_MODIFY事件.当文件被改动,然后触发写串口事件. 第一个程序只把要监控的文件增 ...
- Elasticsearch - 搜索类型与搜索位置
一.搜索类型: Elasticsearch同意用户选择其所希望的处理查询的方式. 由于存在一些不同的情形,对其使用不同的搜索类型才是合适的.为了控制查询的运行方式,我们能够在请求中使用search_t ...
- Vue常用语法及命令
1,Vue常用语法 vue常用语法之变量的定义 // 1,变量相关 // 变量的提升 var username = "雪雪"; var username ; console.log ...
- 普通用户无法登陆SSH问题
Linux正常情况下普通用户是可以登陆SSH的,除非系统管理员作了修改,如果没有修改的情况无法登陆可以尝试以下方法解决: 步骤/方法 1 查看 /etc/ssh/sshd_config文件 发现 ro ...
- Supporting IPv6-only Networks
Supporting IPv6-only Networks - Support - Apple Developer https://developer.apple.com/support/ipv6/ ...
- shell脚本常用(记)
1.变量检查,判空 a.直接变量判断 if [ ! $1 ];then ..empty..fi b.变量通过" "引号引起来 if [ ! -n "$1" ...
- JDK安装以及配置环境变量的步骤
---恢复内容开始--- 一.JDK安装 JDK下载链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads ...
- 从sp_executesql中返回table型数据及动态SQL语句的参数化查询
在返回分页数据时,我们会经常会用到参数化传递过滤条件,如何拼接SQL语句成了一个难题. 我们可以这样拼接: exec('sp_executesql sql语句,参数定义,参数值') sql语句和参数定 ...
- ChartCtrl源码剖析之——CChartAxisLabel类
CChartAxisLabel类用来绘制轴标签,上.下.左.右都可以根据实际需要设置对应的轴标签.它处于该控件的区域,如下图所示: CChartAxisLabel类的头文件. #if !defined ...
- Bootstrap中的各种下拉菜单
@*基本下拉菜单与按钮下拉菜单的样式完全一致.不过,基本的下拉菜单使用<div class="dropdown">包裹,所有要换行.而按钮式下拉菜单<div cl ...