概述
安装(略)
在一台机器上模拟,开启6个实例:端口分别为:6379,6380,6381,6382,6383,6384
存放的目录在/opt/clusters
操作
在/opt/clusters中分别创建6379 6380 6381 6382 6383 6384目录,用于存放对应的数据文件
将redis.conf配置文件复制到创建好的目录中,并进行修改
6379
修改一下参数:
bind 192.168.1.200 port 6379 daemonize yes pidfile /var/run/redis_6379.pid logfile "/opt/clusters/6379/6379.log" #禁用rdb存储方式 save "" #save 900 1 #save 300 10 #save 60 10000 dir /opt/clusters/6379 cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 15000 appendonly yes appendfilename "appendonly.aof" appendfsync always
其它端口实例的配置文件的配置方式类似,只需要将对应的6379换成对应的端口号即可
由于redis-cluster需要使用rubby因此需要安装rubby
yum install ruby rubygems
gem install redis(安装redis与rubby的接口)
分别启动redis的实例,查看是否成功启动
创建集群
1 192.168.1.200:6379 192.168.1.200:6380 192.168.1.200:6381 192.168.1.200:6382 192.168.1.200:6383 192.168.1.200:6384
1:表示将6个节点分成1:1,即分配成:3:3
集群相关命令使用
client连接命令:redis-cli -c -h 192.168.1.200 -p 6379
cluster info #查看cluster信息
cluster nodes #查看cluster节点信息
redis-cluster是以slot作为分配的
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cluster 添加节点
在/opt/clusters创建6385、6386目录,并将redis.conf配置文件复制到该目录,按照上面的配置文件进行配置
启动新redis节点
将节点添加到集群中
redis-trib.rb add-node 192.168.1.200:6385 192.168.1.200:6379说明:将6385的节点添加到集群中,其中:192.168.1.200:6379 只需要随便指定集群节点中一个即可
注意:当添加节点成功以后,新增加的节点不会有任何数据,需要为新增加的节点分配slot
为6385分配slot
redis-trib.rb reshard 192.168.1.200:6385
接着出现
此处是输入你分配给6385多少slot,该处输入200
接着出现
此处是输入接收slot的node id值,即输入6385的node id,可以使用cluster nodes查看node id
接着出现
此处是选择分配slot的方式,all是随机从集群中的master选择slot分配给6385,done是指定一个master node来分配
输入all
接着出现
输入yes即可
添加6386作为6385的从节点
redis-trib.rb add-node 192.168.1.200:6386 192.168.1.200:6379
进入6386节点,设置该节点为6385的从节点
cluster replicate b2a441498fe8f389232d03884219abf5fd934d34 #b2a441498fe8f389232d03884219abf5fd934d34是6385的node id
成功添加节点
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cluster 删除节点
基于上面已经添加好的节点进行删除
首先先删除从节点6386
redis-trib.rb del-node 192.168.1.200:6386 f0bc771831d6315b2982eb027a5b0f5239e505ab #最后面的参数是node id
接着删除主节点6385,由于主节点有slot需要先移除slot到其他主节点
redis-trib.rb reshard 192.168.1.200:6385
最后删除6385节点即可
完成
ruby 环境安装