1. 程式人生 > >redis分散式線上安裝

redis分散式線上安裝

  1. 環境說明
  1. CentOs 7.2
  2. redis-3.2.3.tar.gz
  1. 環境準備
  1. 下面安裝的使用者為root
  2. 要求每臺機器上必須要安裝gcc、ruby、rubygems
  3. 安裝gcc
  1. 命令
  1. yum -y install gcc gcc-c++
  1. 檢視是否安裝成功
  1. rpm –qa|grep gcc
  1. 安裝ruby 和 rubygems
  1. 命令
  1. yum -y install ruby
  1. 檢視是否安裝成功
  1. rpm –qa|grep ruby
  1. 叢集狀況

該文件擬定兩臺伺服器的叢集,每臺伺服器上三個例項,分別做主備。

IP地址

角色

192.168.159.128

6379

主節點1

192.168.159.128

6380

主節點2

192.168.159.128

6381

主節點3

192.168.159.129

6379

備節點1

192.168.159.129

6380

備節點2

192.168.159.129

6381

備節點3

192.168.159.130

6379

備節點4

192.168.159.130

6380

備節點5

192.168.159.130

6381

備節點6

表格 3‑1 叢集環境機器列表

  1. 將redis-3.2.3.tar.gz解壓都每個機器上的/home/redis資料夾中
  2. 在/home/redis/redis-3.2.3路徑下執行命令
  1. make
  2. make install
  1. 叢集搭建
  1. 在每臺機器的/home/redis目錄下建立redis-cluster資料夾、在其中分別建立6379、6380和6381三個子資料夾
  2. 然後將redis-3.2.3資料夾中的redis.conf 複製到兩臺機器的6379、6380和6381資料夾中
  3. 修改對應的配置(改成下面的配置)
  1. port 6379 (根據埠來修改)
  2. bind 192.168.159.128(寫對應機器的ip)
  3. repl-diskless-sync yes
  4. daemonize yes
  5. cluster-enabled yes
  6. maxmemory 40gb(最大快取設定,單位mb或者gb)
  7. maxmemory-policy volatile-lru(回收策略演算法設定,設定為:回收最近最少使用的鍵,但是隻回收設定超時時間的鍵)
  8. pidfile : 指定埠,樣例:/CFCA/redisPid/redis_6379.pid
  9. logfile : 在每個節點資料夾中根據埠號制定日誌檔案,樣例:“./埠.log”
  10. save : 將磁碟持久化功能禁用禁用掉:
  1. #save 900 1
  2. #save 300 10
  3. #save 60 10000
  1. Cluster-config-file : 改為埠號對應的名稱
  1. node-埠號.conf
  2. cluster-node-timeout 30000
  3. cluster-require-full-coverage no
  1. 啟動節點
  1. 分別在兩臺機器的6380、6381和6382資料夾下執行下面命令,啟動對應的redis例項
  1. redis-server redis.conf
  1. 將六個例項新增到一個叢集中
  1. 這裡需要安裝一個redis 和 ruby的介面
  1. gem install redis(注意:需要設定伺服器時間同步,才能安裝成功)
  1. 在/home/redis/redis-3.2.3/src目錄下執行下面命令
  1. ./redis-trib.rb create --replicas 1

192.168.159.128:6379 192.168.159.128:6380 192.168.159.128:6381 192.168.159.129:6379 192.168.159.129:6379 192.168.159.129:6380

192.168.159.129:6381 192.168.159.130:6379

192.168.159. 130:6380 192.168.159. 130:6381

  1. 此時可以redis-cli -h ip地址 -p 埠號 進入redis客戶端,然後通過下面命令檢視redis的叢集情況
  1. cluster nodes