Redis高可用部署

Get:redis cluster 部署,主备切换,在线扩容,动态增删节点


1.centos7 安装redis cluster

#下载redis压缩包
wget http://download.redis.io/releases/redis-4.0.10.tar.gz       

#解压
tar -zxvf redis-4.0.10.tar.gz   

#移动redis文件夹到usr/local目录
mv redis-4.0.10 /usr/local/   

#编译
make

#编译测试
make test 

make出现异常:/bin/sh: cc: command not found

安装:yum -y install gcc

继续make 出现error: jemalloc/jemalloc.h: No such file or directory 

解决:make MALLOC=libc

make test 问题:You need tcl 8.5 or newer in order to run the Redis test

解决:yum install tcl

2. 集群部署

#创建集群目录

mkdir cluster-redis

#创建节点文件夹 7006为后续节点扩容备用

mkdir 7000 7001 7002 7003 7004 7005 7006

#每个节点创建redis.conf 如下:

touch redis-7000.conf


 
 
  1. port 7000
  2. bind 127.0. 0. 1
  3. daemonize yes
  4. protected-mode yes
  5. #表示临时存放已完成三次握手的请求的队列的最大长度
  6. tcp-backlog 511
  7. timeout 0
  8. tcp-keepalive 300
  9. supervised no
  10. loglevel notice
  11. logfile ../cluster-redis/ 7000/redis- 7000.log
  12. save 900 1
  13. save 300 10
  14. save 60 10000
  15. stop-writes-on-bgsave-error yes
  16. rdbcompression yes
  17. rdbchecksum yes
  18. dbfilename dump- 7000.rdb
  19. dir ./
  20. slave-serve-stale-data yes
  21. slave- read-only yes
  22. repl-diskless-sync no
  23. repl-diskless-sync-delay 5
  24. repl-disable-tcp-nodelay no
  25. slave-priority 100
  26. appendonly no
  27. appendfilename "appendonly-7000.aof"
  28. appendfsync everysec
  29. no-appendfsync-on-rewrite no
  30. auto-aof-rewrite-percentage 100
  31. auto-aof-rewrite-min-size 64mb
  32. aof-load-truncated yes
  33. lua- time-limit 5000
  34. cluster-enabled yes
  35. cluster-config-file ../cluster-redis/ 7000/nodes- 7000.conf
  36. cluster-node-timeout 15000
  37. slowlog- log-slower-than 10000
  38. slowlog-max-len 128
  39. latency-monitor-threshold 0
  40. notify-keyspace-events ""
  41. hash-max-ziplist-entries 512
  42. hash-max-ziplist-value 64
  43. list-max-ziplist-size - 2
  44. list-compress-depth 0
  45. set-max-intset-entries 512
  46. zset-max-ziplist-entries 128
  47. zset-max-ziplist-value 64
  48. hll-sparse-max-bytes 3000
  49. activerehashing yes
  50. client-output-buffer-limit normal 0 0 0
  51. client-output-buffer-limit slave 256mb 64mb 60
  52. client-output-buffer-limit pubsub 32mb 8mb 60
  53. hz 10
  54. aof-rewrite-incremental-fsync yes

 注:如果redis单独做缓存,不用配置rdb和aof备份

#启动节点 6个全部启动

#查询redis节点

#安装Ruby (redis集群需要用到ruby命令)
yum -y install ruby rubygems

#安装rvm
curl -L get.rvm.io | bash -s stable

如报错执行: gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

#继续按照rvm
curl -L get.rvm.io | bash -s stable
source /usr/local/rvm/scripts/rvm

#查看rvm库中已知的ruby版本
rvm list known
#安装ruby
rvm install 2.5.1
#使用新版本
rvm use 2.5.1
#移除旧版本
rvm remove 2.0.0
#查看当前版本
ruby --version

#安装相关依赖
gem install redis

3. 启动集群

[root@localhost src]#  ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

如图:代表启动成功

4. 相关命令操作

4.1 查看集群信息

4.2 集群节点查看

4.3 集群重启:

和单机版启动一样,启动后会自动转换cluster模式

可以写个脚本:不用每次一个个节点启动,可以一次性起所有节点命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值