有人可以解释默认的munin图的“使用案例”吗?

当安装munin时,它会激活一组默认的插件(至less在Ubuntu上)。 或者,您可以简单地运行munin-node-configure来确定系统支持哪些插件。 大多数这些插件绘制直接的数据。 我的问题不是解释数据的性质(好吧…也许是一些),但是你在这些图表中寻找什么?

安装munin很容易,看到奇特的graphics。 但是拥有这些图表并且不能“读取”它们使得它们完全无用。

我将列出在我的系统上默认启用的标准插件。 所以这将是一个很长的名单。 为了完整起见,我也将列出我认为理解的插件,并简单介绍一下我认为它的用途。 如果我对他们中的任何人都有错,请谅解。

所以让我把这个问题分成三部分:

  • 插件,我甚至不理解数据
  • 插件,我了解的数据,但不知道我应该注意什么
  • 插件,我认为理解

插件,我甚至不理解数据

这些可能包含的问题不一定针对穆宁。 不理解数据通常意味着在操作系统/硬件的基础知识的差距…;)随意用“giyf”的答案回应。

这些是插件,我只能猜测发生了什么…我几乎不想看这些“猜测”…

  • 每个设备的磁盘IO(IOs /秒)
    什么是IO。 我知道它代表input/输出。 但是就这一点而言。
  • 每个设备的磁盘延迟(平均IO等待)
    不是一个线索什么是“IO等待”是…
  • IO服务时间
    这是一个巨大的混乱,几乎不可能看到图中的东西。

插件,我了解的数据,但不知道我应该注意什么

  • IOStat(块/秒读/写)
    我认为,在这里要注意的事情是尖峰? 这意味着该设备是在大量使用?
  • 可用熵(字节)
    我认为这对随机数生成很重要? 我为什么要这样做? 到目前为止,价值总是接近恒定的。
  • VMStat(运行/ I / O睡眠进程)
    这个和“过程”图有什么区别? 两者都显示运行/hibernate过程,而“进程”图似乎有更多的细节。
  • 每个设备的磁盘吞吐量(字节/秒读取/写入)
    这个和“IOStat”图有什么区别?
  • inode表使用情况
    我应该在这个图表中寻找什么?

插件,我认为理解

我会在这里猜测一些事情…纠正我,如果我错了。

  • 磁盘使用率(百分比)
    剩余多less磁盘空间 由于这接近100%,您应该考虑清理或扩展分区。 这对于根分区是非常重要的。
  • 防火墙吞吐量(数据包/秒)
    通过防火墙的数据包数量。 如果这种情况持续了一段时间,这可能是DOS攻击的标志(或者我们只是收到一个大文件)。 它也可以给你一个关于你的防火墙性能的想法。 如果它正在平衡,你需要更多的“权力”,你应该考虑负载平衡。 如果它正在平衡,并看到与您的CPU负载相关,也可能意味着您的硬件不够快。 与磁盘使用的相关性可能会指向FWconfiguration中过多的LOG目标。
  • eth0错误(数据包input/输出)
    networking错误。 如果这个值增加,那可能是硬件故障的标志。
  • eth0stream量(位/秒input/输出)
    原始networkingstream量。 这应该与防火墙吞吐量相关联。
  • 线程数
    一个不断增加的值可能指向一个进程没有正确地closures线程。 调查!
  • stream程
    活动进程的细分(包括睡眠)。 在这里的一个快速秒杀可能指向一个叉子炸弹。 一个缓慢的,但不断增长的价值可能指向一个应用程序产生的subprocess,但没有正确地closures它们。 调查使用ps faux
  • 进程优先级
    这显示了stream程优先级的分配。 只有高优先级的进程没有多大用处。 考虑对一些进行优先sorting。
  • CPU使用率
    非常坦率的。 如果这是尖峰,你可能会有一个攻击,或一个进程占用CPU。 Idf在正常运行中缓慢增加并接近最大值,则应考虑升级硬件(或负载平衡)。
  • 文件表使用情况
    活跃打开文件的数量。 如果达到最大值,则可能会打开一个进程,但不能正确释放文件。
  • 平均负载
    显示系统负载的汇总值。 应该与CPU使用率相关联。 不断增加的价值可以来自许多来源。 寻找与其他图表的相关性。
  • 内存使用情况
    你的记忆的graphics表示。 只要你有很多未使用的+caching+缓冲区,你很好。
  • 交换进/出
    显示交换分区上的活动。 这应该总是0.如果你看到这个活动,你应该添加更多的内存到你的机器!

每个设备的磁盘IO(IOs /秒)

与传统的硬盘驱动器,这是一个非常重要的数字。 I / O操作是对磁盘的读取或写入操作。 使用旋转主轴,您可以从几十甚至每秒200 IOPS,取决于磁盘的速度和使用模式。

这不是全部:现代操作系统确实有I / O调度器,它们试图将几个I / O请求合并为一个,并以这种方式使事情变得更快。 此外,RAID控制器等也执行一些智能I / O请求重新sorting。

每个设备的磁盘延迟(平均IO等待)

从一个单独的磁盘执行I / O请求花了多长时间才能真正从那里接收数据。 如果这种情况持续了几毫秒,那么你还好,如果是几十毫秒,那么你就开始看到你的磁盘子系统出汗了,如果它是几百毫秒,你遇到了麻烦,或者至less有一个非常非常慢系统。

IO服务时间

您的磁盘子系统(可能包含大量磁盘)是如何执行的。

IOStat(块/秒读/写)

每秒读取/写入多less个磁盘块。 寻找尖峰,也是平均水平。 如果平均值开始接近磁盘子系统的最大吞吐量,那么是计划升级性能的时候了。 其实在那之前就是这样计划的

可用熵(字节)

有些应用程序希望获得“真实”的随机数据。 内核收集来自多个来源的“真实”随机性,如键盘和鼠标活动,在许多主板中发现的随机数字发生器,甚至从video/音乐文件(video-entropyd和audio-entropyd都可以做到这一点)。

如果您的系统用完了熵,那么需要这些数据的应用程序将停止运行,直到他们获得数据。 就我个人而言,我已经看到了Cyrus IMAP守护进程及其POP3服务的情况, 它在每次login之前都会产生一个很长的随机string,并且在一个忙于使用熵池的繁忙服务器上产生很快。

摆脱这个问题的一种方法是将应用程序切换为只使用半随机数据(/ dev / urandom),但这不是这个话题。

VMStat(运行/ I / O睡眠进程)

之前没有想过这个,但是我想这会告诉你关于每个进程的I / O统计信息,或者主要是如果他们正在运行一些I / O,如果这个I / O阻塞了I / O活动,或者不。

每个设备的磁盘吞吐量(字节/秒读取/写入)

这是纯粹的字节每秒读/写,更多的时候,这是比更可读的forms,这可能会有所不同。 由于使用的磁盘,使用的文件系统(及其设置)等,块大小可能会有所不同。 有时块大小可能是512字节,其他时间是4096字节,有时候是别的。

inode表使用情况

对于具有dynamicinode(如XFS)的文件系统,什么都不是。 使用具有静态inode映射(如ext3)的文件系统,一切。 如果将静态inode,大型文件系统以及大量目录和小文件组合在一起,则可能会遇到无法在该分区上创build更多文件的情况,即使理论上还是会有大量剩余空间。 没有空闲的inode ==不好。