redis分散式線上安裝
阿新 • • 發佈:2019-02-03
- CentOs 7.2
- redis-3.2.3.tar.gz
- 下面安裝的使用者為root
- 要求每臺機器上必須要安裝gcc、ruby、rubygems
- 安裝gcc
- 命令
- yum -y install gcc gcc-c++
- 檢視是否安裝成功
- rpm –qa|grep gcc
- 安裝ruby 和 rubygems
- 命令
- yum -y install ruby
- 檢視是否安裝成功
- rpm –qa|grep ruby
該文件擬定兩臺伺服器的叢集,每臺伺服器上三個例項,分別做主備。
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 叢集環境機器列表
- 將redis-3.2.3.tar.gz解壓都每個機器上的/home/redis資料夾中
- 在/home/redis/redis-3.2.3路徑下執行命令
- make
- make install
- 在每臺機器的/home/redis目錄下建立redis-cluster資料夾、在其中分別建立6379、6380和6381三個子資料夾
- 然後將redis-3.2.3資料夾中的redis.conf 複製到兩臺機器的6379、6380和6381資料夾中
- 修改對應的配置(改成下面的配置)
- port 6379 (根據埠來修改)
- bind 192.168.159.128(寫對應機器的ip)
- repl-diskless-sync yes
- daemonize yes
- cluster-enabled yes
- maxmemory 40gb(最大快取設定,單位mb或者gb)
- maxmemory-policy volatile-lru(回收策略演算法設定,設定為:回收最近最少使用的鍵,但是隻回收設定超時時間的鍵)
- pidfile : 指定埠,樣例:/CFCA/redisPid/redis_6379.pid
- logfile : 在每個節點資料夾中根據埠號制定日誌檔案,樣例:“./埠.log”
- save : 將磁碟持久化功能禁用禁用掉:
- #save 900 1
- #save 300 10
- #save 60 10000
- Cluster-config-file : 改為埠號對應的名稱
- node-埠號.conf
- cluster-node-timeout 30000
- cluster-require-full-coverage no
- 啟動節點
- 分別在兩臺機器的6380、6381和6382資料夾下執行下面命令,啟動對應的redis例項
- redis-server redis.conf
- 將六個例項新增到一個叢集中
- 這裡需要安裝一個redis 和 ruby的介面
- gem install redis(注意:需要設定伺服器時間同步,才能安裝成功)
- 在/home/redis/redis-3.2.3/src目錄下執行下面命令
- ./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
- 此時可以redis-cli -h ip地址 -p 埠號 進入redis客戶端,然後通過下面命令檢視redis的叢集情況
- cluster nodes