Redis是一款内存高速缓存数据库。Redis全称为:Remote Dictionary Server(远程数据服务),该软件使用C语言编写,Redis是一个key-value存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set)、hash。使用redis最大的原因就是快,一个nosql的数据库。
搭建redis集群
ping,查看redis服务状态
*注意关闭防火墙
安装环境
yum install ruby yum install rubygems
第一步:建集群文件夹
[root@localhost redis]# mkdir ../redis-cluster [root@localhost redis]# cd . [root@localhost local]# cp redis/bin redis-cluster/redis01 -r //复制
第二步:删除redis文件夹本地记录文件
[root@localhost local]# cd redis-cluster [root@localhost redis-cluster]# cd redis01/ [root@localhost redis01]# rm -f appendonly.aof [root@localhost redis01]# rm -f dump.rdb
然后
vim redis.conf
取消 cluster enable yes这一行的注释
*搜索
/加搜索的内容
第三步:复制redis集群
[root@localhost redis-cluster]# cp -r redis01/ redis02 [root@localhost redis-cluster]# cp -r redis01/ redis03 [root@localhost redis-cluster]# cp -r redis01/ redis04 [root@localhost redis-cluster]# cp -r redis01/ redis05 [root@localhost redis-cluster]# cp -r redis01/ redis06
第四步:修改6个redis的conf端口和打开集群开关
gedit redis.conf 或vim redis.conf 修改port6379为port 7001-7006
第五步:书写批处理启动6个redis
vim start-all.sh
书写批处理内容
cd redis01 ./redis-server redis.conf cd .. cd redis02 ./redis-server redis.conf cd .. cd redis03 ./redis-server redis.conf cd .. cd redis04 ./redis-server redis.conf cd .. cd redis05 ./redis-server redis.conf cd .. cd redis06 ./redis-server redis.conf cd ..
第六步:增加权限,启动批处理文件
[root@localhost redis-cluster]# chmod u+x start-all.sh //授予权限
批处理文件变绿色之后,执行
[root@localhost redis-cluster]#./start-all.sh
查看进程 是否启动
ps aux|grep redis
把六个节点连起来
把ruby文件复制到/usr/local/redis-cluster/路径下
[root@localhost src]# cp redis-trib.rb /usr/local/redis-cluster/
安装第三方的库
上传redis-3.0.0.gem文件
安装
[root@localhost stefan]# gem install redis-3.0.0
链接集群
[root@localhost redis-cluster]#./redis-trib.rb create --replicas 1 192.168.25.133:7001 192.168.25.133:7002 192.168.25.133:7003 192.168.25.133:7004 192.168.25.133:7005 192.168.25.133:7006
点击yes
使用redis-cli连接集群
redis01/redis-cli -p 7004 -c
成功
遇到的问题
1.集群连接不上(重新连接)
描述
[ERR] Sorry, can’t connect to node 192.168.25.129:7001
原因
之前链接成功过一次,然后jedis连接不上,就重新建了redis01-06,然后就一直报错,不能连接
解决方案
之后就修改了
redis.conf 把bind 0.0.0.0改为bind 虚拟机ip
然后删除如下代码的注释#
cluster-enabled yes
然后重启之后启动,就OK了