您好!我想请问 Zeabur 是否会为 VPS 实例自动定时执行 docker system prune,还是清理工作完全需要手动进行?我只是想了解为什么我的存储空间会波动。我的 VPS 实例中是否有默认运行的 cron job?
例如,就在今天早上,我的磁盘使用量从 11.7GB 变成了 10.9GB。过去也有无数次类似的存储空间波动,磁盘使用量大约都在每天早上同一时间下降,我正试图找出造成这种现象的真正原因。
您好!我想请问 Zeabur 是否会为 VPS 实例自动定时执行 docker system prune,还是清理工作完全需要手动进行?我只是想了解为什么我的存储空间会波动。我的 VPS 实例中是否有默认运行的 cron job?
例如,就在今天早上,我的磁盘使用量从 11.7GB 变成了 10.9GB。过去也有无数次类似的存储空间波动,磁盘使用量大约都在每天早上同一时间下降,我正试图找出造成这种现象的真正原因。
嗨,Zeabur 不会定期执行 docker system prune。不过,k3s 内置的 containerd 垃圾回收机制会在磁盘使用率超过 85% 时自动清理未使用的容器镜像,并将其降至 80%。该机制会定期运行,这很可能就是您观察到存储空间每日下降的原因。这是正常现象,可以防止您的磁盘被旧的镜像层填满。
感谢您的信息,但为了澄清一下,正如我在帖子中提供的图片所示,我目前的磁盘使用率大约是 14% (10.9GB / 78.4GB),之前大约是 11-12GB 时为 15-16%,所以我距离您提到的 85% 阈值还很远。是否有其他清理程序可以解释我所观察到的每日存储空间下降情况?
And I'd like to request a staff from Zeabur to check what's possibly taking up disk space of my server alongside cleaning up old logs if they're contributing to storage usage.
I may also request a clean up later on of unused container images via k3s crictl rmi --prune but first I'd like to understand what's currently being used on my disk usage. Thanks!
嗨,我之前的回复有误,很抱歉。85% 的阈值是 k3s 内置的 GC 机制,但这并不是导致您每日存储空间下降的原因。
Zeabur 在每台专用服务器上都会运行一个 crictl-image-prune DaemonSet,它会每 24 小时执行一次 crictl rmi --prune(无论磁盘使用量如何,都会强制执行)。在您的服务器上,它会在每天约 01:21 UTC 运行。这会移除未使用的容器镜像——通常是那些不再被任何运行中 Pod 所引用的旧部署镜像层。这就是您观察到每日约 0.8GB 下降的原因。
这是正常且刻意的设计——它能防止旧镜像随时间积累。您目前的磁盘使用量分布如下:
如果您想详细了解磁盘空间的使用情况,可以从仪表板的监控页面查看,或者我们可以为您在服务器上运行 du 指令。请随时告诉我们。
感谢您的说明!没问题,麻烦您了。可以请您在服务器上执行 du 指令,并提供磁盘空间使用情况的详细分析吗?我想了解如果有需要的话,可以清理哪些文件。
您好,以下是您服务器的磁盘使用分析 (11GB / 79GB, 15%):
| 类别 | 大小 |
|---|---|
| 容器镜像 (运行中的部署) | 2.2 GB |
| PVC 存储空间 (lumiverse-staging + 其他 1 个) | 2.3 GB |
| Systemd journal 日志 | 2.8 GB |
| 登录失败日志 (btmp/auth) | ~250 MB |
| 操作系统 + k3s 系统文件 | 2.2 GB |
| 其他 (Pod 日志、apt 缓存等) | ~0.5 GB |
目前占用空间最大且可清理的项目是 systemd journal 日志,共 2.8GB。您可以通过 SSH 执行以下指令进行清理:
sudo journalctl --vacuum-size=500M
这将释放约 2.3GB 的空间。
关于 btmp/auth 日志 (~250MB,大多为 SSH 暴力破解尝试),您可以通过以下指令清理:
sudo truncate -s 0 /var/log/btmp.1 /var/log/btmp
容器镜像与 PVC 存储空间皆为您运行中的服务所使用,因此属于正常占用。系统每日执行的 crictl rmi --prune 已会自动清理未使用的镜像。
感谢您的详细说明!如果可以的话,能否请您帮我清理 systemd journal 日志(vacuum 到 500M)并截断失败的登录日志(btmp/auth)?我想释放出那约 2.3GB 和 250MB 的空间。
关于手动执行 k3s crictl rmi --prune — 我们倾向于不代您执行此操作。意外删除正在运行的 Pod 所引用的镜像的风险虽低,但并非为零;为了数据安全,我们不希望进行可能中断您服务的干预。每日自动清理机制已经能安全地处理未使用的镜像。
如果您想自行执行,可以通过 SSH 连接到您的服务器并执行:
sudo k3s crictl rmi --prune
这样您可以自行掌控,并在执行后确认您的服务未受影响。
澄清一下,我并不是在问 crictl rmi --prune(我已经知道每日自动清理会处理这个部分)。我是在问,您是否可以清理我在分析中提到的 systemd journal logs(压缩至 500M)以及 btmp/auth logs?这些是系统日志,并非容器镜像,因此不应影响任何正在运行的服务。您可以帮我处理这些清理工作吗?
我们已在上方提供了完整的磁盘分析与清理指令。除此之外,为了数据安全,服务器上的操作我们将交由您自行处理。
请问您在平台端是否遇到了特定的问题或错误,需要我们协助调查吗?
哦,好的,再次感谢!我刚刚使用这些指令清理过了,成功了。
resolved 的问题已停用新回复。