1. 程式人生 > >搭建Redis三主三從叢集

搭建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

1 yum -y install tcl  gcc
2 cd /data/redis-5.0.5
3 make MALLOC=libc  
4 cd src
5 make test
6 make install
View Code

關閉防火牆

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

1 cp /data/redis-5.0.5/redis.conf /data/redis-5.0.5/cluster/7000/
2 vi /data/redis-5.0.5/cluster/7000/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檔案刪除(友情建議:備份後再刪除),然後再重新執行建立叢集的命令,按照自己需求重新指定主從節點。