客户是个关系户... 开设好centos7虚拟机的同时还得搭建好redis集群。安装过程很顺利,没有遇到什么坑。
环境介绍:两台centos7系统+redis 4.0.11;每台centos上面三个节点,共6节点。
10.15.0.5 对应端口为7000 7001 7002
10.15.0.6 对应端口为7000 7001 7002
注意 ,redis 集群使用redis-trib.rb 必须3主3从 ,也就是6个节点!
具体步骤如下:
1.下载redis软件包,解压
cd /usr/local/software
wgethttp://download.redis.io/releases/redis-4.0.11.tar.gz
tar -zxvf redis-4.0.11.tar.gz
cd redis-4.0.11
2. 安装软件
make && make install
3. 配置软件
将redis-trib.rb复制到/usr/local/bin目录下
cd src
cp redis-trib.rb /usr/local/bin
建立软件以及节点运行目录,复制配置文件
cd /usr/local
mkdir redis-cluster
cd redis-cluster
mkdir redis-4.0.11-node1 redis-4.0.11-node2 redis-4.0.11-node3
cd redis-4.0.11-node1
mkdir logs data
cd /usr/local/software/redis-4.0.11
cp redis.conf /usr/local/redis-cluster/redis-4.0.11-node1
cp redis.conf /usr/local/redis-cluster/redis-4.0.11-node2
cp redis.conf /usr/local/redis-cluster/redis-4.0.11-node3
cd src
cp redis.cli redis.server /usr/local/redis-cluster/redis-4.0.11-node1
cp redis.cli redis.server /usr/local/redis-cluster/redis-4.0.11-node2
cp redis.cli redis.server /usr/local/redis-cluster/redis-4.0.11-node3
修改配置文件,6个节点都要修改
vim /usr/local/redis-4.0.11-node1/redis.conf //其他两个类似
找到以下信息并参照如下修改
bind 10.15.0.5 //需要改为其他节点机器可访问的ip 否则无法成功创建集群
port 7000 //端口号根据节点对应分配 7000,7001,7002
daemonize yes //redis后台运行
pidfile /usr/local/redis-cluster/redis-4.0.11-node1/redis_7000.pid //pidfile文件对应7000,7001,7002
cluster-enabled yes //开启集群
cluster-config-file nodes_7000.conf //集群的配置 配置文件首次启动自动生成 7000,7001,7002
cluster-node-timeout 15000 //请求超时时间
appendonly yes
logfile "/usr/local/redis-cluster/redis-4.0.11-node1/logs/redis_7001.log" //配置日志文件路径
dir "/usr/local/redis-cluster/redis-4.0.11-node1/data" //配置数据文件存放路径
4. 运行节点
cd /usr/local/redis-cluster/redis-4.0.11-node1
./redis.server redis.conf
cd /usr/local/redis-cluster/redis-4.0.11-node2
./redis.server redis.conf
cd /usr/local/redis-cluster/redis-4.0.11-node3
./redis.server redis.conf
//可以创建脚本,设置开机自启动
//检查是否运行
ps -ef | grep redis
5. 利用redis-trib.rb创建集群
安装依赖ruby
yum -y install ruby ruby-devel rubygems rpm-build
gem install redis
如果出现如下错误,需要升级Ruby
curl -L get.rvm.io | bash -s stable
如果出现如下错误,需要获得密钥
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
#执行如下指令
curl -sSL https://get.rvm.io | bash -s stable
安装ruby
source /usr/local/rvm/scripts/rvm
rvm list known #查看安装版本
rvm install 2.3.0
6. 安装gem redis接口
rvm use 2.3.0
rvm remove 1.8.7
ruby --version
gem install redis
7. 安装rubygems
yum install -y rubygems
8. 创建集群
记得在防火墙上面放行对应端口
redis-trib.rb create --replicas 1 10.15.0.5:7000 10.15.0.5:7001 10.15.0.5:7002 10.15.0.6:7000 10.15.0.6:7001 10.15.0.6:7002
###调用 ruby 命令来进行创建集群,--replicas 1 表示主从复制比例为 1:1,即一个主节点对应一个从节点。
如果连接失败,检查防火墙等;再者,将logs和data文件先清空,重启redis。出现下图,表示集群创建成功!
9. 测试连接
随便进入一个节点,设置k值。
redis-cli -h 10.15.0.5 -c -p 7000
set name ashq
### 另外选一个节点验证name
redis-cli -h 10.15.0.6 -c -p 7002
get name
###可看到name为ashq,成功!
10. 写在最后
成功往往并不代表结束,还需更深入地学习。
动态扩容、增加节点和减少节点,重新分配槽大小,怎么跟程序结合等。