redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,在三台虚拟机上实现三主三从
1.下载 && 解压 && 编译
$ wget http://download.redis.io/releases/redis-5.0.3.tar.gz
$ tar xzf redis-5.0.3.tar.gz
$ cd redis-5.0.3
$ make && make install
2.、在第一台机器的/usr/local下创建文件夹redis-cluster,然后在其下面分别创建2个文件夾如下
(1)mkdir -p /usr/local/redis-cluster
(2)mkdir 8001、 mkdir 8002
3、把之前的redis.conf配置文件copy到8001下,修改如下内容:
(1)daemonize yes
(2)port 8001(分别对每个机器的端口号进行设置)
(3)dir /usr/local/redis-cluster/8001/(指定数据文件存放位置,必须要指定不同的目录位置,不然会丢失数据)
(4)cluster-enabled yes(启动集群模式)
(5)cluster-config-file nodes-8001.conf(集群节点信息文件,这里800x最好和port对应上)
(6)cluster-node-timeout 5000
(7) # bind 127.0.0.1(去掉bind绑定访问ip信息)
(8) protected-mode no (关闭保护模式)
(9)appendonly yes
(10)requirepass password (设置redis访问密码)
(11)masterauthpassword (设置集群节点间访问密码,跟上面一致)
4、把修改后的配置文件,copy到8002,修改第2、3、5项里的端口号,可以用批量替换:
5、另外两台机器也需要做上面几步操作,第二台机器用8003和8004,第三台机器用8005和8006
(1)redis-5.0.3/src/redis-server /redis-cluster/800*/redis.conf
(2)ps -ef | grep redis 查看是否启动成功
6、用redis-cli创建整个redis集群(redis5以前的版本集群是依靠ruby脚本redis-trib.rb实现)
(1)redis-5.0.3/src/redis-cli --cluster create --cluster-replicas 1 192.168.214.128:8001 192.168.214.128:8002 192.168.214.130:8003 192.168.214.130:8004 192.168.214.129:8005 192.168.214.129:8006
-replicas 1 代表为每个创建的主服务器节点创建一个从服务器节点
7、验证集群:
(1)连接任意一个客户端即可:./redis-cli -c -h -p (-a访问服务端密码,-c表示集群模式,指定ip地址和端口号)
如:redis-5.0.3/src/redis-cli -c -h 192.168.0.61 -p 800*
(2)进行验证: cluster info(查看集群信息)、cluster nodes(查看节点列表)
(3)进行数据操作验证
(4)关闭集群则需要逐个进行关闭,使用命令: /usr/local/redis/bin/redis-cli -a zhuge -c -h 192.168.0.60 -p 800* shutdown
ps:
拷贝文件到目标服务器
scp -r redis-cluster/ [email protected]:/usr/local/soft/
scp -r 目标文件 用户名@目标主机:主机目录