linux搭建redis集群
这里是在虚拟机环境下同一台服务器用不同的端口来搭建redis集群
1.在/usr/local/下新建redis-cluster目录并在redis-cluster下新建7031~7036共6个文件夹,这6个文件夹代表创建redis集群的6个节点
1.cd /usr/local/
2.mkdir -p /usr/local/redis-cluster
3.mkdir 7031 7032 7033 7034 7035 7036
2.将已有的/usr/local/redis/下的redis.conf拷贝到新创建的7031目录中
1.切换到 cd /usr/local/redis/ 下 cp redis.conf /usr/local/redis-cluster/7031
2.cd /usr/local/redis-cluster/7031
3.vim redis.conf
修改项如下:
1.绑定端口,port 7031
2.绑定IP,bind 192.168.174.128
3.指定数据存放路径,dir /usr/local/redis-cluster/7031
4.启动集群模式,cluster-enabled yes
5.指定集群节点配置文件,cluster-config-file nodes-7031.conf
7.后台启动,daemonize yes
8.指定集群节点超时时间,cluster-node-timeout 5000
9.指定持久化方式,appendonly yes
3.将7031的redis.conf改完后再拷贝到剩下的5个目录中,然后只要全局替换redis.conf中的7031为相应的节点即可
1.切换到 cd /usr/local/redis-cluster/7031 下 cp redis.conf /usr/local/redis-cluster/7032
2.cd /usr/local/redis-cluster/7032
3.vim redis.conf
只要全局替换redis.conf中的7031为相应的节点即可
4.安装ruby 由于Redis 集群客户端实现很少,redis集群的启动需要用到ruby实现的redis-trib.rb,所以我们需要先安装ruby。
1.yum install ruby
2.yum install rubygems
3.安装ruby和redis的接口程序 gem install redis
不过在安装 gem install redis之前最好先 安装rvm 因为CentOS7 yum库中ruby的版本支持到 2.0.0,可gem 安装redis需要最低是2.2.2,采用rvm来更新ruby
4.gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
5.curl -sSL https://get.rvm.io | bash -s stable
6.find / -name rvm -print
7.source /usr/local/rvm/scripts/rvm
8.查看rvm库中已知的ruby版本
rvm list known
9.安装一个ruby版本
rvm install 2.4.1
10.使用一个ruby版本
rvm use 2.4.1
11. rvm use 2.4.1 --default
12.rvm remove 2.3.4
13.ruby --version
14.gem install redis
5.启动redis实例
1.cd /usr/local/redis-cluster
2.for((i=1;i<=6;i++)); do /usr/local/redis/bin/redis-server /usr/local/redis-cluster/703$i/redis.conf; done
6.查看redis是否运行成功
ps -aux | grep redis
7.找到redis-trib.rb文件 一般在redis源码目录src下的redis-trib.rb
1.如果不知道 find / -name "redis-trib.rb"
2.进入 /src/bin/
./redis-trib.rb create --replicas 1 192.168.2.128:7031 192.168.2.128:7032 192.168.2.128:7033 192.168.2.128:7034 192.168.2.128:7035 192.168.2.128:7036
redis-trib.rb 程序的命令是 create,表示创建一个新的集群。选项 --replicas 1 表示为集群中的每个主节点创建一个从节点
8.集群搭建成功 测试
9.关闭集群
for((i=1;i<=6;i++)); do /usr/local/redis/bin/redis-cli -c -h 192.168.174.128 -p 703$i shutdown; done
10.备注:
for((i=1;i<=6;i++)); do cd 703$i; rm -rf appendonly.aof; rm -rf dump.rdb; rm -rf nodes-703$i.conf; cd ..; done