所谓的集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。
Redis集群实现了对Redis的水平扩容,即启动N个Redis节点,将整个数据分布存储在这N个节点中
Redis集群通过分区来提供一定程度的可用性,即使集群中有一部分节点失效或无法进行通讯,集群也可以继续执行命令请求
一:创建集群前的准备(安装ruby环境)
执行yum install ruby
yum install rubygems
二:配置文件
制作6个实例,6379、6380、6381、6389、6390、6391
拷贝多个redis.conf文件
开启daemonize yes
Pid文件名字
指定端口
Log文件名字
Dump.rdb名字
Appendonly 关掉
cluster-enabled yes 打开集群模式
cluster-config-file nodes-6379.conf 设置节点配置文件名
cluster-node-timeout 15000 设置节点失联时间,超过该时间(毫秒),集群自动进行主从切换
include /usr/src/MyRedis/redis.conf //引入配置文件
pidfile /var/run/redis_7000.pid //pidfile文件对应7000,7001,7002
port 6379 //端口6379/6380/6381
bind 本机ip //改为其他节点机器可访问的ip 可以使用ifconfig查看一下
daemonize yes //redis后台运行
dbfilename 'demp6379.rdb'
cluster-enabled yes //开启集群
cluster-config-file nodes-6379.conf //集群的配置 配置文件首次启动自动生成 6379/6380/6381
cluster-node-timeout 15000 //请求超时 默认15秒,可自行修改
启动redis所有节点后,nodes-xxxx.conf文件都能正常生成
查看redis进程 ps -ef | grep redis
进入redis下的src(redis5.0以上使用)
./redis-cli --cluster create 192.168.0.105:6379 192.168.0.105:6380 192.168.0.105:6381
192.168.0.105:6389 192.168.0.105:6390 192.168.0.105:6391 --cluster-replicas 1
--replicas 1 表示我们希望为集群中每个主节点创建一个从节点
以集群的方式进入客户端:redis-cli -c -p 端口号