redis学習-第3節-クラスタ構築
redis-クラスタ構築
Time:20181019,この文章を通じてcentos 7下redisのクラスタ構築を把握する
環境
Redisインストール
redisクラスタ-ruby
Rubyインストール
Redisクラスタ構築
クラスタ状態の検証
原理と注意事項
shellスクリプトの作成
Time:20181019,この文章を通じてcentos 7下redisのクラスタ構築を把握する
Redis , TCP ,
環境
1. redis-3.2.8
2. CentOS7
3. redis3 , Rube
Redisインストール
1. redis
cd /home/softwares/redis
tar -zxvf redis-3.2.8 :
make;make install
2. redis-cluster, redis redis.conf redis-cluster
3. redis-7000.conf...redis-7006.conf
4. redis-xxx.conf
# 7001-7006
port 7006
# ip 127.0.0.1, ip, ,
bind 172.16.1.131
# redis
daemonize yes
#
cluster-enabled yes
# pidfile pid 7001-7006
pidfile ./redis-7006.pid
# ,
cluster-config-file nodes_7006.conf
# 15S
cluster-node-timeout 15000
# aof ,
appendonly yes
5.
redis-server ../redis-cluster/redis-7001.conf
redis-server ../redis-cluster/redis-7002.conf
redis-server ../redis-cluster/redis-7003.conf
redis-server ../redis-cluster/redis-7004.conf
redis-server ../redis-cluster/redis-7005.conf
redis-server ../redis-cluster/redis-7006.conf
6.
ps -ef|grep redis
IP redis ;
redisクラスタ-ruby
1. Redis3 Redis bin/redis-trib.rb 。
2. ruby , Ruby redis-trib.rb
3. Usage: redis-trib
Ruby
Rubyインストール
1. yum ruby 。 yum -y install ruby ruby-devel rubygems rpm-build
2. gem redis : gem Ruby
gem install redis
3. ERROR error installing redis; Ruby
4. Ruby
rvm :# curl -L get.rvm.io | bash -s stable
: gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 rvm
5. source , rvm 。 source /usr/local/rvm/scripts/rvm
6. Ruby
# rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
7. Ruby
rvm install (2.4.1)
8. gem redis , ! gem install redis
9. rubygems, ! yum install -y rubygems
Redisクラスタ構築
1. Ruby , 6 。
ruby ./redis-trib.rb create --replicas 1 172.16.1.131:7001 172.16.1.131:7002 172.16.1.131:7003 172.16.1.131:7004 172.16.1.131:7005 172.16.1.131:7006
--replicas 1 master 1 。 6 , master, slave, 6 , ip:port
2. 3 master replica
クラスタ状態の検証
1. ,-c : ./bin/redis-cli -h 10.93.84.53 -p 7000 -c
2. : cluster info
原理と注意事項
redis cluster , , , , , , 。 , , , 。
Redis , (hash slot) , , , , slot 。
redis cluster 16384 slot, set key , CRC16 slot, key , :CRC16(key)%16384。
Redis master , master salve 。 , master 。 master , salve , master。
: 3 , , , 。
shellスクリプトの作成
redis : redis-server ../redis-7001.conf ....
Shell touch redis.sh
#! /bin/bash
# redis
./../redis-3.2.8/src/redis-server redis-7001.conf
./../redis-3.2.8/src/redis-server redis-7002.conf
./../redis-3.2.8/src/redis-server redis-7003.conf
./../redis-3.2.8/src/redis-server redis-7004.conf
./../redis-3.2.8/src/redis-server redis-7005.conf
./../redis-3.2.8/src/redis-server redis-7006.conf
#
ruby ./../redis-3.2.8/src/redis-trib.rb create --replicas 1 172.16.1.131:7001 172.16.1.131:7002 172.16.1.131:7003 172.16.1.131:7004 172.16.1.131:7005 172.16.1.131:7006
: chmod u+x redis.sh
./redis.sh