Redis高可用集群redis-cluster詳解
哨兵模式主要解決了手動切換主從節(jié)點的問題
1 , 哨兵模式的缺陷
.主從節(jié)點切換的時候存在訪問瞬斷,等待時間較長,
.只有一個master節(jié)點提供寫,slave節(jié)點提供讀,盡管寫的效率是10萬/秒,在電商大促時,寫的壓力全部集中在master節(jié)點上。
.master節(jié)點的內(nèi)存不能設(shè)置的太大,否則持久化文件過大,影響主從同步
2,redis-cluster集群模式
Redis Cluster是社區(qū)版推出的Redis分布式集群解決方案,主要解決Redis分布式方面的需求,比如,當遇到單機內(nèi)存,并發(fā)和流量等瓶頸的時候,Redis Cluster能起到很好的負載均衡的目的。
Redis Cluster集群節(jié)點最小配置6個節(jié)點以上(3主3從),其中主節(jié)點提供讀寫操作,從節(jié)點作為備用節(jié)點,不提供請求,只作為故障轉(zhuǎn)移使用。
優(yōu)點:
1.沒有中心架構(gòu),有多個主節(jié)點,每個主節(jié)點都可以讀寫
2,數(shù)據(jù)按照slot分布存儲在多個節(jié)點,節(jié)點之間數(shù)據(jù)共享,可以動態(tài)調(diào)整數(shù)據(jù)分布
3,可線性拓展到1000多個節(jié)點,節(jié)點可以動態(tài)新增和刪除
redis-cluster集群安裝
1,在redis安裝目錄下/opt/redis-4.0.6/創(chuàng)建redis-cluster目錄,在該目錄下面再創(chuàng)建6個目錄
,分別命名8001,8002,8003,8004,8005,8006。文件結(jié)構(gòu)如下
2, 將redis安裝目錄/usr/local/redis-4.0.6下的redis.conf文件拷貝至8001文件夾,并修改以下配置:
daemonize yes #開啟后臺運行 port 8001 #工作端口 bind 172.16.0.15 #綁定機器的內(nèi)網(wǎng)IP,一定要設(shè)置呀老鐵,不要用127.0.0.1 dir /usr/local/redis-cluster/8001/ #指定工作目錄,rdb,aof持久化文件將會放在該目錄下,不同實例一定要配置不同的工作目錄 cluster-enabled yes #啟用集群模式 cluster-config-file nodes-8001.conf #生成的集群配置文件名稱,集群搭建成功后會自動生成,在工作目錄下 cluster-node-timeout 5000 #節(jié)點宕機發(fā)現(xiàn)時間,可以理解為主節(jié)點宕機后從節(jié)點升級為主節(jié)點時間 appendonly yes #開啟AOF模式 pidfile /var/run/redis_8001.pid #pid file所在目錄
3. 把8001文件夾下的redis.conf文件拷貝到其他5個目錄,并重新修改port 、dir、cluster-config-file 三個屬性,這里可以使用sed命令快速修改
[root@VM_0_15_centos redis-cluster]# sed -i 's/8001/8002/g' 8002/redis.conf [root@VM_0_15_centos redis-cluster]# sed -i 's/8001/8003/g' 8003/redis.conf [root@VM_0_15_centos redis-cluster]# sed -i 's/8001/8004/g' 8004/redis.conf [root@VM_0_15_centos redis-cluster]# sed -i 's/8001/8005/g' 8005/redis.conf [root@VM_0_15_centos redis-cluster]# sed -i 's/8001/8006/g' 8006/redis.conf
4, 由于創(chuàng)建集群需要用到redis-trib這個命令,它依賴Ruby和RubyGems,因此我們要先安裝一下
百度網(wǎng)盤下載地址:
鏈接: https://pan.baidu.com/s/1WkQPakbXstinzCxRiyM5MQ?pwd=1ud4
提取碼: 1ud4
從這個鏈接下載 ruby-2.3.1.tar.gz 和 redis-3.3.0.gem
tar -zxvf ruby-2.3.1.tar.gz
a, cd ruby-2.3.1
b, ./configure -prefix=/opt/ruby
c, make && make install //過程會有點慢,大概5-10分鐘
d, 然后gem install -l redis-3.3.0.gem //若沒有g(shù)em需要安裝yum install gem -y
5 , Ruby安裝完成之后,我們開始啟動6個節(jié)點
[root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8001/redis.conf [root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8002/redis.conf [root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8003/redis.conf [root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8004/redis.conf [root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8005/redis.conf [root@VM_0_15_centos redis-cluster]# ./src/redis-server redis-cluster/8006/redis.conf
6, 查看redis集群啟動情況
[root@yangxXNJ-master ~]# ps -ef|grep redis root 28079 6654 0 22:23 pts/0 00:00:00 ./redis-server *:6379 root 28238 1 0 22:24 ? 00:00:04 ./src/redis-server 192.168.145.4:8001 [cluster] root 28517 1 0 22:25 ? 00:00:04 ./src/redis-server 192.168.145.4:8002 [cluster] root 28591 1 0 22:26 ? 00:00:04 ./src/redis-server 192.168.145.4:8003 [cluster] root 28662 1 0 22:26 ? 00:00:04 ./src/redis-server 192.168.145.4:8004 [cluster] root 28701 1 0 22:26 ? 00:00:04 ./src/redis-server 192.168.145.4:8005 [cluster] root 28718 1 0 22:26 ? 00:00:04 ./src/redis-server 192.168.145.4:8006 [cluster]
6個節(jié)點已經(jīng)正常啟動
7,[root@VM_0_15_centos redis-4.0.6]# ./src/redis-trib.rb create --replicas 1 192.168.145.4:8001 192.168.145.4:8002 192.168.145.4:8003 192.168.145.4:8004 192.168.145.4:8005 192.168.145.4:8006
到此這篇關(guān)于Redis高可用集群redis-cluster的文章就介紹到這了,更多相關(guān)redis-cluster高可用集群內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Redis中ServiceStack.Redis和StackExchange.Redis區(qū)別詳解
本文主要介紹了Redis中ServiceStack.Redis和StackExchange.Redis區(qū)別詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05redis實現(xiàn)計數(shù)器-防止刷單方法介紹
本文主要向大家介紹了redis實現(xiàn)計數(shù)器防止刷單的方法和有關(guān)代碼,具有一定參考價值,需要的朋友可以了解下。2017-11-11ubuntu 16.04安裝redis的兩種方式教程詳解(apt和編譯方式)
這篇文章主要介紹了ubuntu 16.04安裝redis的兩種方式教程詳解(apt和編譯方式),需要的朋友可以參考下2018-03-03Windows環(huán)境下查看、添加、修改redis數(shù)據(jù)庫的密碼兩種方式
在Windows系統(tǒng)上設(shè)置Redis密碼的過程與Linux系統(tǒng)類似,但需注意幾個關(guān)鍵步驟以確保正確配置,這篇文章主要給大家介紹了關(guān)于Windows環(huán)境下查看、添加、修改redis數(shù)據(jù)庫的密碼兩種方式,需要的朋友可以參考下2024-07-07