Redis集群搭建
用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master、3 salve 环境。机器IP分别为:192.168.35.129,192.168.35.130。Redis的版本为redis-4.0.1。
将下载好安装包上传到/usr/software目录下,两台机器同时操作。
进入software目录下
cd /usr/software
对安装包进行解压
tar -zxvf redis-4.0.1.tar.gz
创建redis文件夹
mkdir /usr/redis
将解压后的文件夹移到redis目录下
mv redis-4.0.1 /usr/redis
cd /usr/redis/redis-4.0.1
对redis编译安装
make && make install
创建 Redis 节点
首先在 192.168.35.129 机器上 /usr/redis/redis-4.0.1 目录下创建 redis_cluster 目录;
mkdir redis_cluster
在 redis_cluster 目录下,创建名为7000、7001、7002的目录
cd redis_cluster
mkdir 7000 7001 7002
将 /usr/redis/redis-4.0.1下的redis.conf 拷贝到这三个目录中
cd ..
cp redis.conf redis_cluster/7000
cp redis.conf redis_cluster/7001
cp redis.conf redis_cluster/7002
分别修改这三个配置文件,修改如下内容
- port 7000 //端口7000,7002,7003
- bind 本机ip //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群
- daemonize yes //redis后台运行
- cluster-enabled yes //开启集群 把注释#去掉
- cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置
- appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志
在另外一台机器上192.168.35.130上复以上步骤,只是把目录改为7003、7004、7005,对应的配置文件也按照这个规则修改即可
启动各个节点
命令
/usr/redis/redis-4.0.1/src/redis-server /usr/redis/redis-4.0.1/redis_cluster/7005/redis.conf
检查 redis 启动情况
ps -ef | grep redis
创建集群
使用Redis 官方提供了 redis-trib.rb 这个工具,就在/usr/redis/redis-4.0.1/src目录下。这个工具是用 ruby 实现的,所以需要安装 ruby。
使用yum 安装的版本太低,我这里使用RVM来安装ruby。
安装 RVM,运行一下命令
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
将环境变量中设置rvm。
完成后,检查一下是否安装正确
rvm -v
出现版本号就没问题
用 RVM 安装 Ruby 环境
列出已知的 ruby 版本:
rvm list known
选择现有的2.2.2以上版本来进行安装(下面以 rvm 2.4.2 版本的安装为例)
$ rvm install 2.4.2
同样继续等待漫长的下载,编译过程,完成以后,Ruby, Ruby Gems 就安装好了。
查询已经安装的 ruby
rvm list
卸载一个已安装版本
rvm remove 2.4.2
现在ruby已经安装好了。
运行
gem install redis
到此环境基本完成
关闭防火墙
/etc/init.d/iptables stop
运行
redis-trib.rb create --replicas 1 192.168.35.129:7000 192.168.35.129:7001 192.168.35.129:7002 192.168.35.130:7003 192.168.35.130:7004 192.168.35.130:7005
输入 yes 即可。