1. 程式人生 > >多主機 Redis 叢集搭建

多主機 Redis 叢集搭建

1、Redis安裝包

連結:https://pan.baidu.com/s/1VPm2RZFohhL3xLhCzfgBUg 密碼:qfn5

叢集環境:

192.168.195.129    7001、7002埠

192.168.195.128    7003、7004埠

192.168.195.130    7005、7006埠  

2、叢集所需元件 ruby 、rubygems、gcc

檢視當前ruby 版本: 

 ruby -v

需安裝2.3以上版本ruby。

# 安裝ruby
yum --enablerepo=centos-sclo-rh -y install rh-ruby23


# 載入環境變數
[
[email protected]
~]# scl enable rh-ruby23 bash [[email protected] ~]# ruby -v ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux] [[email protected] ~]# which ruby /opt/rh/rh-ruby22/root/usr/bin/ruby # 登入自動啟用Ruby 2.3 [[email protected] ~]# vim /etc/profile.d/rh-ruby23.sh #!/bin/bash source /opt/rh/rh-ruby23/enable export X_SCLS="'scl enable rh-ruby23 'echo $X_SCLS''" export PATH=$PATH:/opt/rh/rh-ruby23/root/usr/local/bin

安裝rubygems

yum install rubygems

redis結合ruby

gem install redis

安裝gcc

yum -y install gcc gcc-c++ libstdc++-devel

3、叢集配置

1) 以192.168.195.129為例,其他兩臺主機操作一致。

在該主機 /usr/local下建立redis資料夾,將redis-3.2.8.tar.gz 上傳至資料夾下。解壓

tar –zxvf redis-3.2.8.tar.gz

2) 在 /usr/local下新建 cluster資料夾,用於放置叢集配置檔案

cd /usr/local

mkdir cluster

3) 在 cluster目錄下建立每個例項單獨存放的資料夾  7001 、7002。(別的主機新增對應的資料夾)

cd cluster

mkdir 7001 7002

4) 進入解壓後的redis檔案,複製redis.conf到/usr/local/cluster下面,並執行命令  make  install  PREFIX=/usr/local/redis2

cd /usr/local/redis/redis-3.2.8

cp redis.conf  /usr/local/cluster/

make  install   PREFIX=/usr/local/redis2

5) 進入cd /usr/local/redis2,複製 bin 檔案到 7001、7002目錄下

cd /usr/local/redis2

cp -r bin /usr/local/cluster/7001

cp -r bin /usr/local/cluster/7002

6) 進入 cluster 目錄,修改redis.conf並分別拷貝到 7001、7002下.

   ① 遮蔽限制本地訪問,將 bind 127.0.0.1修改為 bind 192.168.195.129

              

    ② protected-mode後的yes改為no

             

 

    ③ daemonize後的no改為yes

            

 

    ④ 去掉cluster-enabled yes前面的#(按Esc鍵退出i編輯模式,輸入/,再輸入cluster-enabled,回車,就可以快速找到)

            

 

    ⑤  去掉cluster-node-timeout 方法同4

           

 

    ⑥ port後的埠號改為7001,將redis.conf檔案,複製到對應的包下。

           

    ⑦ 儲存,並拷貝到 7001資料夾下

cp redis.conf 7001

    ⑧ 重新編輯,port 改為 7002,拷貝到 7002資料夾。

cp redis.conf 7002

4、分別在三臺主機上啟動各自的例項

 進入cd /usr/local/redis/redis-3.2.8/src下,執行
./redis-trib.rb  create  --replicas  1   192.168.195.129:7001  192.168.195.129:7002 192.168.195.128:7003  192.168.195.128:7004  192.168.195.130:7005  192.168.195.130:7006

cd /usr/local/redis/redis-3.2.8/src

./redis-trib.rb  create  --replicas  1   192.168.195.129:7001  192.168.195.129:7002 
192.168.195.128:7003  192.168.195.128:7004  192.168.195.130:7005  192.168.195.130:7006

啟動成功後,可通過任意主機,檢視叢集資訊

5、測試叢集

可通過任意主機,啟動客戶端進入叢集

在別的主機啟動客戶端 也可以訪問到,Redis叢集成功