測試環境:centos + 單機 + 三主三從
redis版本:redis-5.0.5
一、redis安裝
1)安裝gcc。
yum install gcc-c++
redis-5.0.5.tar.gz
3)解壓。
tar -zxf redis-5.0.5.tar.gz
4)進入redis目錄。
cd redis-5.0.5
5)編譯。
make
6)安裝。
make prefix=/home/***/redis-5.0.5 install
二、集群搭建
1)建立節點。
mkdir redis-cluster
cd redis-cluster
mkdir 7001 7002 7003 7004 7005 7006
將redis-5.0.5下的redis.conf分別複製到7001~7006路徑下
2)修改7001~7006路徑下的配置檔案。
bind 192.168.0.99 #預設ip為127.0.0.1 需要改為其他節點機器可訪問的ip 否則建立集群時無法訪,和單機集群有區別
port 7001
daemonize yes #redis後台執行
pidfile /var/run/redis_7001.pid #pidfile檔案對應7001-7003
cluster-enabled yes #開啟集群
cluster-config-file /home/***/redis-5.0.5/redis-cluster/nodes_7001.conf #儲存節點配置
cluster-node-timeout 5000 #集群超時時間,節點超過這個時間沒反應就斷定是宕機
注意:cluster-config-file 引數最好指定絕對路徑,如果只填寫nodes_7001.conf,那麼在啟動redis的時候,會在輸入啟動命令的路徑下生成nodes_7001.conf,從而導致即使啟動redis,集群也無法識別。
例如:在/home/***/redis-5.0.5/redis-cluster 路徑下啟動了所有的redis,在殺掉7004的redis後,在/home/***/redis-5.0.5路徑下啟動了7004,此時7004的nodes_7004.conf生成在了/home/***/redis-5.0.5路徑下,而其他五個nodes_***x.conf生成在了/home/***/redis-5.0.5/redis-cluster 路徑下。此時即使7004redis在啟動,但在檢視集群時7004仍未加入集群。
可以再次殺掉7004後,在/home/***/redis-5.0.5/redis-cluster 路徑下重新啟動。
3)啟動各個redis
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7001/redis.conf
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7002/redis.conf
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7003/redis.conf
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7004/redis.conf
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7005/redis.conf
/home/***/redis-5.0.5/bin/redis-server /home/***/redis-5.0.5/redis-cluster/7006/redis.conf
指令碼:redis_start.sh
4)建立集群
/home/***/redis-5.0.5/bin/redis-cli --cluster create --cluster-replicas 1 192.168.0.99:7001 192.168.0.99:7002 192.168.0.99:7003 192.168.0.99:7004 192.168.0.99:7005 192.168.0.99:7006
建立集群語句只需執行一次,其中乙個redis出現異常後,只需處理異常並啟動該redis後,會自動加入集群。即使伺服器重啟,只要把所有的redis啟動後,會自動加入集群。
備註:
redis cluster 在5.0之後取消了ruby指令碼 redis-trib.rb的支援(手動命令列新增集群的方式不變),集合到redis-cli裡,避免了再安裝ruby的相關環境。直接使用redis-clit的引數–cluster 來取代。
參考:
linux環境安裝redis 5 0 5
redis安裝 tar zxvf redis 5.0.5.tar.gz 解壓 yum install gcc gcc c 環境安裝 cd redis 5.0.5 make make install mkdir p usr local redis bin mkdir p usr local redis...
Linux 系統安裝redis 5 0 5
2.檢視是否已安裝依賴包gcc rpm qa grep gcc gcc c 4.8.5 36.el7 6.2.x86 64 libgcc 4.8.5 36.el7 6.2.x86 64 gcc 4.8.5 36.el7 6.2.x86 64 3.在 opt 目錄下解壓 tar zxvf redis ...
一鍵部署redis 5 0 5
root test redis vim redis.sh bin bash 定義變數 redis dir root redis redis conf root redis redis 5.0.5 redis port1 netstat tanp grep 6379 head 1 awk f awk ...