阿里云[CentOS 7.2] Redis Cluster 搭建

准备工作

添加Redis对应端口到ip白名单

7d2800d09f021059d720b26d9d286af4854.jpg

054b225e00ef68c275b09d3f64674f6c9db.jpg

systemctl status firewalld

Active: inactive (dead)  --关闭

2f97b5c90b214c2a1e86acde857c788aac7.jpg

Active: active (running)  --运行中

aeb471d1ed09454f527a3090cd3f2e51998.jpg

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=6001/tcp --permanent
firewall-cmd --zone=public --add-port=6002/tcp --permanent
firewall-cmd --zone=public --add-port=6003/tcp --permanent
firewall-cmd --zone=public --add-port=6004/tcp --permanent
firewall-cmd --zone=public --add-port=6005/tcp --permanent
firewall-cmd --zone=public --add-port=6006/tcp --permanent

firewall-cmd --reload

systemctl start firewalld

firewall-cmd --zone=public --list-ports

ffbf8cf07225515592075747e9dedc579d4.jpg

安装ruby

ruby --version

curl -sSL https://get.rvm.io | bash -s stable

2926e40df34e1deb78204422b5334f91a42.jpg

##引入证书
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -

curl -sSL https://get.rvm.io | bash -s stable

source /usr/local/rvm/scripts/rvm

rvm list known

##选一个版本的ruby

ee74c2dd5b5250a5ecd7d1d83e9faccd426.jpg

rvm reload
rvm install 2.2.2

ruby --version

fe6a1aff0d1943da06a9249ed855dbe240b.jpg

安装Redis

mkdir -p {/usr/dev/redis_cluster/log,/usr/dev/redis_cluster/6001,/usr/dev/redis_cluster/6002,/usr/dev/redis_cluster/6003,/usr/dev/redis_cluster/6004,/usr/dev/redis_cluster/6005,/usr/dev/redis_cluster/6006,/usr/dev/redis_cluster/6007,/usr/dev/redis_cluster/6008,/usr/dev/redis_cluster/6009,/usr/dev/redis_cluster/6010}

vi /usr/dev/redis_cluster/redis.conf

port 6001
dbfilename 6001.rdb
cluster-config-file nodes-6001.conf
pidfile /usr/dev/redis_cluster/redis_6001.pid
logfile "/usr/dev/redis_cluster/log/6001.log"
appendfilename "appendonly_6001.aof"
bind 10.115.1.25
protected-mode yes
cluster-enabled yes
daemonize yes
appendonly yes
cluster-node-timeout 15000

echo /usr/dev/redis_cluster/6001 /usr/dev/redis_cluster/6002 /usr/dev/redis_cluster/6003 /usr/dev/redis_cluster/6004 /usr/dev/redis_cluster/6005 /usr/dev/redis_cluster/6006 /usr/dev/redis_cluster/6007 /usr/dev/redis_cluster/6008 | xargs -n 1 cp -v /usr/dev/redis_cluster/redis.conf

033b8107cf99af1661192107e3eeff16385.jpg

##编辑对应redis.conf

vi /usr/dev/redis_cluster/600*/redis.conf

d30c18e22f942fb82ed345943c43ceb13f6.jpg

wget http://download.redis.io/releases/redis-3.2.1.tar.gz /usr/dev/

tar zxvf /usr/dev/redis-3.2.1.tar.gz -C /usr/dev/

cd /usr/dev/redis-3.2.1
make

chmod 755 -R /usr/dev/redis_cluster

gem install redis -v 3.2.1

##启动各节点

/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6001/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6002/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6003/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6004/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6005/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6006/redis.conf

/usr/dev/redis-3.2.1/src/redis-trib.rb create --replicas 1 10.115.1.25:6001 10.115.1.25:6002 10.115.1.25:6003 10.115.1.25:6004 10.115.1.25:6005 10.115.1.25:6006

9d08967057219f358e8806dada72e9f95b9.jpg

验证

/usr/dev/redis-3.2.1/src/redis-cli -c -h 10.115.1.25 -p 6001

##cluster nodes

ede613b9864dea8868ab36efa86185b623a.jpg

##查看dbsize

/usr/dev/redis-3.2.1/src/redis-trib.rb info 10.115.1.25:6001

dcb9cca928cd247b23fbc91d8c3cea7039f.jpg

扩容

/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6007/redis.conf
/usr/dev/redis-3.2.1/src/redis-server /usr/dev/redis_cluster/6008/redis.conf

##如果添加的是主节点,只需指定源节点和目标节点的地址即可

/usr/dev/redis-3.2.1/src/redis-trib.rb add-node 10.115.1.25:6007 10.115.1.25:6001

##如果添加的是从节点,其语法如下[注意:--slave和--master-id必须写在前面,同样的参数,如果是下面这样写法,会提示错]

/usr/dev/redis-3.2.1/src/redis-trib.rb add-node --slave --master-id b976432fac89d66876a7ced89dcc0d0be85cc13f 10.115.1.25:6008 10.115.1.25:6001

##先模拟查看redis cluster 的执行计划
##模拟rebalance
/usr/dev/redis-3.2.1/src/redis-trib.rb rebalance --use-empty-masters --simulate 10.115.1.25:6001

##执行rebalance

/usr/dev/redis-3.2.1/src/redis-trib.rb rebalance --use-empty-masters 10.115.1.25:6001

2ea1fd788dd0190c6dcb7a613c4a3396247.jpg

##验证

/usr/dev/redis-3.2.1/src/redis-trib.rb info 10.115.1.25:6001

rebalance 前

dd3664f9687f49d40e4e764b3eff0bcf478.jpg

rebalance 后

93601db047f165ca808f85b662824821a51.jpg

## yml

spring:
#redis cluster 配置
  redis:
    timeout: 10000
    cluster:
      nodes: 10.115.1.25:6001
      maxRedirects: 6
    pool:
      max-active: 1024 #最大连接数
      max-idle: 10 #最大空闲连接数
      max-wait: -1 #获取连接最大等待时间 ms

##

zip -r redis_cluster.zip redis_cluster

unzip -n /usr/dev/redis_cluster.zip -d /usr/dev

 

 

 

 

转载于:https://my.oschina.net/u/3664884/blog/2874056

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值