Linux redis 集群搭建(5.0.9版本的安装)
- 说明:本次文章安装的5.0.9版本信息,本次搭建用3主3从,准备3台机器
准备使用的端口,6380 6381 - 软件版本:redis-5.0.9.tar.gz
第一步:安装 gcc
yum -y install gcc
第二步:Redis的解压、编译、安装
tar xf redis-5.0.9.tar.gz 然后进入目录 cd redis-5.0.9 编译安装 make make install 或者可以指定安装路径 make install PREFIX=/local/redis
第三步:Redis 的配置
创建redis目录 mkdir /data/redis 在 redis目录下创建 6380、6381 两个文件夹: mkdir -p /data/redis/{6380,6381}/conf 然后将 redis-5.0.9 目录下的 redis.conf 文件分别拷贝到 刚创建的两个conf目录下: cp redis.conf /data/redis/6380/conf/ cp redis.conf /data/redis/6381/conf/
在另外两台机器上同样执行以上3个步骤
通过几次实践,以下的配置文件,最好不要直接复制直接使用,可能会导致集群起不来,最好的方式是,复制解压后的redis.conf然后针对某些需要修改的值进行修改
#这里是redis.conf的配置,请分清楚,6380和6381,不要混淆了 bind 0.0.0.0 protected-mode yes port 6380 #修改端口 tcp-backlog 511 timeout 60 tcp-keepalive 300 daemonize yes #deamon 进程运行 supervised no pidfile "/data/redis/6380/redis.pid" #修改pid的存放路径 以6380为例 loglevel notice logfile "/data/redis/6380/log/redis.log" #修改log 的路径 以6380为例 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.rdb" dir "/data/redis/6380/db" #以6380为例 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 maxclients 60000 #修改最大连接 lazyfree-lazy-eviction no lazyfree-lazy-expire no lazyfree-lazy-server-del no replica-lazy-flush no appendonly yes #开启aof 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-6380.conf" #nodes 信息配置文件 以6380为例 cluster-node-timeout 60000 #集群的超时时间 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 # masterauth "1ZdqlgWBfw" #这个是从访问mater密码 # requirepass "1ZdqlgWBfw" # master 密码 密码最好搭建完成后再加
启动6个redis服务
启动6个redis,每台都执行以下2条命令:
redis-server /data/redis/6380/conf/redis.conf redis-server /data/redis/6381/conf/redis.conf
开始启动 Redis 集群
开始启动集群,这个是5.0以后集群启动的方式,和以前的不同
redis-cli --cluster CREATE 10.1.1.69:6380 10.1.1.70:6380 10.1.1.168:6380 10.1.1.69:6381 10.1.1.70:6381 10.1.1.168:6381 --cluster-replicas 1 # cluster-replicas 1 这里的1其实代表的是一个比例,就是主节点数/从节点数的比例
查看集群是否成功
redis-cli --cluster check 10.1.1.70:6380
为6个节点设置密码
集群搭建完毕,开始设置密码,6个节点都要设置,下面拿一个举例
[root@localhost ~]# redis-cli -h 10.1.1.70 -p 6380 10.1.1.70:6380> config SET masterauth rp123456 OK 10.1.1.70:6380> config SET requirepass rp123456 OK 10.1.1.70:6380> auth rp123456 OK 10.1.1.70:6380> config rewrite OK 10.1.1.70:6380> EXIT
再次查看Redis集群的状态
redis-cli --cluster check 10.1.1.168:6380 -a 'rp123456'
摘自:https://www.jianshu.com/p/2e348613f031