#背景:来公司之前redis跑的是单主,无备份,rdb和aof都没有,于是我就决定做一个主从,在从上做rdb备份,本着资源充分利用的心理,在一台memcache上做了redis从,memcache这台内存富余50G左右。
周末陆续收到报警redis从机这一台内存富余不足,怕影响到memcache服务,于是决定把redis从的rdb备份关掉,因为在bgsave的时候内存占用会变成双倍,修改配置文件注释掉save那几条重启。
故障就发生了:因为主从重启的时候,主会做一次bgsave操作生成rdb文件传给从,最开始做主从的时候量小,没什么问题,而这次的时候,我们的服务器是64G内存,主已经占用了50G,再做bgsave的时候就导致内存不够,redis就卡住了,无法连接。最后重启主redis解决问题,数据全部没有了。
结论:添加从机会重启从机的时候,应该趁主机的低谷期,而不是高峰期。
这里还有一个细节,之前redis也是没有设置最大内存值以及淘汰规则的,才会导致redis无休止的增长,这个大家也要注意一下。
运维踩坑之旅。
此文也是抛砖引玉,各位兄弟如果有redis上面踩过的坑,可以回复,大家交流一下。