1. 程式人生 > >redis4偽叢集搭建

redis4偽叢集搭建

三臺伺服器:先設定hosts
10.0.0.231  node1
10.0.0.232  node2
10.0.0.233  node3
複製程式碼
埠分配:
node1:7000 
node1:7001  
node2:7002  
node2:7003  
node3:7004  
node3:7005
複製程式碼

1:下載redis-4.0.1並解壓

解壓目錄:/usr/local/redis-4.0.1
建立軟連線:ln -s redis-4.0.1 redis

2:編譯安裝

指定安裝目錄到:/usr/local/redis

make && make install PREFIX=/usr/local/redis

3:建立配製節點

複製程式碼
node1伺服器:
mkdir -p /usr/loca/redis/redis_cluster/7000
mkdir -p /usr/loca/redis/redis_cluster/7001 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7000 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7001 node2伺服器: mkdir -p /usr/loca/redis/redis_cluster/7002 mkdir -p /usr/loca/redis/redis_cluster/7003 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7002 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7003
node3伺服器: mkdir -p /usr/loca/redis/redis_cluster/7004 mkdir -p /usr/loca/redis/redis_cluster/7005 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7004 cp /usr/local/redis/redis.conf /usr/loca/redis/redis_cluster/7005
複製程式碼

4:修改redis.conf

複製程式碼
切記:不能設定密碼,否則叢集啟動時會連線不上

port  7000                                //埠根據對應的資料夾去配製埠 7000,7001,7002,7003,7004,7005      
bind 本機ip //根據本機所在的IP或hostname去配製 node1 node2 node3 daemonize yes //redis後臺執行 pidfile /var/run/redis_7000.pid //pidfile檔案對應7000,7001,7002,7003,7004,7005 cluster-enabled yes //開啟叢集 把註釋#去掉 cluster-config-file nodes_7000.conf //叢集的配置 配置檔案首次啟動自動生成 7000,7001,7002,7003,7004,7005 cluster-node-timeout 15000 //請求超時 預設15秒,可自行設定 appendonly yes //aof日誌開啟 有需要就開啟,它會每次寫操作都記錄一條日誌
複製程式碼

5:複製src目錄中的redis-trib.rb 到/usr/local/redis/bin目錄

cp  /usr/local/redis/redis-trib.rb /usr/local/redis/bin

6:安裝ruby環境

yum install -y ruby
yum install -y rubygems

7:安裝ruby的包

複製程式碼
gem install redis-4.0.0.rc1.gem

如果不成功需要去下載後安裝
下載地址
https://rubygems.org/gems/redis/versions/4.0.0.rc1
https://rubygems.org/downloads/redis-4.0.0.rc1.gem

安裝命令:gem install -l ./redis-4.0.0.rc1.gem
複製程式碼

8:啟動各個節點

複製程式碼
node1伺服器:
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7000/redis.conf
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7001/redis.conf

node2伺服器:
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7002/redis.conf
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7003/redis.conf

node3伺服器:
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7004/redis.conf
/usr/local/redis/bin/redis-server /usr/loca/redis/redis_cluster/7005/redis.conf
複製程式碼

9:檢查各節點是否啟動

檢視程序
ps -ef | grep redis

檢視埠
netstat -tnlp | grep redis

 10:建立叢集

進入node1的bin目錄下,執行以下指令碼
./redis-trib.rb  create  --replicas  1  node1:7000 node1:7001  node2:7002  node2:7003  node3:7004  node3:7005

11:驗證叢集

複製程式碼
進入每臺伺服器的redis/src目錄,記住引數  -c不可以少

redis-cli -h node1 -p 7000 -c

redis-cli -h node2 -p 7002 -c

redis-cli -h node3 -p 7004 -c

轉自:https://www.cnblogs.com/feiyun126/p/7248989.html