给redis加一套密码

给redis加一套密码

1、情况简介

本次案例中redis使用的是主从+哨兵模式,一主一从三哨兵模式,哨兵sentinel保证主从的切换,从而保证业务的正常运行,数据持久化方面同时开启aof和rdb两种方式。

2、主从模式配置

主从模式配置的从节点要开启slaveof, 并添加上主节点的ip和端口号,配置好bind地址持久化方式,持久化策略,日志pid路径等。
redis密码配置要添加requirepass和masterauth。
本案例详细配置如下:

  1. [root@redis ~]# grep '^[a-Z]' /etc/redis/redis.conf
  2. daemonize yes
  3. pidfile "/var/run/redis.pid"
  4. port 6379
  5. tcp-backlog 511
  6. bind 10.0.0.1
  7. timeout 0
  8. tcp-keepalive 0
  9. loglevel notice
  10. logfile "/var/log/redis/redis.log"
  11. databases 16
  12. save 900 1
  13. save 300 10
  14. save 60 10000
  15. stop-writes-on-bgsave-error yes
  16. rdbcompression yes
  17. rdbchecksum yes
  18. dbfilename "dump.rdb"
  19. dir "/"
  20. masterauth "yourpassword" #主从配置密码
  21. slave-serve-stale-data yes
  22. slave-read-only yes
  23. repl-diskless-sync no
  24. repl-diskless-sync-delay 5
  25. repl-disable-tcp-nodelay no
  26. slave-priority 100
  27. slaveof 10.0.0.2 6379
  28. requirepass "yourpassword" #验证所需密码
  29. appendonly yes
  30. appendfilename "appendonly.aof"
  31. appendfsync everysec
  32. no-appendfsync-on-rewrite no
  33. auto-aof-rewrite-percentage 100
  34. auto-aof-rewrite-min-size 64mb
  35. aof-load-truncated yes
  36. lua-time-limit 5000
  37. slowlog-log-slower-than 10000
  38. slowlog-max-len 128
  39. latency-monitor-threshold 0
  40. notify-keyspace-events ""
  41. hash-max-ziplist-entries 512
  42. hash-max-ziplist-value 64
  43. list-max-ziplist-entries 512
  44. list-max-ziplist-value 64
  45. set-max-intset-entries 512
  46. zset-max-ziplist-entries 128
  47. zset-max-ziplist-value 64
  48. hll-sparse-max-bytes 3000
  49. activerehashing yes
  50. client-output-buffer-limit normal 0 0 0
  51. client-output-buffer-limit slave 256mb 64mb 60
  52. client-output-buffer-limit pubsub 32mb 8mb 60
  53. hz 10
  54. aof-rewrite-incremental-fsync yes

3、哨兵模式配置

  1. [root@redis-sentinel zbs_redis_sentinel]# cat files/redis_sentinel.conf
  2. ##sentinel for 10.0.0.2 ,its slave is 10.0.0.1
  3. #redis-cache
  4. port 26379 #端口
  5. sentinel monitor redis-cache 10.0.0.2 6379 2
  6. sentinel down-after-milliseconds redis-cache 30000 #30秒后自动切换
  7. sentinel failover-timeout redis-cache 900000
  8. sentinel parallel-syncs redis-cache 1
  9. sentinel auth-pass redis-cache yourpassowrd

4、有关auth-pass的坑

在添加密码时,主从分别添加了requirepass和masterauth的参数,并重启了。如果想在线配置的话,建议使用config set requirepass yourpassowrd来配置,不需要重启redis。但是此时测试redis sentinel并不会主从切换,开始各种看日志看服务,找不到其原因。有关redis sentinel的介绍请看官网:http://redis.io/topics/sentinel 但是在这里找不到和auth-pass参数有关的内容,主从切换就一直失败,但是在另个地址的官网配置文件的参数里发现了这个参数,官网地址如下:http://download.redis.io/redis-stable/sentinel.conf

  • 下面是对此参数的翻译解释
  1. # sentinel auth-pass <master-name> <password>
  2. #
  3. # Set the password to use to authenticate with the master and slaves.
  4. # Useful if there is a password set in the Redis instances to monitor.
  5. #
  6. # Note that the master password is also used for slaves, so it is not
  7. # possible to set a different password in masters and slaves instances
  8. # if you want to be able to monitor these instances with Sentinel.

设置这个密码用来主从之间的认证,这个密码在redis实例监控是很有用的。如果你想用sentinel监控主从实例,此时就要注意master密码也会被用于salve,所以是不能在主从实例设置不同的密码。

 

0
未经许可,不得转载,否则将受到作者追究,博主联系方式见首页右上角

该文章由 发布

这货来去如风,什么鬼都没留下!!!
发表我的评论
取消评论
代码 贴图 加粗 链接 删除线 签到