以下是用到的主机IP:
主 | 10.64.24.1 | 10.64.24.2 | 10.64.24.3 |
备 | 10.64.24.4 | 10.64.24.5 | 10.64.24.6 |
一、redis-单机部署
https://download.redis.io/releases/ //下载redis-3.2.9.tar.gz
yum install -y gcc tcl make
tar zxvf redis-3.2.9.tar.gz
mv redis-3.2.9 /usr/local/redis-3.2.9
cd /usr/local/redis-3.2.9
make && make install
二、集群部署
1、安装redis-cluster
依赖
(1)安装 ruby
yum install -y ruby ruby-rdoc
(2)安装 rubygems
yum install -y rubygems
(3)安装redis-3.0.0.gem
http://rubygems.org/downloads/redis-3.0.0.gem
//根据自己的redis版本下载所需版本
mv redis-3.0.0.gem /usr/local/src
cd /usr/local/src
gem install -l redis-3.0.0.gem
2、配置redis
主配置文件
mkdir -p /usr/local/redis-cluster/7000/{redisdata,logs}
cp /usr/local/redis-3.2.9/redis.conf /usr/local/redis-cluster/7000
vim /usr/local/redis-cluster/7000/redis.conf
bind 10.64.24.1
protected-mode yes
port 7000
tcp-backlog 511
timeout 0
tcp-keepalive 60
daemonize yes
supervised no
pidfile "/usr/local/redis-cluster/7000/redis.pid"
loglevel notice
logfile "/usr/local/redis-cluster/7000/logs/redis-cluster_7000.log"
databases 16
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir "/usr/local/redis-cluster/7000/redisdata"
masterauth password //密码
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
requirepass password //密码
rename-command CONFIG ""
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command EVAL ""
maxmemory 50g //根据服务器配置修改
maxmemory-policy allkeys-lru
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes
3、启动集群各节点
redis-server /usr/local/redis-cluster/7000/redis.conf
4、构建集群
一般构建时放在前面的3个IP会作为服务器主节点
cd /usr/local/redis-3.2.9/src
./redis-trib.rb create --replicas 1 10.64.24.1:7000 10.64.24.2:7000 10.64.24.3:7000 10.64.24.4:7000 10.64.24.5:7000 10.64.24.6:7000
如构建报错,查找client.rb
位置
find / -name client.rb
/usr/local/share/gems/gems/redis-3.0.0/lib/redis/client.rb
编辑client.rb
修改口令字段
vim /usr/local/share/gems/gems/redis-3.0.0/lib/redis/client.rb
:password => password,
5、检查集群状态
redis-cli -c -h 10.64.24.1 -p 7000
10.70.57.209:7000>
10.70.57.209:7000> auth password #密码
OK
10.70.57.209:7000>
10.70.57.209:7000> cluster nodes #检查集群状态
6、配置目录
主要配置文件目录:"/usr/local/redis-cluster/7000/redis.conf"
持久化文件目录:"/usr/local/redis-cluster/7000/redisdata/"
Redis 应用日志文件路径:"/usr/local/redis-cluster/7000/logs/redis-cluster_7000.log"
Redis 应用 pid 文件路径:"/usr/local/redis-cluster/7000/redis.pid"
Redis 集群 node 配置文件路径:"/usr/local/redis-cluster/7000/redisdata/nodes-7000.conf"