系统:CentOS7.4,Redis多实例
yum install -y gcc-c++ tcl
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
tar zxf redis-3.2.0.tar.gz -C /usr/local/
cd /usr/local/redis-3.2.10/
make
make test
make install
mkdir /usr/local/redis-3.2.10/{7000..7005}
vim /usr/local/redis-3.2.10/7000/redis.conf
protected-mode no
port 7000
daemonize yes
loglevel notice
logfile /usr/local/redis-3.2.10/7000/redis.log
pidfile /usr/local/redis-3.2.10/7000/redis.pid
dir /usr/local/redis-3.2.10/7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
dbfilename dump.rdb
save 900 1
save 300 10
save 60 10000
rdbcompression yes
maxmemory 5gb
maxmemory-policy volatile-lru
aof-load-truncated yes
cp /usr/local/redis-3.2.10/7000/redis.conf /usr/local/redis-3.2.10/7001/
cp /usr/local/redis-3.2.10/7000/redis.conf /usr/local/redis-3.2.10/7002/
cp /usr/local/redis-3.2.10/7000/redis.conf /usr/local/redis-3.2.10/7003/
cp /usr/local/redis-3.2.10/7000/redis.conf /usr/local/redis-3.2.10/7004/
cp /usr/local/redis-3.2.10/7000/redis.conf /usr/local/redis-3.2.10/7005/
sed -ir 's/7000/7001/g' /usr/local/redis-3.2.10/7001/redis.conf
sed -ir 's/7000/7002/g' /usr/local/redis-3.2.10/7002/redis.conf
sed -ir 's/7000/7003/g' /usr/local/redis-3.2.10/7003/redis.conf
sed -ir 's/7000/7004/g' /usr/local/redis-3.2.10/7004/redis.conf
sed -ir 's/7000/7005/g' /usr/local/redis-3.2.10/7005/redis.conf
redis-server /usr/local/redis-3.2.10/7000/redis.conf
redis-server /usr/local/redis-3.2.10/7001/redis.conf
redis-server /usr/local/redis-3.2.10/7002/redis.conf
redis-server /usr/local/redis-3.2.10/7003/redis.conf
redis-server /usr/local/redis-3.2.10/7004/redis.conf
redis-server /usr/local/redis-3.2.10/7005/redis.conf
yum -y install ruby ruby-devel rubygems rpm-build zlib-devel
ruby -v
--ruby 2.0.0p648 (2015-12-16) [x86_64-linux]
wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.7.tar.gz
tar xf ruby-2.2.7.tar.gz
cd ruby-2.2.7
mkdir -p /usr/local/ruby-2.2.7
./configure --prefix=/usr/local/ruby-2.2.7
make && make install
rm -f /usr/bin/ruby
ln -s /usr/local/ruby-2.2.7/bin/ruby /usr/bin/ruby
ruby -v
--ruby 2.2.7p470 (2017-03-28 revision 58194) [x86_64-linux]
cd /usr/local/redis-3.2.10
wget https://rubygems.org/downloads/redis-4.0.0.gem
gem install -l redis-4.0.0.gem
cp /usr/local/redis-3.2.10/src/redis-trib.rb /usr/local/bin/redis-trib
redis-trib create --replicas 1 192.168.1.123:7000 192.168.1.123:7001 192.168.1.123:7002 192.168.1.123:7003 192.168.1.123:7004 192.168.1.123:7005
yes
pkill -9 redis
redis-server /usr/local/redis-3.2.10/7000/redis.conf
redis-server /usr/local/redis-3.2.10/7001/redis.conf
redis-server /usr/local/redis-3.2.10/7002/redis.conf
redis-server /usr/local/redis-3.2.10/7003/redis.conf
redis-server /usr/local/redis-3.2.10/7004/redis.conf
redis-server /usr/local/redis-3.2.10/7005/redis.conf
netstat -tunlp | grep redis
--------认证(这步可以不做,一般这些端口不对外暴露,如果用阿里云的话prd的安全组对外只开放80&443)
vim /usr/local/ruby-2.2.7/lib/ruby/gems/2.2.0/gems/redis-4.0.0/lib/redis/client.rb
###如果环境有要求的话,需要在这个文件里加上redis的认证密码
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7000/redis.conf
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7001/redis.conf
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7002/redis.conf
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7003/redis.conf
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7004/redis.conf
echo -e "masterauth 666.Redis\nrequirepass 666.Redis" >> /usr/local/redis-3.2.10/7005/redis.conf
redis-cli -p 7000 -a 666.Redis
redis-cli -p 7001 -a 666.Redis
redis-cli -p 7002 -a 666.Redis
redis-cli -p 7003 -a 666.Redis
redis-cli -p 7004 -a 666.Redis
redis-cli -p 7005 -a 666.Redis
keys *