如何在 Ubuntu Server / microk8s 上每 5 分钟跟踪一次磁盘 IO 峰值

如何在 Ubuntu Server / microk8s 上每 5 分钟跟踪一次磁盘 IO 峰值

我已经使用 microk8s 设置了 Ubuntu 服务器,其中包含 dns、仪表板和 prometheus 插件。它正在运行一些 Cardano 节点。

在 (内置) Grafana 仪表板“默认/节点”上,我每 5 分钟就会看到磁盘 IO 出现一次“准时”峰值,就像时钟一样:

5 分钟磁盘 IO 峰值

我很好奇这是什么——我不知道 Ubuntu/microk8s 每 5 分钟会做什么。我如何识别这是什么?(最好不要在主机上安装其他软件)。我在任何日志文件中都找不到任何线索。

答案1

使用iotop我可以识别每 5 分钟写入数据的进程,我按如下方式运行它:

sudo iotop -a -o

-a使值累积并-o仅显示实际读取/写入的值。上次峰值出现 5 分钟后,kube-apiserver出现在列表顶部,数据增加了约 18MB。

按照lsofberndbausch 的建议,我浏览了这些文件,发现其中提到dqlite(我知道这是 microk8s 使用的数据库),并发现https://microk8s.io/docs/ha-recovery列为/var/snap/microk8s/current/var/kubernetes/backend存储路径。

查看该目录,我发现了一些快照文件,这些文件的时间戳正好相隔 5 分钟。它们的大小为 18MB。我又等了 5 分钟,较旧的一个文件消失了,另一个文件出现了。

谜团已揭开!

我找不到有关 microk8s/dqlite 进行 5 分钟快照(或是否可配置)的任何文档,不过在追踪它的同时学习更多工具还是不错的。

相关内容