安裝環境:node
兩臺虛擬機都是Centos 7.0redis
IP分別爲:192.168.149.132 192.168.149.133ruby
Redis採用的版本是redis-3.2.4服務器
集羣是採用兩臺虛擬機模擬8個節點,一臺機器4個節點,建立出4 master、4salve 環境。app
一、首先在192.168.149.132上安裝單機版工具
下載安裝包:測試
wget http://download.redis.io/releases/redis-3.2.4.tar.gzui
解壓:命令行
tar –xvf redis-3.2.4.tar.gz日誌
進入安裝目錄進行安裝,注意要使用有root權限的帳戶進行操做,由於在安裝過程當中須要操做許多系統文件路徑,若是沒有權限則會安裝報錯。
make && make install
其中有許多依賴包,若是缺就安裝便可,通常不會缺。
至此單機redis安裝完畢,接下來啓動服務:
cd src
./redis-server
Ok服務啓動成功
接下來咱們小小測試一下。沒問題!
通常redis咱們常常作爲消息服務器使用,以下:
固然redis做爲消息服務器有更加複雜的應用,能夠本身去摸索。
二、集羣配置,在192.168.149.133上一樣安裝redis
拷貝文件:
redis-trib.rb是官方提供的一款集羣工具,後面要用
建立redis節點:
在redis安裝目錄下建立 redis_cluster目錄
在 redis_cluster 目錄下,建立名爲70十、70十一、70十二、7013的目錄
並將 redis.conf 拷貝到這三個目錄中,分別修改這三個redis.conf配置文件,修改內容以下:
port 7010 //端口7010 7011 7012 7013
bind 本機ip //默認ip爲127.0.0.1 須要改成其餘節點機器可訪問的ip 不然建立集羣時沒法訪問對應的端口,沒法建立集羣
daemonize yes //redis後臺運行
pidfile /var/run/redis_7010.pid //pidfile文件對應
cluster-enabled yes //開啓集羣 把註釋#去掉
cluster-config-file nodes_7010.conf //集羣的配置 配置文件首次啓動自動生成
cluster-node-timeout 15000 //請求超時 默認15秒,可自行設置
appendonly yes //aof日誌開啓 有須要就開啓,它會每次寫操做都記錄一條日誌
啓動集羣服務:
查看啓動狀況:
沒有問題
Redis 官方提供了 redis-trib.rb 這個工具,就在解壓目錄的 src 目錄中,以前已將它複製到 /usr/local/bin 目錄中,能夠直接在命令行中使用了。使用下面這個命令便可完成集羣。
redis-trib.rb create --replicas 1 192.168.149.133:7010 192.168.149.133:7011 192.168.149.133:7012 192.168.149.133:7013 192.168.149.132:7014 192.168.149.132:7015 192.168.149.132:7016 192.168.149.132:7017
報錯了,由於這個工具是用 ruby 實現的,因此須要安裝 ruby。
安裝ruby:
yum install ruby ruby-devel rubygems rpm-build
gem install redis
安裝成功後執行以前的命令,又報錯了:
redis集羣不只須要開通redis客戶端鏈接的端口,並且須要開通集羣總線端口
集羣總線端口爲redis客戶端鏈接的端口 + 10000
修改防火牆配置將端口加入進去,注意兩臺虛擬機都須要:
cd /etc/sysconfig
vi iptables
保存後重啓防火牆
ps:若是沒有iptables-services服務的話,能夠先安裝:yum install iptables-services
好了,如今再次建立集羣:
終於配置成功啓動
ps:這裏一不當心就有個巨坑錯誤以下:
提示某個節點不爲空,讓你去檢查,其實這裏是由於咱們在上一次啓動配置或者redis非正常中止的時候,有生成過一些.aof或者.rdb文件,只須要刪除掉就ok。
網上有相關方法,若是碰到能夠針對性的去找找。
接下來咱們試試是否可使用了。
使用192.168.149.133的7011節點輸入數據,7010節點監聽
中文竟然被轉譯了,再來一次
通過測試咱們的集羣可使用了啦!簡單吧