下载redis5.0.4版本
1.通过linux命令下载:
wget https://download.redis.io/releases/ + 你需要下载的redis版本。 例如:https://download.redis.io/releases/redis-5.0.4.tar.gz
2.通过官网下载到本地然后上传至linux服务器
https://download.redis.io/releases/ + 你需要下载的redis版本。 例如:https://download.redis.io/releases/redis-6.0.10.tar.gz
这里推荐一款非常好用的工具FinalShell,可自行去百度搜索下载,个人认为比putty和xshell好用很多。
本人设置的是免费下载,不知道为什么就变成了需要积分下载,如果需要的可以留言,我百度网盘进行分享。
也可自行下载其他版本,版本不同需要安装的GCC版本也需要进行对应,redis6.0及以上版本需要GCC5.0及以上版本对应。
安装GCC
使用云安装 yum install gcc
安装解压redis
使用tar -zxvf + “你的文件名”命令进行解压 例如:tar -zxvf redis-5.0.4.tar.gz
进入解压的redis目录,执行如下步骤
1.使用mkdir bin 命令在redis目录下创建bin目录,然后将常用redis-cli , redis-server的批处理文件脚本复制到bin目录中。 -- 此步骤可以进行省略
2.进入src目录下执行 make && make install命令安装redis
如果只是搭建单机版,到这里就可以已经搭建完成了,使用 ./redis-server+redis.conf文件完整路径即可启动redis
准备搭建集群环境redis
准备好三台服务器,192.168.80.106,192.168.80.107,192.168.80.108,每台服务器分别是两个服务 7001-7006,没有此条件的一台服务器也行。
192.168.80.106部署7001和7004,192.168.80.107部署7002和7005,192.168.80.108部署7003和7006; 其中7001-7003为主,7004-7006为从。
分别在三台机器上执行上面的安装redis操作。安装完成之后在redis目录下面新建一个redis-cluster目录(注:这里目录可以随意建,不一定需要建在redis目录下),在新建的redis-cluster目录 下新建7001,7004文件目录,用于部署两套redis服务。直接使用mkdir 7001 7004命令批量创建文件目录。然后将redis安装目录下的redis.conf文件分别拷贝到这两个文件目录。
拷贝文件命令 cp +你的redis.conf 文件路径+空格+ 你要拷贝文件的目录 例如: cp /home/redis-5.0.4/redis.conf /home/redis-5.0.4/redis-cluster/7001
接下来修改配置文件是重点,敲黑板!!!
不想挨个说明了,把配置好的文件截图出来吧,注释掉了部分属性和说明
#是否开启保护模式
protected-mode no
#设置端口号
port 7006
tcp-backlog 511
#超时时间设置
timeout 0
tcp-keepalive 300
#是否开启守护进程 --后台启动
daemonize yes
supervised no
pidfile /var/run/redis_7006.pid
#日志级别 默认的notice就好
loglevel notice
#日志文件地址
logfile "/home/redis/redis-cluster/7006/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
# The filename where to dump the DB ---备份数据
dbfilename dump.rdb
#文件目录
dir /home/redis/redis-cluster/7006/
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.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 yes
lua-time-limit 5000
#是否开启集群模式
cluster-enabled yes
#集群机器信息生成文件名
cluster-config-file nodes-7006.conf
#超时时间 毫秒
cluster-node-timeout 10000
slowlog-log-slower-than 10000
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
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
把这个配置给我拷贝进去就完事了,别问为啥,你又不会配置。
把所有拷贝到集群配置目录下的redis.conf文件全部修改成上图中的一样,注意端口号,不要重复出现!!!
创建redis集群
做完以上步骤之后分别启动三台服务器上的redis服务。然后随便进入其中一台服务下的redis安装目录,如果有按我操作新建bin目录的就进入bin目录,没有按我操作新建目录的就进入src目录 下;redis5.0之后使用的是redis-cli进行集群部署,5.0之前使用的是redis-trib.rb(这里不介绍redis-trib.rb)
执行如下命令,执行命令前请确保你集群上的redis服务都已启动: (启动方法上面已做说明,笔者是自己编写批处理文件启动的,懒得写了,就不分享了)
./redis-cli --cluster create 192.168.80.106:7001 192.168.80.107:7002 192.168.80.108:7003 192.168.80.106:7004 192.168.80.107:7005 192.168.80.108:7006 --cluster-replicas 1
--cluster create创建集群命令 --cluster-replicas从库数量 默认前面一半是主库(master),后面一半是从库(slave)。
如果需要设置更多从库的请自行加,如一主二从,那就在加三个redis端口并设置cluster-replicas为2
执行命令之后会有提示,设置192.168.80.106:7001 192.168.80.107:7002 192.168.80.108:7003为master,192.168.80.106:7004 192.168.80.107:7005 192.168.80.108:7006为salve,是否同 意此设置,输入yes同意就行了。
然后,你的集群就设置好了,接下来需要验证你的集群是否正常以及查看你的一个集群信息。
随便登录哪台集群服务器都行,输入./redis-cli -c(查看集群命令) -h +你的ip + -p + 端口号 登入redis集群。(有在配置文件里面设置密码的还需要加上密码参数)
输入cluster info 查看集群信息,看到cluster_state是ok就代表你的集群已经部署好了。
再输入cluster nodes查看节点信息,看你的主从节点是否按你的设置来。
到此,你的redis集群就已经完全ok了。快去和你的小伙伴吹牛逼吧!!!