搭建Redis三主三从集群

Redis三主三从集群规划

10.0.128.19   使用端口 7000  7001

10.0.128.22   使用端口 7002  7003

10.0.128.23   使用端口 7004  7005

redis及依赖 (3台)

下载安装包 https://redis.io/

tar xf  下载的源码包 解压到/data/redis-5.0.5

 yum -y install tcl  gcc
cd /data/redis-5.0.
make MALLOC=libc
cd src
make test
make install

关闭防火墙

systemctl status firewalld
systemctl disable firewalld

修改配置文件

节点1

mkdir -p /data/redis-5.0.5/cluster/7000

mkdir -p /data/redis-5.0.5/cluster/7001

节点2

mkdir -p /data/redis-5.0.5/cluster/7002

mkdir -p /data/redis-5.0.5/cluster/7003

节点3

mkdir -p /data/redis-5.0.5/cluster/7004

mkdir -p /data/redis-5.0.5/cluster/7005

配置文件分别拷贝3个节点的6个文件夹

cp /data/redis-5.0.5/redis.conf /data/redis-5.0.5/cluster/700X

修改配置文件, 并将修改后的配置文件复制到6个文件夹,并改相应端口和IP

 cp /data/redis-5.0./redis.conf /data/redis-5.0./cluster//
vi /data/redis-5.0./cluster//redis.conf

port 6379  >更改>   port 7000

bind 127.0.0.1  >更改>  bind 10.0.128.19

daemonize no  >更改>  daemonize yes

pidfile /var/run/redis_6379.pid  >更改>  pidfile /var/run/redis_7000.pid

cluster-enabled yes  >更改>  cluster-enabled yes

cluster-config-file nodes-6379.conf  >更改>  cluster-config-file nodes-7000.conf

cluster-node-timeout 15000  >更改>  cluster-node-timeout 15000

appendonly no  >更改>  appendonly yes

启动服务

分别在三个节点启动服务,每个节点启动2个,共6个,注意替换700X

redis-server /data/redis-5.0.5/cluster/700X/redis.conf  

创建集群

redis-cli  --cluster  create 前三个是主节点  后三个是从节点  --cluster-replicas 1

replicas 1 表示我们希望为集群中的每个主节点创建一个从节点

redis-cli  --cluster  create  10.0.128.19:7000(节点1的主)  10.0.128.22:7002(节点2的主)  10.0.128.23:7004(节点3的主)  10.0.128.19:7001(节点1的从) 10.0.128.22:7003(节点2 的从) 10.0.128.23:7005(节点3的从) --cluster-replicas 1

查看属性

直接执行

redis-cli  -h 10.0.128.19 -p 7001 cluster nodes查看节点情况

进命令行执行

[root@VM_0_22_centos 7003]# redis-cli -h 10.0.128.19 -p 7000 -c
10.0.128.19:7000> cluster info
10.0.128.19:7000> cluster nodes (查看主备分配是否正确)

可用测试

重启某一节点后,查看集群状态是否正常。

可以关闭某一个主节点,比如:10.0.128.19的7000 节点,然后进行查看主从分配状态,查看7000的主节点状态是否master,fail的状态,再次启动7000节点查看7000节点状态

创建集群后,想要重新指定节点为master或者slave

把集群节点全部停止服务,然后删除每台节点aof、rdb、nodes.conf文件删除(友情建议:备份后再删除),然后再重新执行创建集群的命令,按照自己需求重新指定主从节点。

  

 

  

上一篇:redis内存分配管理与集群环境下Session管理


下一篇:Redis高可用-主从,哨兵,集群