小服务器磁盘告警别只删日志:从根因定位到容量规划的三步法
半夜收到磁盘使用率告警,是很多管小服务器的人都遇到过的场景。第一反应往往是上去删几个大日志文件,腾出空间就回去睡觉。可是过几天告警又来了,删得越多,心里越没底。磁盘满不是孤立事件,它通常是日志失控、备份堆积或者某个服务写数据失控的信号。只删文件不找原因,等于只关告警不治病。
第一步是定位,先问空间去哪了,而不是先问能删什么。从根目录开始按目录汇总用量,一层一层往下找,找到占用最大的那两三个目录,再看里面是哪些大文件。常见的大头有四类:滚动不及时的日志、越积越多的备份、长期不清理的缓存和不再使用的旧镜像。定位时要分清名义占用和实际占用,有的工具显示的文件大小和磁盘实际占用并不一致,正在被写入的文件尤其如此。把占用排个序,心里就有了地图,而不是凭感觉删。
第二步是分级处理,先易后难,先安全后冒险。能直接清的是过期日志和临时文件,但要确认没有进程还在写它;正在写入的文件即使删掉,空间也不会立刻释放,正确做法是先停掉相关服务,或者用截断的方式把文件清零。能移走的是冷备份和历史归档,搬到对象存储或者另一块盘上,本地只留最近几份。不能随便动的是数据库的数据文件和正在运行的服务目录,动之前先做快照或者先备份。处理完记得复查一次用量,确认空间真的回来了,再把删掉的东西和原因记下来,方便下次复盘。
第三步是建防线,让告警从救火变成例行公事。阈值不要只设一道,八成提醒、九成半告警,两档比一档更从容;每周固定做一次容量巡检,看看增长最快的目录是哪个,顺手把趋势记下来。容量规划不用复杂,拿最近一个月的增长量乘以三,再留出一次扩容的时间窗口,就能大概知道什么时候该加盘。日志也要有规矩,规定好保留天数和单个文件的上限,超出就自动滚动或者自动清理,而不是等磁盘满了再人工救火。
一套流程走下来,磁盘告警就不再是深夜惊吓,而是一次例行检查。定位、分级、设防,这三步都不需要高深的工具,需要的是一次做完就固定下来的习惯。小服务器的运维拼的不是谁更会删文件,而是谁能让同样的问题不再重复出现。下次告警再响,先别急着删,打开用量清单,按这三步走一遍,半小时就能把事情收拾干净。
- 点赞
- 收藏
- 关注作者
评论(0)