Redis集群和哨兵搭建阐明_亲测胜利

1.运行环境阐明

  • 1.1 服务器零碎

支流Linux零碎

  • 1.2 Redis版本

Redis-5.0.3
redis从3.0开始反对集群

2. Redis装置

1 新建一个软件保留目录如:/data/software/

cd /data/software/wget http://download.redis.io/releases/redis-5.0.3.tar.gztar -zxvf redis-5.0.3.tar.gz

2 新建一个利用目录如:/data/apps

mv redis-5.0.3 /data/appscd /data/apps/redis-5.0.3make

3.集群搭建

  • 3.1 机器筹备

筹备三台机器,别离装置redis

192.168.1.51 主-从
192.168.1.52 主-从
192.168.1.53 主-从

  • 3.1.1 在51机器上执行
cd /data/apps/redis-5.0.3mkdir 7000mkdir 7001cp redis.conf 7000/redis.conf批改配置vim 7000/redis.conf#bind 127.0.0.1 #能够近程拜访protected-mode no #保护模式敞开daemonize yes #后盾启动port 7000pidfile /var/run/redis_7000.pidlogfile "/data/apps/redis-5.0.3/7000/7000.log"dbfilename dump.rdbdir /data/apps/redis-5.0.3/7000/cluster-enabled yes #开启集群cluster-config-file nodes_7000.conf #集群的配置文件cluster-node-timeout 5000 #申请超时  设置5秒够了appendonly yes #aof日志开启  有须要就开启,它会每次写操作都记录一条日志appendfilename "appendonly7000.aof"设置集群明码 在配置文件外面减少明码选项,肯定要加上masterauth,不然Redirected的时候会失败masterauth abcd_123requirepass abcd_123cp 7000/redis.conf 7001/#批改7001目录下redis.conf的对应配置,7000改为7001
  • 3.1.2 在52机器上执行

    与下面51机器配置相似, 把对应配置改成7002和7003。

    mkdir 7002mkdir 70037002/redis.conf7003/redis.conf
  • 3.1.3 在53机器上执行

    与下面51机器配置相似, 把对应配置改成7004和7005。

    mkdir 7004mkdir 70057004/redis.conf7005/redis.conf
  • 3.1.4 别离启动6台Redis
cd /data/apps/redis-5.0.3/src/redis-server 7000/redis.conf src/redis-server 7001/redis.conf src/redis-server 7002/redis.conf src/redis-server 7003/redis.conf src/redis-server 7004/redis.confsrc/redis-server 7005/redis.conf  ps -ef | grep redis 查看启动状况
  • 3.1.5 在某一台上执行退出集群
三主三从./redis-cli --cluster create 192.168.1.51:7000 192.168.1.52:7002 192.168.1.53:7004 192.168.1.51:7001 192.168.1.52:7003 192.168.1.53:7005 --cluster-replicas 1 -a abcd_123

留神: 输出yes确认之前, 先看好哪几台是主,哪几台是从 (如果只有3台机器,确定是穿插主从后输出yes创立)
如果是外网拜访:须要凋谢端口7000 17000 ...等所对应端口

  • 3.1.6测试集群

客户端连贯测试:

./redis-cli -h 192.168.1.51 -c -p 7000 -a abcd_123

4. 哨兵搭建

  • 4.1机器筹备

筹备三台机器,别离装置redis

192.168.1.51 主
192.168.1.52 从
192.168.1.53 从

  • 4.1.1 在51主机器上执行
cd /data/apps/redis-5.0.3mkdir 8000cp redis.conf 8000/redis.conf

批改配置

vim 8000/redis.conf#bind 127.0.0.1 #能够近程拜访protected-mode no #保护模式敞开daemonize yes #后盾启动port 8000pidfile /var/run/redis_8000.pidlogfile "/data/apps/redis-5.0.3/8000/8000.log"dbfilename dump.rdbdir /data/apps/redis-5.0.3/8000/appendonly yes #aof日志开启  有须要就开启,它会每次写操作都记录一条日志appendfilename "appendonly8000.aof"masterauth abcd_123requirepass abcd_123关上redis的key过期监听揭示notify-keyspace-events Ex正文#notify-keyspace-events ""
  • 4.1.2 在52从机器上执行
cd /data/apps/redis-5.0.3mkdir 8001cp redis.conf 8001/redis.conf

批改配置

vim 8001/redis.conf#bind 127.0.0.1 #能够近程拜访protected-mode no #保护模式敞开daemonize yes #后盾启动port 8001pidfile /var/run/redis_8001.pidlogfile "/data/apps/redis-5.0.3/8001/8001.log"dbfilename dump.rdbdir /data/apps/redis-5.0.3/8001/appendonly yes #aof日志开启  有须要就开启,它会每次写操作都记录一条日志appendfilename "appendonly8001.aof"replicaof 192.168.1.51 8000 # 主服务这句话正文,从服务配置的两台须要开启。配置主服务的ip和port masterauth abcd_123requirepass abcd_123关上redis的key过期监听揭示notify-keyspace-events Ex正文#notify-keyspace-events ""
  • 4.1.3 在53从机器上执行

与下面52从机器配置相似, 把对应配置改成8002。

  • 4.1.4 别离启动3台Redis
cd /data/apps/redis-5.0.3/src/redis-server 8000/redis.confsrc/redis-server 8001/redis.confsrc/redis-server 8002/redis.confps -ef | grep redis 查看启动状况
  • 4.1.5 哨兵配置51机器
cp redis-5.0.3/sentinel.conf 8000/

批改配置

vim 8000/sentinel.conf protected-mode noport 28000daemonize yespidfile /var/run/redis-sentinel28000.pidlogfile "/data/apps/redis-5.0.3/8000/28000.log"dir /data/apps/redis-5.0.3/8000sentinel monitor mymaster 192.168.1.51 8000 2sentinel auth-pass mymaster abcd_123sentinel down-after-milliseconds mymaster 30000sentinel parallel-syncs mymaster 1sentinel failover-timeout mymaster 180000sentinel deny-scripts-reconfig yes
  • 4.1.6 哨兵配置52机器

与下面51哨兵配置相似, 把对应配置改成28001。

  • 4.1.7 哨兵配置53机器

与下面51哨兵配置相似, 把对应配置改成28002。

  • 4.1.8别离启动3台哨兵过程
cd /data/apps/redis-5.0.3/src/redis-sentinel 8000/sentinel.conf src/redis-sentinel 8001/sentinel.conf src/redis-sentinel 8002/sentinel.conf ps -ef | grep redis 查看启动状况
  • 4.1.9测试哨兵
./redis-cli -h 192.168.1.51 -p 8000 -a abcd_123 info replication