redis集群3.0搭建
创建多个主节点
为每一个节点指派slot,将多个节点连接起来,组成一个集群
槽位分片完成后,集群进入上线状态
6个节点,3个主节点,每个主节点有一个从节点
过程:一台机器,3个主,3个从
安装redis,过程不再说了
1、创建6个文件夹
mkdir 7000
mkdir 7001
mkdir 7002
mkdir 7003
mkdir 7004
mkdir 7005
2、创建redis.conf配置文件
cd 7000
vim redis.conf
cluster-enabled yes
port 700X #端口根据诗经情况定
分别拷贝到7001、7002 。。。。
修改每个文件夹端口
3、启动每个redis实例
配置环境变量export REDIS_HOME=/usr/local/redis-3.0.2/src
分别进入每个文件夹,启动每个实例
redis-server redis.conf
查看服务信息:ss -tanl | grep 700
700X是redis端口
1700X是内部沟通端口
4、创建集群
脚本槽位分配通过redis-trib这个ruby脚本来分配,3个主实例,3个从实例
安装ruby环境:
yum -y install ruby rubygems
gem install redis(手动安装gem install --local redis-3.3.0.gem)
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:7003 127.0.0.1:7004 127.0.0.1:7005
前三个是master,后三个是从slave
5、连接集群
redis-cli -p 7002 -c
6、杀死一个主进程
ps aux| grep 7000
kill -9 23860
7003会变成主,可以连接进行写
把7000再次启动,他会作为slave,会同步7003
7、把一个主从干掉,集群会暂停服务,除非重新恢复原来的机器