CentOS 6.8 minimal版本安裝Redis集群之RedisCluster

環(huán)境:CentOS6.8 minimal版本?

1、安裝yum install gcc?

2、安裝yum install tcl?

3、安裝curl -sSL https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash

4、執(zhí)行source /etc/profile.d/rvm.sh?

5、安裝rvm install 1.9.3?

6、安裝yum install -y rubygems?

7、安裝gem install redis --version 3.0.0?

8、從官網(wǎng)上下載redis-3.2.5.tar.gz?

9、解壓tar -xvsf redis-3.2.5.tar.gz?

10、執(zhí)行cd redis-3.2.5進(jìn)入目錄,執(zhí)行make命令?

至此,C編譯環(huán)境安裝完畢,redis安裝完畢,ruby安裝完畢,ruby主要是cluster集群創(chuàng)建工具需要用ruby環(huán)境。?

接下來部署redis_cluster集群環(huán)境?

11、準(zhǔn)備三臺(tái)機(jī)器A,B,C(redis集群master過半死掉會(huì)down機(jī),所以兩臺(tái)對(duì)于高可用毫無意義)?

12、分別創(chuàng)建目錄mkdir /opt/redis_cluster?

13、進(jìn)入目錄cd /opt/redis_cluster?

14、?

A機(jī)器上/opt/redis_cluster目錄下創(chuàng)建名字為“7000”與“7001”的文件夾:mkdir 7000 7001?

B機(jī)器上/opt/redis_cluster目錄下創(chuàng)建名字為“7002”與“7003”的文件夾:mkdir 7002 7003?

C機(jī)器上/opt/redis_cluster目錄下創(chuàng)建名字為“7004”與“7005”的文件夾:mkdir 7004 7005?

15、?

三臺(tái)機(jī)器分別進(jìn)入/opt/redis-3.2.5/src目錄,cp一份redis.conf文件出來到/opt/redis_cluster/7000目錄下,修改redis.conf文件,原目錄下的不用動(dòng)。具體修改事宜:(僅A機(jī)器)?

原:port?6379?

現(xiàn):port 7000(修改運(yùn)行端口)?

原:bind?127.0.0.1?

現(xiàn):bind 192.168.10.239 127.0.0.1 (注意,局域網(wǎng)IP一定要放在本機(jī)IP前面)?

原:daemonize?no?

現(xiàn):daemonize yes(修改后臺(tái)啟動(dòng))?

原:#?cluster-enabled yes?

現(xiàn):cluster-enabled yes?

原:#?cluster-config-file?nodes-6379.conf?

現(xiàn):cluster-config-file /opt/redis_cluster/7000/nodes.conf?

原:#?cluster-node-timeout 15000?

現(xiàn):cluster-node-timeout 15000?

原:appendonly?no?

現(xiàn):appendonly yes?

OK保存,將這一份修改的redis.conf文件放到/opt/redis_cluster/7000下,注意文件名需與redis.conf中的port數(shù)值相同,port為7000,那么這份conf文件存放的目錄名字也一定是7000。?

同理A機(jī)器上的7000修改完畢,7001也如此創(chuàng)建。?

同理B機(jī)器上的7002與7003也這樣創(chuàng)建。?

同理C機(jī)器上的7004與7005也這樣創(chuàng)建。?


16、分別執(zhí)行A,B,C機(jī)器上的redis?

A機(jī)器執(zhí)行:?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7000/redis.conf?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7001/redis.conf?

B機(jī)器執(zhí)行:?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7002/redis.conf?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7003/redis.conf?

C機(jī)器執(zhí)行:?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7004/redis.conf?

/opt/redis-3.2.5/src/redis-server /opt/redis_cluster/7005/redis.conf?

17、在A機(jī)器上,進(jìn)入/opt/redis-3.2.5/src,執(zhí)行?

./redis-trib.rb create --replicas 1 192.168.10.239:7000 192.168.10.239:7001 192.168.10.240:7002 192.168.10.240:7003 192.168.10.241:7004 192.168.10.241:7005?

提示成功OK。?

18、set測試:(切記使用集群模式連接,否則出現(xiàn)movedError)?

/opt/redis-3.2.5/src/redis-cli -c -h 192.168.10.239 -p 7000?

set a a?

提示reslove到其他IP的機(jī)器上了。?

19、如果中途出現(xiàn)錯(cuò)誤了,想徹底重置:?

進(jìn)入三臺(tái)機(jī)器中的7000-7005的目錄下,將nodes.conf文件刪除掉,kill掉所有redis的進(jìn)程,重啟redis進(jìn)程。?

rm -rf /opt/redis_cluster/7000/nodes.conf?

rm -rf /opt/redis_cluster/7001/nodes.conf?

rm -rf /opt/redis_cluster/7002/nodes.conf?

rm -rf /opt/redis_cluster/7003/nodes.conf?

rm -rf /opt/redis_cluster/7004/nodes.conf?

rm -rf /opt/redis_cluster/7005/nodes.conf?

20、參考文章:?

http://www.cnblogs.com/junl0513/p/833f4d3eefc69485958fe83b5c9057d7.html?

http://www.cnblogs.com/yuanermen/p/5717885.html?

http://blog.csdn.net/ownfire/article/details/46624005?

http://blog.csdn.net/prl18353364833/article/details/52459828?

http://blog.csdn.net/c77_cn/article/details/38227797?

http://blog.51yip.com/nosql/1726.html?

http://www.cnblogs.com/kreo/p/4423362.html?

http://blog.csdn.net/rockstar541/article/details/30245493?

21、常見問題:?

[ERR] Node is not empty. Either the node already knows other nodes?

解決方法:?

1)、將需要新增的節(jié)點(diǎn)下aof、rdb等本地備份文件刪除;?

2)、同時(shí)將新Node的集群配置文件刪除,即:刪除你redis.conf里面cluster-config-file所在的文件;?

3)、再次添加新節(jié)點(diǎn)如果還是報(bào)錯(cuò),則登錄新Node,./redis-cli–h x –p對(duì)數(shù)據(jù)庫進(jìn)行清除:?

172.168.63.201:7001>? flushdb????? #清空當(dāng)前數(shù)據(jù)庫

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容