1. 程式人生 > >Redis4.0.8安裝以及叢集的配置

Redis4.0.8安裝以及叢集的配置

1、下載 redis-4.0.8.tar.gz

我的環境是centos7.3,redis使用4.0.8,後邊的ruby使用2.3.3

這個就不多說了,下載解壓,不會了百度一下

注意:中間遇到問題可以參考  http://blog.csdn.net/DragonFreedom/article/details/79512686

2、安裝

解壓完進入解壓目錄,進行以下兩步操作,注意第二行命令的prefix指的是你想安裝的位置,並且這個目錄要存在,假設/redis不存在,他就會預設安裝到/usr/local/bin下了

$ make
$ make install prefix=/usr/local/redis

3、啟動

進入/usr/local/redis就會看到一個bin了,這就是安裝好的redis,進入bin

  • 前臺啟動:./redis-server 
  • 後臺啟動:複製redis.conf (在redis原始碼下,就是解壓的那個資料夾)到redis的安裝目錄(就是你那個bin裡),修改redis.conf中的  daemonize yes ,執行下邊的命令就啟動了,下一條是關閉命令
$ ./redis-server redis.conf 
$ ./redis-cli shutdown

4、關於./redis-cli

redis-cli -p 埠 -h ip地址 <-c>連線叢集時使用此引數

這個在連線和關閉redis的時候都適用,如果是叢集的話,需要一一指定其host和port

5、叢集(以6個節點部署在同一個虛擬機器為例)

  • 建立6個節點:在/user/local下建立redis-cluster資料夾,複製剛才安裝的redis的安裝目錄到這裡,複製6個,效果如下:


  • 修改redis.conf配置檔案:
# 指定訪問的IP,預設是127.0.0.1,但是設定成這個外邊就無法訪問,改成你自己的虛擬機器的IP就好
bind 192.168.0.151

# 為每一個redis指定自己的埠我的是7001-7006
port 7001

#關閉保護模式,這個也沒什麼大問題,設定成yes的話後邊連線起可能比較麻煩,還可能報錯,直接設定成no
protected-mode no

# 這一項指的是後臺執行,前邊其實已經設定過了,為yes
daemonize yes

注意:每一個redis的都要修改,四項中port這一項每個不一樣,其他相同

  • 安裝ruby環境:下載一個redis-4.0.1.gem,執行以下步驟,
yum install ruby
yum install rubygems
gem install redis-4.0.1.gem
注意:如果執行第三步的時候遇到問題(redis requires Ruby version >= 2.2.2),是ruby版本的問題,按照這個教程操作就可以解決問題:http://blog.csdn.net/fengye_yulu/article/details/77628094 ,解決了之後再執行第三步
  • 啟動所有redis例項:本來是要寫個.sh一次執行,但是出了點問題,可以直接將以下命令複製到命令列執行,效果相同,順便附上關閉redis的命令
cd redis01
./redis-server redis.conf
cd ..
cd redis02
./redis-server redis.conf
cd ..
cd redis03
./redis-server redis.conf
cd ..
cd redis04
./redis-server redis.conf
cd ..
cd redis05
./redis-server redis.conf
cd ..
cd redis06
./redis-server redis.conf
cd ..
./redis01/redis-cli -h 192.168.0.151 -p 7001 shutdown
./redis01/redis-cli -h 192.168.0.151 -p 7002 shutdown
./redis01/redis-cli -h 192.168.0.151 -p 7003 shutdown
./redis01/redis-cli -h 192.168.0.151 -p 7004 shutdown
./redis01/redis-cli -h 192.168.0.151 -p 7005 shutdown
./redis01/redis-cli -h 192.168.0.151 -p 7006 shutdown

注意:執行這些命令的位置顯而易見,實在redis-cluster下,如果你的每個redis不是向我redis01這樣命名,那就請自自行修改命令,換成你的檔名。關閉redis的命令中的host和port根據你自己的寫

  • 叢集:複製redis原始碼src下的redis-trib.rb指令碼到redis-cluster下,執行以下命令
./redis-trib.rb create --replicas 1 192.168.0.151:7001 192.168.0.151:7002 192.168.0.151:7003 192.168.0.151:7004 192.168.0.151:7005 192.168.0.151:7006

注意:host和port還是你自己的,記得改

這是效果圖,輸入yes,如果這一步失敗了,可能是防火牆或者其他問題,可以參考文章開頭我的解決方案(防火牆和iptables問題),還不行的話自行百度。


接著他會自己配置叢集,成功後的效果如下


6、總結