redis下载路径
推荐一个还可以的博客
https://happyqing.iteye.com/blog/2353535
安装过程
1)使用ftp工具上传redis3.2.7安装包到/opt/下
2)使用cd /opt/目录下,解压安装包
使用tar -zxvf redis-3.2.7.tar.gz命令解压
3)使用 cd redis-3.2.7命令进入redis-3.2.7文件夹
4)在redis-3.2.7文件夹中使用make命令进行编译 (如果出现错误的话使用此命令 make MALLOC-libc)
5)编译完成之后,使用cd src命令进入src文件夹 执行make install 进行redis安装
3.2.2.2配置redis
1)redis.conf配置如下(#后边是说明 不要复制 没有说明的是默认值 可参考svn目录下:手机银行\07_运行维护\手机银行压力测试\mysql\配置文件)
bind 127.0.0.1 #这台服务器的ip 如192.168.200.5
protected-mode yes #是否后台运行
port 6379 #端口号
tcp-backlog 511
timeout 0
tcp-keepalive 300
daemonize yes
supervised no
pidfile "/var/run/redis_6379.pid" #进程id的位置以及存储进程id的文件名
loglevel notice
logfile "/opt/redis/log/redis.log" #日志文件的位置
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
dir "/opt/redis/data" #数据存储位置
masterauth "123456" #redis作为主从访问时设置的密码
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" #redis设置的密码
maxmemory 8gb #优化 运行内存
appendonly no
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
lua-time-limit 5000
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
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
slaveof 192.168.200.5 6381 #主从配置中主机的ip和端口号 主机不用加 若主变为从在主从切换时会自动加
3.2.2.3配置哨兵
2)哨兵配置文件(#后边是说明 不要复制 没有说明的是默认值 可参考svn目录下:手机银行\07_运行维护\手机银行压力测试\mysql\配置文件)
protected-mode no
port 26380 #端口号
daemonize yes
pidfile "/opt/redis/log/sentinel_26380.pid" #存储进程id的文件位置
dir "/tmp"
logfile "/opt/redis/log/sentinel26380.log"#日志文件的文件位置
sentinel myid 78a9a1ff7e21e7f381312d4c92775b3ccfa54a28
sentinel monitor mymaster 196.168.200.5 6381 2 #主从配置中主机的ip 端口号 从机数量 这里的2代表两台机器都认为主机死了的时候这时候才会换主
sentinel down-after-milliseconds mymaster 5000
sentinel auth-pass mymaster 123456 #哨兵链接密码
sentinel config-epoch mymaster 21
sentinel leader-epoch mymaster 21
# Generated by CONFIG REWRITE #以下都是运行时自动生成的 不需要手动添加修改
sentinel known-slave mymaster 196.168.200.5 6380
sentinel known-slave mymaster 196.168.200.6 6379
sentinel known-sentinel mymaster 196.168.200.5 26380 b263b96b98386b4dbf2eefbe8bc91f658f1d9394
sentinel known-sentinel mymaster 196.168.200.6 26380 3e74021f9c397bb9e0043f015764b63d6ef8316c
sentinel current-epoch 21
3.2.2.3启动redis和哨兵
1)启动redis
cd src进入到src目录下使用./redis-server /opt/redis/redis.conf
启动redis服务,并指定启动服务配置文件(三台机器都要启动):
2)启动哨兵
./redis-sentinel /opt/redis/sentinel.conf
- 服务端启动成功后,在src目录下执行./redis-cli启动redis客户端
- 查看redis进程查看是否启动成功
可以通过redis图形化界面进行连接测试
3.3验证
1)在主机上执行 比如196.168.200.5是主机ip ,6380 是主机端口,123456是主机密码
2)./redis-cli -h 196.168.200.5 -p 6380 -a 123456
3)info查看信息
可以看到role:master 以及slave of所有从机
4)去从机上杀死一个redis进程(是杀死redis 不是杀死哨兵)
5)再用info查看信息 如果发现少了一个slave of 则正确
6)把刚刚杀死的redis进程启动
7)再用info查看 如果发现多了一个slave of 则正确
8)杀死当前的主机redis
9)去两台从机用./redis-cli -h ip -p 端口-a 密码连接redis服务 再用info查看 发现两台主机中有一台role从slave变为master 则正确