You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移至Azure Cache for Redis 24小时后K8s中Redis密钥消失原因排查

可能的原因分析

1. Bitnami Redis Chart内置的闲置实例清理逻辑

Bitnami的Redis Helm Chart(v9.4.3)可能附带了针对无活跃连接实例的运维脚本。当39个客户端全部切换后,原实例长时间处于无活跃连接状态,Chart的sidecar容器或定时任务可能触发了数据清理——即使你禁用了flush类命令,脚本也可能通过直接删除AOF/RDB文件、重启实例的方式清空数据。

2. Kubernetes层面的Pod重启或资源回收

  • 若原Redis实例的PVC配置了reclaimPolicy: Delete,当Pod因闲置被Kubernetes自动清理(如集群闲置资源回收策略触发),PVC会被删除,挂载的磁盘数据也会直接丢失。
  • 若实例因CPU/内存超限被Kubernetes强制重启,而AOF文件存在损坏,Redis启动时无法加载AOF内容,会自动初始化空数据库。可通过查看Pod的重启日志、用redis-check-aof工具验证AOF文件完整性来确认。

3. Redis 5.0.5版本的潜在bug

Redis 5.0.5的部分版本存在内存回收逻辑漏洞:当键值对关联的客户端连接全部关闭后,即使TTL为-1,长时间未被访问的键值对可能被内部GC误标记为可清理对象。另外,若bgrewriteaof过程中出现异常中断,新生成的AOF文件可能为空,后续重启时加载空文件导致数据清空。

4. 磁盘或权限异常导致AOF文件失效

  • 运行Redis的容器用户可能丢失了AOF文件的读写权限,导致Redis无法写入操作记录,后续重启时无法加载原有数据。
  • AOF重写过程会临时占用双倍磁盘空间,若8GB磁盘在重写时耗尽空间,可能导致原有AOF文件被覆盖为空。可检查磁盘使用历史记录,确认是否出现过空间耗尽的情况。

内容的提问来源于stack exchange,提问作者RahulJha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 04:10:01