redis4 集羣安裝

一、安裝redis

$ yum install -y gcc tcl #裝 gcc 編譯器和 redis 測試使用到的 tcl 庫
$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
$ tar xzf redis-4.0.10.tar.gz
$ cd redis-4.0.10
$ make
$ make install

二、建立節點

    2臺機器(192.168.1.1,192.168.1.2),3 master,3slavenode

2.1 master(192.168.1.1)安裝

mkdir redis_cluster 
mkdir 7000 7001 7002
cp redis.conf redis_cluster/7000
cp redis.conf redis_cluster/7001
cp redis.conf redis_cluster/7002

    以7000爲例,修改redis.conf,700一、7002一樣redis

port  7000                                        #端口7000,7001,7002       
bind 本機ip                                       #默認ip爲127.0.0.1 須要改成其餘節點機器可訪問的ip 不然建立集羣時沒法訪問對應的端口,沒法建立集羣
daemonize    yes                               #redis後臺運行
pidfile  /var/run/redis_7000.pid                #pidfile文件對應7000,7001,7002
cluster-enabled  yes                           #開啓集羣  把註釋#去掉
cluster-config-file  nodes_7000.conf             #集羣的配置  配置文件首次啓動自動生成 7000,7001,7002
cluster-node-timeout  15000                    #請求超時  默認15秒,可自行設置
appendonly  yes                                 #aof日誌開啓  有須要就開啓,它會每次寫操做都記錄一條日誌

    啓動api

redis-server redis_cluster/7000/redis.conf
redis-server redis_cluster/7001/redis.conf
redis-server redis_cluster/7002/redis.conf

2.2 slave(192.168.1.2)安裝

mkdir redis_cluster 
mkdir 7003 7004 7005 
cp redis.conf redis_cluster/7003
cp redis.conf redis_cluster/7004
cp redis.conf redis_cluster/7005

    以7003爲例,修改redis.conf,700四、7005一樣ruby

port  7003                                        #端口7003,7004,7005      
bind 本機ip                                       #默認ip爲127.0.0.1 須要改成其餘節點機器可訪問的ip 不然建立集羣時沒法訪問對應的端口,沒法建立集羣
daemonize    yes                               #redis後臺運行
pidfile  /var/run/redis_7003.pid                #pidfile文件對應7003,7004,7005
cluster-enabled  yes                           #開啓集羣  把註釋#去掉
cluster-config-file  nodes_7003.conf             #集羣的配置  配置文件首次啓動自動生成 7003,7004,7005
cluster-node-timeout  15000                    #請求超時  默認15秒,可自行設置
appendonly  yes                                 #aof日誌開啓  有須要就開啓,它會每次寫操做都記錄一條日誌

    啓動bash

redis-server redis_cluster/7003/redis.conf
redis-server redis_cluster/7004/redis.conf
redis-server redis_cluster/7005/redis.conf

三、建立集羣

    如下都是在master下執行app

yum -y install ruby ruby-devel rubygems rpm-build

    直接執行「gem install redis」會報錯curl

redis requires Ruby version >= 2.2.2

    須要安裝大於2.2.2的ruby工具

curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -L get.rvm.io | bash -s stable
source /usr/local/rvm/scripts/rvm
rvm list known
rvm install 2.4.2
rvm use 2.4.2
rvm remove 2.0.0
ruby --version

    gem 這個命令來安裝 redis接口 gem是ruby的一個工具包測試

gem install redis

    由於牆的問題,gem install redis 可能會失敗,改用國內的源ui

gem sources --remove https://rubygems.org/ 刪掉原來的源
gem sources -a http://gems.ruby-china.org   改用國內的源 
gem sources -l 查看現有的源 
gem install redis  安裝redis依賴


src/redis-trib.rb     create  --replicas  1  172.31.150.27:7000 172.31.150.27:7001  172.31.150.27:7002   172.31.150.28:7003  172.31.150.28:7004  172.31.150.28:7005
#--replicas 1 表示 自動爲每個master節點分配一個slave節點 上面有6個節點,程序會按照必定規則生成 3個master(主)3個slave(從)

   注意: 必需要3個或以上的主節點,不然在建立集羣時會失敗,而且當存活的主節點數小於總節點數的一半時,整個集羣就沒法提供服務了。

四、測試

redis-cli -h 172.31.150.27 -c  -p 7000
172.31.150.27:7000> set ee ff
-> Redirected to slot [2268] located at 172.31.150.28:7005
OK
172.31.150.28:7005> get ee
"ff"
172.31.150.28:7005>
相關文章
相關標籤/搜索