$ 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
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
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>