由于只有一台虚拟机, 因此我建立了6个集群节点在一台机器上。 三主 三副node
1.建立目录web
新建一个redis 集群的文件夹, 在下面建立6个集群分别的文件夹 8001,8002,8003,8004,8005,8006redis
2.将conf文件拷贝到各自的文件夹中而且进行修改。ruby
把以前的redis.conf配置文件copy到8001下,修改以下内容: 服务器
(1)daemonize yes app
(2)port 8001(分别对每一个机器的端口号进行设置) ui
(3)dir /usr/local/rediscluster/8001/(指定数据文件存放位置,必需要指定不一样的目 录位置,否则会丢失数据) spa
(4)cluster-enabled yes(启动集群模式) orm
(5)cluster-config-file nodes-8001.conf(集群节点信息文件,这里800x好和port对 应上) server
(6)cluster-node-timeout 5000
(7) # bind 127.0.0.1(去掉bind绑定访问ip信息)
(8) protected-mode no (关闭保护模式)
(9)appendonly yes 若是要设置密码须要增长以下配置:
(10)requirepass **** (设置redis访问密码)
(11)masterauth **** (设置集群节点间访问密码,跟上面一致)
而后将文件拷贝到其余的目录中。而且更改port 可使用 批量替换 :%s/8001/8005/g
3.分别启动redis 实例
分别启动6个redis实例,而后检查是否启动成功 (1)/usr/redis-5.0.2/src/redis-server /usr/local/redis-cluster/800*/redis.conf (2)ps -ef | grep redis 查看是否启动成功
4.用redis-cli建立整个redis集群(redis5之前的版本集群是依靠ruby脚本redistrib.rb实现)
)/usr/redis-5.0.2/src/redis-cli -a **** --cluster create --cluster-replicas 1 192.168.31.128:8001 192.168.31.128:8002 192.168.31.128:8003 192.168.31.128:8004 192.168.31.128:8005 192.168.31.128:8006 表明为每一个建立的主服务器节点建立一个从服务器 节点
-a **** 这个指的是密码
--cluster-replicas 1 这个指的是从机的数量
后面的就是hostname 和 port 端口号了。
Unrecognized option or bad number of args for: '--cluster-replics' : 这个错误表明参数没有打对
5.验证集群
/usr/local/redis-5.0.2/src/redis-cli -a **** -c -h 192.168.0.61 -p 800*
进行验证: cluster info(查看集群信息)、cluster nodes(查看节点列表)
6.关闭集群
可使用redis-cli shutdown
/usr/local/redis/bin/redis-cli -a ****-c -h 192.168.31.128 -p 8001 shutdown