下载源码:
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
解压和安装
tar -xf redis-4.0.11.tar.gz -C /usr/local/
cd /usr/local/
ln -s redis-4.0.11/ redis
cd /usr/local/redis
make MALLOC=libc && make && make install
配置主从: 1主192.168.203.100 2从配置好 192.168.203.101 192.168.203.102
主配置文件:
bind 192.168.203.100 127.0.0.1 #不想监听0.0.0.0 且,又但愿监听127.0.0.1和本机ip
protected-mode no #无保护模式,若是不打算设置密码,且使用主从,这个地方必定要设置no
daemonize yes #配置后台启动
logfile "./redis.log" #配置redis运行的日志路径
pidfile "/var/run/redis_6379.pid" # 默认无需更改html
192.168.203.101这个从节点配置文件:
bind 192.168.203.101 127.0.0.1 #不想监听0.0.0.0 且,又但愿监听127.0.0.1和本机ip
protected-mode no #无保护模式,若是不打算设置密码,且使用主从,这个地方必定要设置no
daemonize yes #配置后台启动
logfile "./redis.log" #配置redis运行的日志路径
pidfile "/var/run/redis_6379.pid" # 默认无需更改
slaveof 192.168.203.100 6379redis
启动
/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
关闭
redis-cli shutdown
检查:
netstat -tulnp |grep 6379ide
配置slave:
slaveof 192.168.203.100 6379测试
验证主从正常
redis-cli info replication
其中 master_link_status:up 正常,且主从数据测试可以同步ui
bind 0.0.0.0
protected-mode no #默认为no
sentinel monitor mymaster 192.168.203.100 6379 2
dir "/tmp" #默认便可, sentinel的chroot目录
logfile "./sentinel.log" #须要添加这行配置,不然看不到sentinel的日志
sentinel down-after-milliseconds mymaster 5000
daemonize yes #后台启动日志
启动哨兵
/usr/local/redis/src/redis-sentinel /usr/local/redis/sentinel.conf
检查哨兵状态
redis-cli -p 26379 INFO Sentinel
关闭哨兵
redis-cli -p 26379 shutdown
查看哨兵日志
tail -f /tmp/sentinel.log code
在哨兵模式下,这两个文件会被自动控制,而且自动修改的。
redis.conf sentinel.conf server
添加认证
redis.conf添加的配置
masterauth "123456"
requirepass "123456"
protected-mode yes #固然此时设置了为no,测试也没有影响,须要密码htm
sentinel.conf 配置文件修改blog
注意: 必定要搞清楚masterauth 和 requirepass 区别
https://www.cnblogs.com/hexiaohui003/p/10885928.html
1 查看日志:tail -f /tmp/sentinel.log
2 查看状态: redis-cli -p 26379 INFO Sentinel
缘由:
slave 没有良好的,缘由,是bind没有监听本机端口,只监听了127.0.0.1 。 这是属于master-slave阶段就错误了
requirepass 在redis.conf中忘了加,requirepass 和 masterauth 须要配套使用
'sentinel auth-pass mymaster "123456"'
No such master with specified name.
缘由: sentinel monitor mymaster 这行配置应该在sentinel.conf配置文件中其余sentinel的配置的前面。