redis集群部署(单机)
1.下载redis源码包
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
2.安装部署
tar -xvf redis-4.0.11.tar.gz -C /usr/local
cd /usr/local/redis-4.0.11
make && make install
3.创建集群目录
mkdir /usr/local/redis-cluster
cd /usr/local/redis-cluster
mkdir data log conf
mkdir -p data/redis600{1..6}
4.下载ruby
wget https://repo.huaweicloud.com/ruby/ruby/ruby-2.3.8.tar.gz
tar -xvf ruby-2.3.8.tar.gz -C /usr/local/
cd /usr/local/ruby-2.3.8/
./configure prefix=/usr/local/ruby
make && make install
ruby -v
ln -s /usr/local/ruby/bin/ruby /usr/bin/ruby
ln -s /usr/local/ruby/bin/gem /usr/bin/gem
5.下载rubygem redis依赖
wget http://rubygems.org/downloads/redis-3.3.0.gem
gem install -l redis-3.3.0.gem
# 一般会报错以下信息
ERROR: Loading command: install (LoadError)
cannot load such file -- zlib
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass
# 我们做下下面步骤
yum -y install zlib-devel
cd ruby-2.3.8/ext/zlib/
ruby ./extconf.rb
make && make install
gem install -l redis-3.3.0.gem
# Successfully installed redis-3.3.0
# 显示这条信息代表安装成功
6.配置redis集群中各节点配置文件
cp /usr/local/redis/src/redis-trib.rb /usr/local/redis-cluster/
cd /usr/local/redis-cluster/data
mkdir -p redis-600{1..6}
cd /usr/local/redis-cluster/conf
touch redis-600{1..6}.conf
redis-6001.conf
vim redis-6001.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6001
pidfile /var/run/redis-cluster/redis-6001.pid
logfile /usr/local/redis-cluster/log/redis-6001.log
port 6001
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6001.conf
cluster-node-timeout 10000
appendonly yes
redis-6002.conf
vim redis-6002.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6002
pidfile /var/run/redis-cluster/redis-6002.pid
logfile /usr/local/redis-cluster/log/redis-6002.log
port 6002
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6002.conf
cluster-node-timeout 10000
appendonly yes
redis-6003.conf
vim redis-6003.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6003
pidfile /var/run/redis-cluster/redis-6003.pid
logfile /usr/local/redis-cluster/log/redis-6003.log
port 6003
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6003.conf
cluster-node-timeout 10000
appendonly yes
redis-6004.conf
vim redis-6004.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6004
pidfile /var/run/redis-cluster/redis-6004.pid
logfile /usr/local/redis-cluster/log/redis-6004.log
port 6004
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6004.conf
cluster-node-timeout 10000
appendonly yes
redis-6005.conf
vim redis-6005.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6005
pidfile /var/run/redis-cluster/redis-6005.pid
logfile /usr/local/redis-cluster/log/redis-6005.log
port 6005
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6005.conf
cluster-node-timeout 10000
appendonly yes
redis-6006.conf
vim redis-6006.conf
daemonize yes
bind 127.0.0.1
dir /usr/local/redis-cluster/data/redis-6006
pidfile /var/run/redis-cluster/redis-6006.pid
logfile /usr/local/redis-cluster/log/redis-6006.log
port 6006
masterauth "123456"
requirepass "123456"
cluster-enabled yes
cluster-config-file /usr/local/redis-cluster/conf/node-6006.conf
cluster-node-timeout 10000
appendonly yes
启动redis节点
redis-server /usr/local/redis-cluster/conf/redis-6001.conf
redis-server /usr/local/redis-cluster/conf/redis-6002.conf
redis-server /usr/local/redis-cluster/conf/redis-6003.conf
redis-server /usr/local/redis-cluster/conf/redis-6004.conf
redis-server /usr/local/redis-cluster/conf/redis-6005.conf
redis-server /usr/local/redis-cluster/conf/redis-6006.conf
ps -ef | grep redis-server
netstat -tnlp |grep redis-server
创建redis集群
./redis-trib.rb create --replicas 1 127.0.0.1:6001 127.0.0.1:6002 127.0.0.1:6003 127.0.0.1:6004 127.0.0.1:6005 127.0.0.1:6006
redis-trib.rb check 127.0.0.1:6003 (检查节点)
redis-trib.rb check 127.0.0.1:6001
ps -ef |grep redis-server