在集群上下载安装redis:
-
1.首先进入对应文件夹:cd /home/zptest
执行命令:wget http://download.redis.io/releases/redis-3.2.1.tar.gz 等待下载完成,解压安装:tar -zxvf /redis-3.2.1.tar.gz
-
2.编译安装 : cd redis-3.2.1
make && make install
-
3.配置redis.conf文件
##### 监听地址 bind 10.1.2.46 ##### 端口 port 7000 tcp-backlog 511 timeout 0 tcp-keepalive 300 #### 守护进程 daemonize yes supervised no pidfile /var/run/redis_7000.pid loglevel notice logfile "./7000/redis.log" databases 16 always-show-logo yes save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes ##### 只允许为文件,不允许为路径,否则会报错 dbfilename dump-7000.rdb dir ./ ##### 和master之间通讯的密码 masterauth 123456 slave-serve-stale-data yes slave-read-only yes repl-diskless-sync no repl-diskless-sync-delay 5 repl-disable-tcp-nodelay no slave-priority 100 ##### 自身安全所需密码 requirepass 123456 lazyfree-lazy-eviction no lazyfree-lazy-expire no lazyfree-lazy-server-del no slave-lazy-flush no appendonly no ##### 只允许为文件,不允许为路径,否则会报错 appendfilename "appendonly-27001.aof" appendfsync everysec no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb aof-load-truncated yes aof-use-rdb-preamble no lua-time-limit 5000 #### 下面三个为cluster模式所必须的配置 #### 开启集群模式 cluster-enabled yes ##### 集群的配置文件 cluster-config-file 7000/nodes-7000.conf ##### 集群之间心跳超时时间 cluster-node-timeout 10000 ##### 非必须,用来设置每个master有多少个slave,默认为1 cluster-migration-barrier 2 slowlog-max-len 128 latency-monitor-threshold 0 notify-keyspace-events "" hash-max-ziplist-entries 512 hash-max-ziplist-value 64 list-max-ziplist-size -2 list-compress-depth 0 set-max-intset-entries 512 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 hll-sparse-max-bytes 3000 activerehashing yes client-output-buffer-limit normal 0 0 0 client-output-buffer-limit slave 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 hz 10 aof-rewrite-incremental-fsync yes
-
4.模拟节点:在redis文件夹下面创建6个文件夹:
mkdir 7000 7001 7002 7003 7004 7005
然后将redis.conf文件copy到每个文件夹下面,注意修改对应的端口号:
cp redis.conf 7000/redis.conf
以此类推,一共六个。
-
5.启动节点服务:
redis-server 7000/redis.conf
同样需要启动6个
-
6.查看服务
ps -ef | grep redis #查看是否启动成功 netstat -tnlp | grep redis #可以看到redis监听端口
也可以尝试连接节点
redis-cli -c -h 10.1.2.46 -p 7000 -a 123456
出现如下图即可认为服务已经启动,但是暂时不能操作数据,因为集群还没有将这些节点连接起来。
-
7.创建集群
前面已经准备好了搭建集群的节点,接下来需要将这些节点串联起来搭建集群,官方提供的是工具redis-trib.rb文件,这是一个ruby程序,所以使用之前需要安装ruby,安装此程序首先需要进入redis文件夹下面的src文件夹,下面的操作基本都需要在此文件夹下操作。-
安装ruby:
yum -y install ruby ruby-devel rubygems rpm-build
需要等待一段时间安装完成
-
安装curl:
-
yum install curl
-
安装redis 的接口:
curl -L get.rvm.io | bash -s stable
-
一般第一次安装都会报如下错误,百度一下,使用如下,将图中出现的 gpg密钥下载下来即可,图中输入:
gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
对应的执行结果如下图:
然后再执行
curl -L get.rvm.io | bash -s stable
就不会报错了,
然后执行:
source /usr/local/rvm/scripts/rvm
完毕后,执行:
rvm list knomn
列出版本信息,选择一个版本,此处选择2.5.1版本,然后安装:
rvm install 2.5.1
可能由于网络原因,安装失败,重试一次即可:
rvm reinstall ruby-2.5.1
等待安装完成,最后一步,修改对应端口的redis配置文件client.rd,将password后面的Nil改为对应的密码:123456 保存即可,此处给出对应的文件目录可供参考:
/usr/local/rvm/gems/ruby-2.5.1/gems/redis-4.1.0/lib/redis
然后 输入:
gem install redis
继续构建集群,等待下载完成之后,输入创建集群的代码:
./redis-trib.rb create --replicas 1 10.1.2.46:7000 10.1.2.46:7001 10.1.2.46:7002 10.1.2.46:7003 10.1.2.46:7004 10.1.2.46:7005
等待集群创建完成,
到这一步集群基本创建完成,然后输入:
redis-cli -c -h 10.1.2.46 -p 7000 -a 123456
登录集群,输入符合格式的语句,如果能返回对应的值,即可视为redis安装完成:
可能会踩的坑,一是时刻注意对应的文件夹位置,创建的端口文件夹一定要在解压后的redis文件夹内,安装ruby等的文件一定要在redis文件夹中的src文件夹下面,最后如果没有设置密码,则不需要修改对应的参数文件。如有问题可以参考博文:https://blog.csdn.net/qq_39800434/article/details/84982657 以上。