将Redis-x64-3.2.100解压,修改配置文件,通常不须要修改,直接使用默认,具体要修改可自行百度。node
打开命令行,定位到解压目录,执行命令:redis
redis-server.exe redis.windows.confwindows
有以下回显表示配置正确:缓存
命令行执行如下命令可打开客户端测试:安全
redis-cli.exe –h 127.0.0.1 –p 6379ruby
经过如下命令可部署为WindowsService:服务器
redis-server --service-install redis.windows.confapp
经过如下命令可启动/中止服务ide
redis-server --service-start工具
redis-server --service-stop
1.在配置文件中经过以下配置设置密码:
requirepass 123456
2.客户端链接后经过auth命令验证受权:
3.在StackExchange.Redis链接字符串中设置密码:
localhost:6379,password=123456
4.集群设置密码:
先经过redis-trib.rb工具构建集群,集群构建完成前不要配置密码,
集群构建完毕再经过config set + config rewrite命令逐个机器设置密码
config set masterauth 123456
config set requirepass 123456
config rewrite
注意
1) 对集群设置密码,requirepass和masterauth都须要设置,不然发生主从切换时,就会遇到受权问题,能够模拟并观察日志
2) 各个节点的密码都必须一致,不然Redirected就会失败
3) 若是设置密码后须要使用redis-trib.rb的各类命令,须要到rbuy环境的gems里找到并修改redis工具,路径以下:
修改client.rb以下:
Cluster集群脚本redis-trib.rb是经过Ruby语言编写,须要安装Ruby环境,具体步骤以下:
双击rubyinstaller-2.2.4-x64.exe安装:
安装驱动:
gem install --local path_to_gem/ redis-3.2.1.gem
部署redis集群首先要分别部署多个redis服务,集群节点少于三个没法部署,因此主服务器最少三个,下面的示例方案部署6个服务,三个主,三个从,
首先建立六个配置文件,端口从7001到7006:
其中redis.7001.conf的配置是:
其余的基本相似,分别将其中的7001改为对应的端口号便可,
配置说明:
port 7001 #端口号
loglevel notice #日志的记录级别,notice是适合生产环境的
logfile "D:/Redis/Cluster/Logs/redis7001_log.txt" #指定log的保持路径,默认是建立在Redis安装目录下,若是有子目录须要手动建立,如此处的Logs目录
syslog-enabled yes #是否使用系统日志
syslog-ident redis6380 #在系统日志的标识名
appendonly yes #数据的保存为aof格式
appendfilename "appendonly.7001.aof" #数据保存文件
cluster-enabled yes #是否开启集群以及集群配置
cluster-config-file nodes.7001.conf #这个文件会自动生成,下次启动服务的时候回自动使用该集群配置
cluster-node-timeout 15000
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes
部署6个服务:
其中—service-name参数是服务名称
启动服务:
部署成功后查看服务:
部署集群:
其中参数—replicas 是从库个数。
输入yes:
集群成功,测试一下:
7001节点能够链接到全部节点,其中7001-7003是主库,7004-7006是从库,至此部署已完成,打开客户端测试:
客户端须要参数-c ,表示集群
有上图可知,集群会自动将缓存存放其中一个节点
key1键是在7002节点,如今把7002服务中止掉:
检查集群:
发现7002节点已失去联系,7004提高为主库。
从新打开redis-cli :
获取key1,是从7004节点获取,继续增长键,直到分配到7004节点上,打开7002节点:
此时7002是从库,从新启动7004,
发现7002从新被提高为主库。
至此,部署完成,主从备份功能正常,故障转移也正常。
注意,互为主从库的节点中,当主库宕机的时候从库会自动提高为主库,原主库从新链接上为置为从库,若是主从都宕机了,集群就故障了,为保障一套主从的安全,要多部署从库。