代码改变世界

etcd压测造成数据目录过大恢复 - 指南

2025-09-23 21:56  tlnshuju  阅读(16)  评论(0)    收藏  举报

2020年1月份写的文章,重新整理了内容发出

问题背景

snapshot save的方式每15分钟备份一次,某天磁盘告警,检查发现备份文件特别大.就是线上某etcd集群,采用的

如上图,发现etcd备份文件竟然有1个多G

如上图,检查etcd的材料目录/var/lib/etcd,发现db文件很大.

问题排查

1.排查发现etcd备份文件从某天忽然彪高,从原来的20多M一下子升到1个多G

2.排查这期间,k8s集群运用未有大的变动,etcd数据空间应该不会有这么大的变动.末了从一个运维排查得知etcd集群用check perf做过性能压测,不过运维说清理了压测数据.

如上图,用bash 命令历史看出,压测后确实删除了压测创建的对应keys,但是为啥空间占用还是这么大.

问题解决

调研得知为etcd文件碎片引起,通过etcdctl compaction; etcd defrag管理,可以释放数据目录空间.

如上图,defrag之后,db数据文件减小为7点多M.

参考:https://www.cnblogs.com/davygeek/p/8524477.html