准备工作:
一台已经安装好redis的虚拟机master
两台克隆过来的虚拟机node1,node2,不知道克隆虚拟机的见链接 https://mp.csdn.net/console/editor/html/108742694
准备资源
第一步:我的Redis安装在usr/local/soft里面
创建安装目录 在master ,node1 ,node2中分别创建
mkdir /usr/local/soft/redis-cluster
第二步:将redis 复制到redis-cluster 目录下修改名字为7000
cp -r /usr/local/soft/redis /usr/local/soft/redis-cluster
mv /usr/local/soft/redis-cluster/redis /usr/local/soft/redis-cluster/7000
删除单机版缓存文件
rm -rf appendonly.aof
rm -rf dump.rdb
3、修改配置文件 vim redis.conf
daemonize yes //redis后台运行
pidfile /var/run/redis_7000.pid //pidfile文件对应7000
port 7000 //端口7000
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes.conf //集群的配置 配置文件首次启动自动生成
cluster-node-timeout 5000 //请求超时 设置5秒够了
appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志 (全持久化)
第179行
41行
632行
640行
646行
503行
4、复制7000,和7001,7002,7003,7004,7005
5、修改每一个里面的配置 7001,7002,7003,7004,7005都要修改
vim 7001/bin/redis.conf
把7000改成对应的端口号
pidfile /var/run/redis_7001.pid
port 7001
6、在7002 ,7003 复制到node1
scp -r /usr/local/soft/redis-cluster/7002 node1:/usr/local/soft/redis-cluster/
scp -r /usr/local/soft/redis-cluster/7003 node1:/usr/local/soft/redis-cluster/
7、在7004 ,7005 复制到node2
scp -r /usr/local/soft/redis-cluster/7004 node2:/usr/local/soft/redis-cluster/
scp -r /usr/local/soft/redis-cluster/7005 node2:/usr/local/soft/redis-cluster/
复制好之后原有master里面的7002,7003,7004,7005就可以删除了
8、启动redis
1)、在master中执行
cd /usr/local/soft/redis-cluster/7000/bin
./redis-server redis.confcd
cd /usr/local/soft/redis-cluster/7001/bin
./redis-server redis.conf
2)、在node1中执行
cd /usr/local/soft/redis-cluster/7002/bin
./redis-server redis.conf
cd /usr/local/soft/redis-cluster/7003/bin
./redis-server redis.conf
3)、在node2中执行
cd /usr/local/soft/redis-cluster/7004/bin
./redis-server redis.conf
cd /usr/local/soft/redis-cluster/7005/bin
./redis-server redis.conf
9、通过工具构建集群 在master中安装
安装工具
yum -y install ruby ruby-devel rubygems rpm-build
通过xshell和xfpt上传redis-3.0.0.gem
gem install -l redis-3.0.0.gem
放在/usr/local/bin/ 目录下的命令可以在任何一个位置运行
cp /usr/local/soft/redis-3.0.0/src/redis-trib.rb /usr/local/bin/redis-trib
10、启动集群 第一次使用 都免集群重启不需要使用
# replicas 每一个主节点的备份节点数量
redis-trib create --replicas 1 xxx.xxx.xxx.xxx:7000 xxx.xxx.xxx.xxx:7001 xxx.xxx.xxx.xxx:7002 xxx.xxx.xxx.xxx:7003 xxx.xxx.xxx.xxx:7004 xxx.xxx.xxx.xxx:7005
xxx.xxx.xxx为自己master,node1,node2的IP地址。 注意700和70001是一样的,7002,7003是一样的,7004,7005是一样的
出现下面这个你就完成了
11、客户端访问reids集群
# -p 端口号 -h 节点ip -c 自动重定向
reids-cli -p 7000 -h master -c