redis從下載到叢集化安裝
yum install ruby ruby-devel rubygems rpm-build -y && gem install redis --version 3.0.0
gem install redis
上面的步驟完事了,接下來執行一下redis-trib.rb
/usr/local/redis-3.2.1/src/redis-trib.rb
Usage: redis-trib <command> <options> <arguments ...>
reshard host:port
--to <arg>
--yes
--slots <arg>
--from <arg>
check host:port
call host:port command arg arg .. arg
set-timeout host:port milliseconds
add-node new_host:new_port existing_host:existing_port
--master-id <arg>
--slave
del-node host:port node_id
fix host:port
import host:port
--from <arg>
help (show this help)
create host1:port1 ... hostN:portN
--replicas <arg>
For check, fix, reshard, del-node, set-timeout you can specify the host and port of any working node in the cluster.
看到這,應該明白了吧, 就是靠上面這些操作 完成redis叢集搭建的.
確認所有的節點都啟動,接下來使用引數create 建立
cd /usr/local/redis3.0/src
./redis-trib.rb create --replicas 1 172.16.101.113:7005 172.16.101.113:7004 172.16.101.113:7003 172.16.101.112:7002 172.16.101.112:7001 172.16.101.112:7000
解釋下, --replicas 1 表示 自動為每一個master節點分配一個slave節點 上面有6個節點,程式會按照一定規則生成 3個master(主)3個slave(從)
前面已經提醒過的 防火牆一定要開放監聽的埠,否則會建立失敗。
執行中,提示Can I set the above configuration? (type 'yes' to accept): yes //輸入yes
接下來 提示 Waiting for the cluster to join.......... 安裝的時候在這裡就一直等等等,沒反應,傻傻等半天,看這句提示上面一句,Sending Cluster Meet Message to join the Cluster.
這下明白了,我剛開始在一臺Server上去配,也是不需要等的,這裡還需要跑到Server2上做一些這樣的操作。
在192.168.1.238, redis-cli -c -p 700* 分別進入redis各節點的客戶端命令視窗, 依次輸入 cluster meet 192.168.1.238 7000……
回到Server1,已經建立完畢了。
檢視一下 /usr/local/redis/src/redis-trib.rb check 192.168.1.237:7000
到這裡叢集已經初步搭建好了。
如果需要做成認證模式,需要在redis.conf中加入
requirepass 123456
需要叢集化部署成功後再加,加了立刻生效。
如果是一開始就加入密碼的話,啟動的需要更改
vim /usr/lib/ruby/gems/1.8/gems/redis-3.3.0/lib/redis/client.rb,然後修改passord 為對應123456四、測試
1)get 和 set資料
redis-cli -c -p 7000
進入命令視窗,直接 set hello howareyou
直接根據hash匹配切換到相應的slot的節點上。
還是要說明一下,redis叢集有16383個slot組成,通過分片分佈到多個節點上,讀寫都發生在master節點。
2)假設測試
果斷先把192.168.1.238服務Down掉,(192.168.1.238有1個Master, 2個Slave) , 跑回192.168.1.238, 檢視一下 發生了什麼事,192.168.1.237的3個節點全部都是Master,其他幾個Server2的不見了
測試一下,依然沒有問題,叢集依然能繼續工作。
原因: redis叢集 通過選舉方式進行容錯,保證一臺Server掛了還能跑,這個選舉是全部叢集超過半數以上的Master發現其他Master掛了後,會將其他對應的Slave節點升級成Master.
疑問: 要是掛的是192.168.1.237怎麼辦? 哥試了,cluster is down!! 沒辦法,超過半數掛了那救不了了,整個叢集就無法工作了。 要是有三臺Server,每臺兩Master,切記對應的主從節點
不要放在一臺Server,別問我為什麼自己用腦子想想看,互相交叉配置主從,掛哪臺也沒事,你要說同時兩臺crash了,呵呵噠......
3)關於一致性
我還沒有這麼大膽拿redis來做資料庫持久化哥網站資料,只是拿來做cache,官網說的很清楚,Redis Cluster is not able to guarantee strong consistency.
相關推薦
redis從下載到叢集化安裝
yum install ruby ruby-devel rubygems rpm-build -y && gem install redis --version 3.0.0 gem install redis 上面的步驟完事了,接下來執行一下redis-trib.rb
Redis 從下載安裝到 Redis sentinel 的高可用經驗總結
Step 1:Redis的下載安裝 官網下載redis 解壓並安裝: [[email protected] ~]# cd /home/ [[email protected] home]# wget http://download.redis.io/r
110 redis的哨兵叢集 docker安裝
主要內容: 1 哨兵叢集:https://blog.csdn.net/yaooch/article/details/80167571 a 哨兵的介紹:Sentinel(哨兵)是Redis的高可用性解決方案:由一個或多個Sentinel例項組成的Sentinel系統可以監視任意多個主伺服器,
redis單機與叢集的安裝
2018年11月03日 13:59:32 Balaenoptera musculu 閱讀數:4 標籤: redis 叢集
從最小化安裝開始搞CentOS7
CentOS7 最小化安裝(minimal)安裝過程: 如果被牆掉,可以找 2.安裝好之後(安裝過程自行百度),只有最小化終端命令介面,輸入賬號密碼進入賬戶終端。 比如我的賬號是fubo: login: fubo Password:******** 就進入這個介面
MySQL下載、安裝圖解(教程) 圖形化安裝方式
一、 下載圖解(教程) http://dev.mysql.com/downloads/ 1、點選“Downloads”—>“Community”—>“MYSQL on Windows”—>“MySQL Installer” 2、翻到網頁底部,點選“Do
linux redis最新官方叢集安裝配置教程
Redis叢集介紹 Redis 叢集是一個提供在多個Redis間節點間共享資料的程式集。 Redis叢集並不支援處理多個keys的命令,因為這需要在不同的節點間移動資料,從而達不到像Redis那樣的效能,在高負載的情況下可能會導致不可預料的錯誤. Redis 叢集通過分割槽來提
redis進化五(1):redis叢集的安裝使用(redis-cluster) 及其 原理
叢集結構 特點 1、所有redis節點(包括主和從)彼此互聯(兩兩通訊),底層使用內部的二進位制傳輸協議,優化傳輸速度; &nb
安裝redis(win7+叢集安裝)
一、安裝win7版本 1.下載redis github下載地址:https://github.com/MicrosoftArchive/redis/releases 網盤下載地址:連結:https://pan.baidu.com/s/15NtjKtc_5t37azTTmQqsvQ 提取碼:p
【Redis】手把手教你Windows中redis的下載,安裝,設定及啟動
文章目錄 1、系統環境 2、Redis下載 3、Redis在Windows中安裝 4、Redis啟動 5、環境變數設定
【Unity3D】簡單詳解 Protobuf 案例 從下載到安裝和使用
Protobuf介紹 Protocol Buffers是Google的一種資料交換的格式,一種輕量&高效的結構化資料儲存格式。可以用於結構化資料序列化(序列化)。由於它是二進位制的格式,比使用xml,Json進行資料交換快很多。 下面開始講解使用整個過程:
【Axure】Axure RP 9 下載、破解安裝和漢化步驟
目錄 一、Axure RP 9 下載 二、Axure RP 9 安裝 三、Axure RP 9 破解 四、Axure RP 9 漢化 一、Axure RP 9 下載 (1)最新版本 Axure RP 9 下載地址:點選前往下載 (2)漢化包下載、歷史
Redis在windows下的安裝下載
1買個mac和臺式電腦安裝個Linux系統 2教程見:https://jingyan.baidu.com/article/0f5fb099045b056d8334ea97.html powerShell是cmd的進化版 https://baike.baidu.com/i
redis搭建公網叢集(6個幾點三主三從)
## 注意以下是公網搭建,請全部讀完了在搭建,你會少走很多彎路 1,首先安裝redis單機版,網上教程很多就不介紹了。 2,redis叢集是用的ruby指令碼,所以要想執行該指令碼,需要ruby環境.。對應redis的原始碼src目錄下的redis-trib.rb,red
Linux下安裝Redis並實現遠端連線,Redis Desktop Manager視覺化連線
1.下載redis redis不是安裝包,例如tomcat,mysql等都是安裝包直接解壓就可以使用,redis是原始檔,需要用編譯後才可以使用。 2.使用xftp把壓縮包拖入到root/redis/資料夾下,並解壓 tar -zxvf redis-5.0.0.
Redis主從架構和主從從架構叢集搭建詳細步驟
,本文主要介紹Redis主從架構和主從從架構,耐心閱讀完本文,相信你會對Redis主從架構和主從從架構有一個清晰的認識。 Redis主從複製的功能非常強大,它有以下好處: 1.避免Redis單點故障 2.構建讀寫分離架構,滿足讀多寫少的應用場景 1.主從架
Redis分散式叢集部署安裝及細節(一臺主機搭建多個服務--偽叢集)
Redis分散式叢集部署安裝及細節 一: redis cluster介紹篇 1:redis cluster的現狀 目前redis支援的cluster特性(已親測): 1):節點自動發現 2):slave->master選舉,叢集容錯 3):Hotreshar
windows本地安裝redis單機和叢集配置
1、下載redis地址:https://github.com/dmajkic/redis/downloads 直接解壓選擇32或者64位,重新命名即可 2、啟動服務: cmd進入根目錄執行redis-server.exe redis.conf //啟動正常能看到redis操作
redis的docker化安裝
只需要關注幾點: 埠對映 配置檔案對映 持久化對映 要做的就是拉取官方映象並把關注的幾個點處理一下就好了: docker pull redis docker run -d -p 6379:6379 -v /data/redis/redis.conf:/etc/redis/redi
Redis分散式叢集部署安裝及細節(多主機搭建叢集開啟多個服務)
注意: redis的安裝步驟與同機器下一致,這裡只講解個別不同配置的修改 每臺主機都有固定的IP 10.25.84.105SZD-L0073672 此臺機器部署了多個服務 10.25.84.106SZD-L0073671 10.25.84.69 SZD-L007