一、redis 集群搭建
redis3.0 以前,提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将Slave作为master,将master做为slave。其配置也较复杂,且表现一般。
redis3.0以后已经支持集群容错功能,并且非常简单
1.1 素材准备
- centos7 (集群搭建,至少三个master。需要虚拟机搭建出6个节点)
- 使用192.168.91.101 ~ 192.168.91.106 这6个虚拟机进行搭建(如果可以,也可以在1和多个节点上完成,不用准备6个节点)
- redis3.2.9 已经安装完成(可以对节点进行clone操作,来获取多个节点)。 安装过程可以参考文章
1.2 shell 工具
补充:在对6个节点进行操作的时候,可以使用shell下面的工具来同时操作6个节点的相同操作
相同部分的操作在此输入命令
1.2 搭建步骤
- ①分别在6个节点上创建一个相同的目录(注意:如果可以直接在redis安装目录直接操作即可,不用再重新复制redis.conf进行下面操作)
mkdir -p /usr/local/redis-cluster
- ②根据节点顺序,分别在每个节点的 redis-cluster 目录下创建一个目录。
# 注意创建的的目录要和IP对应。
mkdir 7001 ~ mkdir 7006
- ③ 将redis的配置文件 redis.conf 进行复制一份,放在在 700* (注:* 表示1-6)目录下。修改内容如下
# 设置daemonize 为yes
daemonize yes
# 设置端口号 port 700*
port 7001
# bind 192.168.91.101 绑定当前机器的IP
bind 192.168.91.101
# dir /usr/local/redis-cluster/700*/ 指定数据文件位置
dir /usr/local/redis-cluster/7001/
# 启动集群模式
cluster-enabled yes
# 配置# cluster-config-file nodes-7001.conf
cluster-config-file nodes-7001.conf
#appendonly yes
appendonly yes
注意: 注意700的配置( 表示 1-6)
- ④安装集群相关插件(由于redis集群需要使用ruby命令,所以需要安装ruby)
yum -y install ruby
yum -y install rubygems
# 安装redis和ruby的接口
gem install redis
redis requires ruby version 2.2.2的解决方案 >>
CentOS7 yum库中ruby的版本支持到 2.0.0,可gem 安装redis需要最低是2.2.2,采用rvm来更新ruby
解决办法是 先安装rvm,再把ruby版本提升至2.3.3
#1.安装RVM
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
# 或者使用 curl -L get.rvm.io | bash -s stable
find / -name rvm -print
source /usr/local/rvm/scripts/rvm
#2. 查看rvm库中已知的ruby版本:
rvm list known
#3. 安装一个ruby版本
rvm install 2.4.1
#4. 使用一个ruby版本
rvm use 2.4.1
#5. 设置默认版本
rvm use 2.4.1 --default
#6. 卸载一个已知版本
rvm remove 2.0.0
#7.查看一个版本
ruby --version
#8. 再安装redis就可以了
gem install redis
- ⑤启动redis,并查看状态
#/usr/local/redis-3.2.9/src/redis-server /usr/local/redis-cluster/700*/redis.conf
/usr/local/redis-3.2.9/src/redis-server /usr/local/redis-cluster/7001/redis.conf
ps -el | grep redis 查看是否启动成功
- ⑥到redis目录下去执行 redis-trib.rb 命令(创建集群)
#命令 /usr/local/redis-3.2.9/src 在这个下面
# 在一个节点上执行即可
./redis-trib.rb create --replicas 1 192.168.91.101:7001 192.168.91.102:7002 192.168.91.103:7003 192.168.91.104:7004 192.168.91.105:7005 192.168.91.106:7006
如果出现错误: [ERR] Sorry, can’t connect to node 192.168.91.101:7001
修改
vim /usr/local/redis-cluster/700*/redis.conf
中的bind 属性,将bind 127.0.0.01 绑定成具体的IP.
然后再kill reids 进程后,再启动/usr/local/redis-3.2.9/src/redis-server /usr/local/redis-cluster/700*/redis.conf
注意修改的是集群下面的conf。修改配置文件后需要kill 进程后重启。
通过上面步骤就完成了集群的搭建
- ⑦ 验证
/usr/local/redis-3.2.9/src/redis-cli -c -h 192.168.91.101 -p 7001
cluster nodes
通过上述步骤,集群的搭建就表示成功了。
下一篇,通过java操作redis集群
原文地址:https://blog.csdn.net/qq_31156277/article/details/88090927
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。