·Redis版本 4.0.9
·阿里云 服务器版本 Linux CentOS 7.8 64位
需要安装前置环境 gcc 和 tcl
1. 检查gcc环境是否安装好
如果没有出现,执行
yum install gcc
2. 检查系统中是否有 tcl (发现系统中没有安装tcl)
rpm -qa | grep tcl
①下载 tcl-8.5.13-8.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/tcl-8.5.13-8.el7.x86_64.rpm
②安装 tcl-8.5.13-8.el7.x86_64.rpm
rpm -ivh tcl-8.5.13-8.el7.x86_64.rpm
一.节点准备
Redis下载官网:https://redis.io/
进入官网找到下载地址 https://redis.io/download
tar -zxvf redis-4.0.9.tar.gz -C /usr/software
编译 安装
cd到/usr/software/redis目录,
make && make install
redis-server -v // 检查一下版本
搭建集群
返回software目录 新建一个redis-cluster,作为主文件夹,在此文件夹下建立6个子文件夹,名称分别是:7000,7001,7002,7003,7004,7005,该目录以我们将在任何给定目录内运行的实例的端口号命名
这是测试,所以并没有启动6个真正的物理节点,而是把6个Redis实例都部署在了同一台Linux服务器上,为了区分Redis实例,以不同的端口号来区分Redis实例的,修改Redis.conf的配置文件。
#后台启动
daemonize yes
#修改pid进程文件名,以端口号命名
pidfile /usr/software/redis-7000.pid
#修改日志文件名称,以端口号为目录来区分
logfile /usr/software/redis-cluster/7000/redis.log
#修改数据文件存放地址,以端口号为目录名来区分
dir /usr/software/redis-cluster/7000/
#端口
port 7000
#启动集群
cluster-enabled yes
#集群配置文件
cluster-config-file nodes-7000.conf
#配置集群节点的超时时间,可改可不改
cluster-node-timeout 5000
#启动AOF增量持久化策略
appendonly yes
#bind 不修改的话默认本地访问
bind 0.0.0.0
# 关闭保护模式 用于公网访问
protected-mode no
#用于连接主节点密码
masterauth abc1
#设置redis密码 各个节点请保持密码一致
requirepass abc1
将六个实例运行起来
使用Redis 官方提供了 redis-trib.rb 这个工具,作为搭建集群的专门工具。
Redis的实例全部运行之后,还需要redis-trib.rb工具来完成集群的创建,redis-trib.rb二进制文件在Redis包主目录下的src目录中,运行该工具依赖Ruby环境和gem,因此需要提前安装Ruby。
检查本机的ruby版本,如果在2.3.0以下的,需要重新安装
ruby -v
①使用 RVM 安装 ruby
1.gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
2. curl -sSL https://get.rvm.io | bash -s stable
3. source /etc/profile.d/rvm.sh
4. rvm list known
5. rvm install 2.4.6
②安装rubygem redis依赖
wget http://rubygems.org/downloads/redis-3.3.0.gem
gem install -l redis-3.3.0.gem
③检查redis-trib.rb的可用性
./redis-4.0.1/src/redis-trib.rb
④修改redis-trib.rb脚本(如果有设置到密码)
找到这一行:
@r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60)
修改为:
@r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60, :password => "你的密码")
⑤启动(外网使用服务器的内网IP连接)
./redis-trib.rb create –replicas 1 172.19.210.221:7000 172.19.210.221:7001 172.19.210.221:7002 172.19.210.221:7003 172.19.210.221:7004 172.19.210.221:7005
阿里云开启安全组:设置两种安全组,一种是redis单个端口,另一个是redis单个端口值+10000,也就是说6个集群的话就要设置12个安全组
原文链接:https://blog.csdn.net/Bigger_Lee/article/details/120888132
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/16216