一.安裝依賴
1.ruby
安裝 yum install ruby
安裝后查看版本 ruby -v (redis依賴版本為2.0以上)
若不滿足則卸載 yum remove ruby ruby-devel
重新安裝
方法一:換yum源安裝
yum install centos-release-scl-rh //會在/etc/yum.repos.d/目錄下多出一個CentOS-SCLo-scl-rh.repo源
yum install rh-ruby25? -y //直接yum安裝即可
scl? enable? rh-ruby25 bash //必要一步
ruby -v //查看安裝版本
方法二:下載tar壓縮包安裝
wget http://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.5.tar.gz
tar zxvf? ruby-2.3.5.tar.gz
cd ruby-2.3.5
./configure? --prefix=/opt/ruby
make && make install
ln -s /opt/ruby/bin/ruby /usr/bin/ruby
ln -s /opt/ruby/bin/gem /usr/bin/gem
ruby -v //查看一下
方法三:RVM 安裝
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E37D2BAF1CF37B13E2069D6956105BD0E739499BDB
可能會等待一段時間,然后執(zhí)行下面命令:
curl -sSL https://get.rvm.io | bash -s stable
source? /etc/profile.d/rvm.sh //按照提示衡怀,執(zhí)行該命令
rvm list known // list一下可以安裝的版本
rvm install 2.4.1? ? // 直接跟版本號即可
ruby -v //查看驗證下已經安裝的版本
gem -v
2.gem
yum install rubygems
3.redis接口
下載https://rubygems.org/gems/redis/versions/3.3.5
gem install -l redis-3.3.5.gem
gem list|grep redis //查看安裝版本
二.redis
1.安裝
下載源碼http://download.redis.io/releases/redis-4.0.1.tar.gz?
安裝redis需要先將官網下載的源碼進行編譯灰伟,編譯依賴gcc環(huán)境距辆,如果沒有gcc環(huán)境,需要安裝gcc:yum install gcc-c++
解壓命令:?
tar -zxvf redis-4.0.1.tar.gz?
//進入解壓后的目錄進行編譯?
cd /usr/local/redis-4.0.1?
make?
//安裝到指定目錄,如 /usr/local/redis?
cd /usr/local/redis-4.0.1?
make PREFIX=/usr/local/redis install?
2.配置文件
bind 192.168.182.128
protected-mode no
port 7001
daemonize yes
supervised no
pidfile /var/run/redis_7001.pid
loglevel notice
logfile "/home/test/redis/7001/log"
databases 16
always-show-logo yes
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /home/test/redis/7001/data/
appendonly no
appendfilename "appendonly.aof"
# appendfsync always
appendfsync everysec
# appendfsync no
cluster-enabled yes
cluster-config-file nodes-7001.conf
cluster-node-timeout 15000
masterauth "****"
requirepass "****"
3.啟動
/home/test/redis/bin/redis-server /home/test/redis/7001/redis11.conf
/home/test/redis/bin/redis-server /home/test/redis/7002/redis12.conf
/home/test/redis/bin/redis-server /home/test/redis/7003/redis13.conf
4.檢測
ps -el | grep redis
5.創(chuàng)建集群
/home/test/redis/bin/redis-trib.rb create --replicas 1 192.168.182.128:7001 192.168.182.128:7002 192.168.182.128:7003 192.168.182.129:7001 192.168.182.129:7002 192.168.182.129:7003
6.連接
/home/test/redis/bin/redis-cli -c -h 192.168.182.128 -p $1 -a ****
三.sentinel
1.配置
bind 192.168.182.128
port 27001
daemonize yes
dir /tmp
sentinel monitor mymaster1 192.168.182.128 7001 2
sentinel monitor mymaster2 192.168.182.128 7002 2
sentinel monitor mymaster3 192.168.182.129 7001 2
sentinel down-after-milliseconds mymaster1 30000
sentinel down-after-milliseconds mymaster2 30000
sentinel down-after-milliseconds mymaster3 30000
sentinel parallel-syncs mymaster1 1
sentinel parallel-syncs mymaster2 1
sentinel parallel-syncs mymaster3 1
sentinel failover-timeout mymaster1 180000
sentinel failover-timeout mymaster2 180000
sentinel failover-timeout mymaster3 180000
2.啟動
/home/test/redis/bin/redis-sentinel /home/test/redis/sentinel/sentinel.conf
3.檢查
ps -el | grep sentinel
四.redis集群增減節(jié)點/遷移slots
1.新增主節(jié)點
redis-trib.rb add-node? 192.168.182.130:7001 192.168.182.128:7001
2.新增從節(jié)點
redis-trib.rb add-node –-slave 192.168.182.130:7003 192.168.182.128:7001
redis-trib.rb add-node –-slave 192.168.182.130:7002 192.168.182.128:7001
3.密碼
//使密碼失效
CONFIG SET masterauth ""
CONFIG SET requirepass ""
config rewrite
//添加密碼
CONFIG SET masterauth ****
CONFIG SET requirepass ****
config rewrite
4.遷移solt
./redis-trib.rb reshard 192.168.182.128:7001
填入遷移solt個數(shù)
填入接收節(jié)點
填入源節(jié)點
done
5.將主節(jié)點變更為從節(jié)點
CLUSTER REPLICATE 35eeecb262bd3c6a5537d46c337df12022bb55c9? //將當前節(jié)點變更為node_id指定節(jié)點的從節(jié)點
6.檢查集群
./redis-trib.rb check 192.168.182.128:7001