您好,登錄后才能下訂單哦!
內容要點:
一、Redis Cluster(Redis集群)簡介:
二、集群搭建需要的環境:
三、部署集群:
一、Redis Cluster(Redis集群)簡介:
(1)redis是一個開源的key value存儲系統,受到了廣大互聯網公司的青睞。redis3.0版本之前只支持單例模式,在3.0版本及以后才支持集群,這里我搭建用的是最新的版本 redis-5.0.7;
(2)redis集群采用P2P模式,是完全去中心化的,不存在中心節點或者代理節點;
(3)redis集群是沒有統一的入口的,客戶端(client)連接集群的時候連接集群中的任意節點(node)即可,集群內部的節點是相互通信的(PING-PONG機制),每個節點都是一個redis實例。
二、集群搭建需要的環境:
(1)Redis集群至少需要3個節點,因為投票容錯機制要求超過半數節點認為某個節點掛了該節點才是掛了,所以2個節點無法構成集群。
(2)要保證集群的高可用,需要每個節點都有從節點,也就是備份節點,所以Redis集群至少需要6臺服務器。
(3)安裝ruby環境,redis集群運行需基于ruby環境
三、部署集群:
為了節省資源,這邊準備了兩臺虛擬機,各自安裝三個網卡,這樣總共就是六個網卡,也就是同時運行6個 redis 實例。
角色 | IP地址 |
redis1 | 192.168.220.131 |
redis2 | 192.168.220.164 |
redis3 | 192.168.220.165 |
redis4 | 192.168.220.135 |
redis5 | 192.168.220.166 |
redis6 | 192.168.220.167 |
第一步:先都安裝好 redis 服務
第二步:修改配置文件,所有節點配置一樣
vim?/etc/redis/6379.conf 1、首先要注釋掉?bind?項: //redis?中?bind?選項默認監聽所有網卡 2、做如下操作: protected-mode?no??????//關閉保護模式 port?6379??????????????//開啟監聽端口 daemonize?yes??????????//以獨立進程啟動 cluster-enabled?yes????//開啟群集功能 cluster-config-file?nodes-6379.conf?????//群集名稱文件位置 cluster-node-timeout?15000????????//群集超時時間設置 appendonly?yes????????????????????//開啟aof持久化
(1)重啟服務:
/etc/init.d/redis_6379?restart
(2)重啟過后,此時在 /var/lib/redis/6379 這個目錄下,就會多出兩個文件:
appendonly.aof :持久化文件
nodes-6379.conf :節點首次啟動生成的配置文件
第三步:這步只需要在 master 主服務器中操作
1、導入 key 文件:
gpg?--keyserver?hkp://keys.gnupg.net?--recv-keys?409B6B1796C275462A1703113804BB82D39DC0E3
2、安裝 rvm :
curl?-sSL?https://get.rvm.io?|?bash?-s?stable
3、執行環境變量:
source?/etc/profile.d/rvm.sh
rvm?list?known???//列出?Ruby?可安裝的版本
4、安裝 Ruby2.4.1 版本
rvm?install?2.4.1
5、使用 Ruby2.4.1 版本
rvm?use?2.4.1
ruby?-v????//查看當前?Ruby2.4.1?版本
6、再次安裝 Redis
gem?install?redis
7、重新啟動 redis
/etc/init.d/redis_6379?restart
第四步:創建群集
六個實例分為三組,每組一主一從,–replicas 1 表示每組一個從,下面交互的時候,需要輸入 yes 才可以創建。
使用源碼解壓目錄中的 redis-trib.rb 工具創建群集。
redis-cli?--cluster?create?192.168.220.131:6379?192.168.220.164:6379?192.168.220.165:6379?192.168.220.135:6379?192.168.220.166:6379?192.168.220.167:6379?--cluster-replicas?1
第五步:驗證:
(1)隨意登錄一臺 redis,創建一對鍵值:
?redis-cli?-h?192.168.220.164?-p?6379????????//連接164這臺主機
(2)此時,我們連接登錄到另外一臺主機上,查看鍵名:
redis-cli?-h?192.168.220.131?-p?6379??????//連接到131這臺主機上
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。