redis集羣node
集羣中應該至少有三個節點,每一個節點有一備份節點。須要6臺服務器。c++
準備工做:安裝依賴包redis
[root@localhost ~]#yum install -y gcc g++ make gcc-c++ kernel-devel automake autoconf libtool 集羣機臺都要作vim
1.下載源碼包並解包編譯安裝服務器
wget http://download.redis.io/releases/redis-5.0.5.tar.gz #安裝redis5.0.5版本app
tar -zvxf redis-5.0.5.tar.gz -C /usr/local/ #解包測試
2.進入redis目錄裏,開始編譯並安裝ui
cd /usr/local/redis-5.0.5 #進入目錄裏若是有這個Makefile就能夠編譯安裝了spa
make #編譯server
make install
3.修改配置文件
vim /usr/local/redis-5.0.5/redis.conf
配置文件的修改路徑爲:
1)port 7001 #端口
2)cluster-enabled yes #啓用集羣模式
3)cluster-config-file nodes.conf #設置對應端口,不輸入的話就是默認port端口
4)cluster-node-timeout 5000 #超時時間
5)appendonly yes #開啓持久化模式
6)daemonize yes #後臺運行
7)protected-mode no #非保護模式
8)pidfile /var/run/redis_7001.pid #防止啓動多個進程副本,只啓動7001
(知識擴展:進程運行後會給.pid文件加一個文件鎖,只有得到該鎖的進程纔有寫入權限(F_WRLCK),
把自身的pid寫入該文件中,其餘試圖得到該鎖的進程會自動退出。)
9)bind 172.20.10.7 #127.0.0.1改成本機ip地址,可用 ifconfig 或 ip a 查看ip
啓動腳本
腳本改好後 傳給其餘幾臺集羣機臺 scp -r /usr/local/redis-5.0.5 192.168.17.10:/usr/local/
修改內容:
1)port 7002
2)pidfile /var/run/redis_7002.pid
3) bind 192.168.17.11
mv /usr/local/bin/redis-server /usr/local/redis-5.0.5/
cd /usr/local/redis-5.0.5
./redis-server redis.conf 啓動集羣 每臺機都要作
ps aux | grep redis 查看節點是否啓動成功
cd redis-5.0.5/src/
cp redis-cli /usr/local/redis-5.0.5
/usr/local/redis-5.0.5/redis-cli --cluster create 192.168.17.10:7001 192.168.17.11:7002 192.168.17.12:7003 192.168.17.13:7004 192.168.17.14:7005 192.168.17.15:7006 --cluster-replicas 1 #啓動集羣命令(注意:根據本身的IP啓動)
測試集羣
cd /usr/local/redis-5.0.5
/usr/local/redis-5.0.5/redis-cli -h 192.168.17.10 -p 7001 -c 進入192.168.17.10redis裏面
cluster nodes #查詢集羣結點信息
cluster info # 查詢集羣狀態信息
(知識擴展:設置主從密碼)
須要在redis01~redis06的配置文件裏redis.conf修改這兩行
masterauth 123456 #主從密碼
requirepass 123456 #訪問密碼
而後重啓服務