小編給大家分享一下如何使用三臺(tái)redis做主從+哨兵功能,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)建站于2013年成立,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元浦江做網(wǎng)站,已為上家服務(wù),為浦江各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話(huà):18982081108
這里采用1主2從的redis集群,3個(gè)sentinel搭建高可用redis集群。
redis-sentinel四大功能:
通知:當(dāng)監(jiān)控的某臺(tái)Redis實(shí)例發(fā)生問(wèn)題時(shí),可以通過(guò)API通知系統(tǒng)管理員和其他的應(yīng)用程序。 監(jiān)控:哨兵不斷的檢查master和slave是否正常的運(yùn)行。 自動(dòng)故障轉(zhuǎn)移:如果一個(gè)master不正常運(yùn)行了,哨兵可以啟動(dòng)一個(gè)故障轉(zhuǎn)移進(jìn)程,將一個(gè)slave升級(jí)成為master,其他的slave被重新配置使用新的master,并且應(yīng)用程序使用Redis服務(wù)端通知的新地址。 配置提供者:哨兵作為Redis客戶(hù)端發(fā)現(xiàn)的權(quán)威來(lái)源:客戶(hù)端連接到哨兵請(qǐng)求當(dāng)前可靠的master的地址。如果發(fā)生故障,哨兵將報(bào)告新地址
1、安裝redis環(huán)境
最新安裝包:redis-5.0.7.tar.gz
系統(tǒng):Linux
2、操作步驟
第一步:通過(guò)遠(yuǎn)程掛載的辦法將 windows上的安裝包下載到 Linux本地。
第二步:安裝編譯工具
1、yum install gcc gcc-c++ make -y
第三步:解壓
1、tar zxvf redis-5.0.7.tar.gz -C /opt/
第四步:安裝
1、cd redis-5.0.7 2、make 3、make PREFIX=/usr/local/redis install
第五步:創(chuàng)建軟連接
ln -s /usr/local/redis/bin/* /usr/local/bin/
第六步:?jiǎn)?dòng)安裝腳本,查看端口狀態(tài)
cd /redis-5.0.7/utils/ ./install_server.sh ###啟動(dòng)腳本,注意:這步一路回車(chē)到底就行了 將最后一個(gè)文件路徑改為: /usr/local/redis/bin/redis-server netstat -natp | grep 6379
開(kāi)、關(guān)redis與sentinal命令
1、redis-server /etc/redis/6379.conf 2、redis-sentinel /etc/redis/sentinel-6381.conf
除此之外,還可以用 redis_6379 控制其開(kāi)啟關(guān)閉:
1、/etc/init.d/redis_6379 stop //關(guān)閉 3、/etc/init.d/redis_6379 restart //重啟
三臺(tái)redis配置:
1,添加master(6379.conf)配置文件必要參數(shù)
port 6379 masterauth linlin #如果做故障切換,不論主從節(jié)點(diǎn)都要填寫(xiě)密碼且要保持一致 requirepass linlin
2,添加slave1(6380.conf)配置文件必要參數(shù)
port 6380 slaveof 10.211.55.7 6379 # ip為主redis的ip masterauth linlin #如果做故障切換,不論主從節(jié)點(diǎn)都要填寫(xiě)密碼且要保持一致 requirepass linlin
2,添加slave2(6381.conf)配置文件必要參數(shù)
port 6381 slaveof 10.211.55.7 6381 # ip為主redis的ip masterauth linlin #如果做故障切換,不論主從節(jié)點(diǎn)都要填寫(xiě)密碼且要保持一致 requirepass linlin
驗(yàn)證主從數(shù)據(jù)是否一致
redis-cli -h 10.211.55.7 -p 6381 auth linlin info
cp sentinel.conf /usr/local/redis/conf/sentinel-26379.conf #復(fù)制源碼中的哨兵配置文件,復(fù)制出三個(gè)文件:
修改文件(vim /usr/local/redis/conf/sentinel-26379.conf):
port 26379 sentinel monitor mymaster 10.211.55.7 6379 2 sentinel auth-pass mymaster linlin
vim /usr/local/redis/conf/sentinel-26380.conf
port 26380 sentinel monitor mymaster 10.211.55.7 6379 2 sentinel auth-pass mymaster linlin
vim /usr/local/redis/conf/sentinel-26381.conf
port 26381 sentinel monitor mymaster 10.211.55.7 6379 2 sentinel auth-pass mymaster linlin
啟動(dòng)三個(gè)sentinal服務(wù)命令:
redis-sentinel /etc/redis/sentinel-6379.conf
驗(yàn)證主redis故障,slave是否能切換頂替master。。。
一、主從無(wú)法切換
確保sentinel.conf配置文件不是完全拷貝的,這個(gè)文件會(huì)在運(yùn)行之后自動(dòng)添加一些數(shù)據(jù),導(dǎo)致拷貝之后沒(méi)有刪除無(wú)法自動(dòng)切換主從
二、確保 redis.conf中兩個(gè)屬性 requirepass masterauth 這兩個(gè)密碼配置都有 ,sentinel.conf中 sentinel auth-pass mymaster (password) 存在。
三、每個(gè)redis.conf配置文件中 slaveof ip port 確保從redis配置中都有該項(xiàng)配置,確保sentinel.conf中
sentinel monitor mymaster masterip + port + num(該項(xiàng)為數(shù)字 一般設(shè)為 1 或者2 ) 確保該項(xiàng)在三臺(tái)服務(wù)器上都一致
四、通過(guò)redis-cli 客戶(hù)端連接上redis 進(jìn)行auth認(rèn)證 輸入命令 info查看master以及slave情況
五、遠(yuǎn)程客戶(hù)端無(wú)法連接redis
redis版本在3.2.x之后出現(xiàn)這個(gè)問(wèn)題的 一定是沒(méi)有把這個(gè)配置好 protected-mode no ; bind 注釋掉
看完了這篇文章,相信你對(duì)“如何使用三臺(tái)redis做主從+哨兵功能”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
標(biāo)題名稱(chēng):如何使用三臺(tái)redis做主從+哨兵功能
網(wǎng)站地址:http://chinadenli.net/article46/iegceg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、用戶(hù)體驗(yàn)、建站公司、標(biāo)簽優(yōu)化、微信公眾號(hào)、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)