这是《Linux 运维工程师必备的80个监控工具》的下篇,上篇请点击:Linux运维工程师必备的80个监控工具全集(上)
与系统有关的监控30nmom
[26]
nmon 将数据输出到屏幕上的,或将其保存在一个以逗号分隔的文件中。你可以查看 CPU,内存,网络,文件系统,前列 进程。数据也可以被添加到 RRD 数据库中用于进一步分析。
31Conky
[27]
Conky 能监视很多的操作系统数据。它支持 IMAP 和 POP3, 甚至许多流行的音乐播放器!出于方便不同的人,你可以使用自己的 Lua 脚本或程序来进行扩展。
32Glances
[28]
使用 Glances 监控你的系统,其旨在使用最小的空间为你呈现最多的信息。它可以在客户端/服务器端模式下运行,也有远程监控的能力。它也有一个 Web 界面。
33Saidar
[29]
Saidar 是一个非常小的工具,为你提供有关系统资源的基础信息。它将系统资源在全屏进行显示。重点是 saidar 会尽可能的简化。
34RRDtool
[30]
RRDtool 是用来处理 RRD 数据库的工具。RRDtool 旨在处理时间序列数据,如 CPU 负载,温度等。该工具提供了一种方法来提取 RRD 数据并以图形界面显示。
35monit
[31]
如果出现故障时,monit 有发送警报以及重新启动服务的功能。它可以对各种数据进行检查,你可以为 monit 写一个脚本,它有一个 Web 用户界面来分担你眼睛的压力。
36Linux process explorer
[32]
Linux process explorer 是类似 OSX 或 Windows 的活动监视器。它比 top 或 ps 的使用范围更广。你可以查看每个进程的内存消耗以及 CPU 的使用情况。
37df
df 是 disk free 的缩写,它是所有 UNIX 系统预装的程序,用来显示用户有访问权限的文件系统的可用磁盘空间。
38discus
[33]
discus 类似于 df,它的目的是通过使用更吸引人的特性,如颜色,图形和数字来对 df 进行改进。
39xosview
[34]
xosview 是一款经典的系统监控工具,它给你提供包括 IRQ 在内的各个不同部分的简单总览。
40Dstat
[35]
dstat 旨在替代 vmstat,iostat,netstat 和 ifstat。它可以让你查实时查看所有的系统资源。这些数据可以导出为 CSV。最重要的是 dstat 允许使用插件,因此其可以扩展到更多领域。
41Net-SNMP
[36]SNMP 即“简单网络管理协议”,Net-SNMP 工具套件使用该协议可帮助你收集服务器的准确信息。
42incron
[37]incron 允许你监控一个目录树,然后对这些变化采取措施。如果你想在目录‘a’中出现新文件时,将其复制到目录‘b’,这正是 incron 能做的。
43monitorix
[38]Monitorix 是轻量级的系统监控工具。它可以帮助你监控单独一台机器,并为你提供丰富的指标。它也有一个内置的 HTTP 服务器,来查看图表和所有指标的报告。
44vmstat
vmstat(virtual memory statistics)是一个小型内置工具,能监控和显示机器的内存。
45uptime
这个小程序能快速显示你机器运行了多久,目前有多少用户登录和系统过去1分钟,5分钟和15分钟的平均负载。
46mpstat
mpstat 是一个内置的工具,能监视 cpu 的使用情况。最常见的使用方法是 mpstat -P ALL
,它给你提供 cpu 的使用情况。你也可以间歇性地更新 cpu 的使用情况。
47pmap
pmap 是一个内置的工具,报告一个进程的内存映射。你可以使用这个命令来找出导致内存瓶颈的原因。
48ps
该命令将给你当前所有进程的概述。你可以使用 ps -A
命令查看所有进程。
49sar
[39]
sar 是 sysstat 包的一部分,可以帮助你收集、报告和保存不同系统的指标。使用不同的参数,它会给你提供 CPU、 内存和 I/O 使用情况及其他东西。
50collectl
[40]
类似于 sar,collectl 收集你机器的性能指标。默认情况下,显示 cpu、网络和磁盘统计数据,但它实际收集了很多信息。与 sar 不同的是,collectl 能够处理比秒更小的单位,它可以被直接送入绘图工具并且 collectl 的监控过程更广泛。
51iostat
[41]
iostat 也是 sysstat 包的一部分。此命令用于监控系统的输入/输出。其报告可以用来进行系统调优,以更好地调节你机器上硬盘的输入/输出负载。
52free
这是一个内置的命令,用于显示你机器上可用的内存大小以及已使用的内存大小。它还可以显示某时刻内核所使用的缓冲区大小。
53/proc 文件系统
[42]
proc 文件系统可以让你查看内核的统计信息。从这些统计数据可以得到你机器上不同硬件设备的详细信息。看看这个 proc 文件统计的完整列表[42]。
54GKrellm
[43]GKrellm 是一个图形应用程序,用来监控你硬件的状态信息,像CPU,内存,硬盘,网络接口以及其他的。它也可以监视并启动你所选择的邮件阅读器。
55Gnome 系统监控器
[44]
Gnome 系统监控器是一个基本的系统监控工具,其能通过一个树状结构来查看进程的依赖关系,能杀死进程及调整进程优先级,还能以图表形式显示所有服务器的指标。
日志监控工具56GoAccess
[45]
GoAccess 是一个实时的网络日志分析器,它能分析 apache, nginx 和 amazon cloudfront 的访问日志。它也可以将数据输出成 html,JSON 或 CSV 格式。它会给你一个基本的统计信息、访问量、404 页面,访客位置和其他东西。
57Logwatch
[46]Logwatch 是一个日志分析系统。它通过分析系统的日志,并为你所指定的部分创建一个分析报告。它每天给你一个报告,以便让你花费更少的时间来分析日志。
58Swatch
[47]
像 Logwatch 一样,Swatch 也监控你的日志,但不是给你一个报告,它会匹配你定义的正则表达式,当匹配到后会通过邮件或控制台通知你。它可用于检测入侵者。
59MultiTail
[48]
MultiTail 可帮助你在多个窗口之下监控日志文件。你可以将这些日志文件合并到一个窗口。它可以通过正则表达式的帮助,使用不同的颜色来显示日志文件以方便你阅读。
系统工具
60acct or psacct
[49]acct 也称 psacct(取决于如果你使用 apt-get 还是 yum)可以监控所有用户执行的命令,包括 CPU 时间和内存占用。一旦安装完成后你可以使用命令 sa 来查看统计。
61whowatch
[50]类似 acct,这个工具监控系统上所有的用户,并允许你实时查看他们正在执行的命令及运行的进程。它将所有进程以树状结构输出,这样你就可以清楚地看到到底发生了什么。
62strace
[51]
strace 被用于诊断、调试和监控程序之间的相互调用过程。最常见的做法是用 strace 打印系统调用的程序列表,其可以看出程序是否像预期那样被执行了。
63DTrace
[52]
DTrace 可以说是 strace 的大哥。它动态地跟踪与检测代码实时运行的指令。它允许你深入分析其性能和诊断故障。但是,它并不简单,关于这个话题有1200本书之多。
64Webmin
[53]
Webmin 是一个基于 Web 的系统管理工具。它不需要手动编辑 UNIX 配置文件,可以让你远程管理系统。它有一对监控模块用于连接它。
65Stat
Stat 是一个内置的工具,用于显示文件和文件系统的状态信息。它会显示文件何时被修改、访问或更改。
66ifconfig
ifconfig 是一个内置的工具,用于配置网络接口。大多数网络监控工具背后都使用 ifconfig 将网卡设置成混乱模式来捕获所有的数据包。你可以手动执行 ifconfig eth0 promisc
进入混乱模式,使用 ifconfig eth0 -promisc
返回正常模式。
67
ulimit [54]
ulimit 是一个内置的工具,可监控系统资源,并可以限制任何监控资源不得超标。比如做一个 fork 炸弹,如果使用 ulimit 正确配置了将完全不受影响。
68
CPULimit[55]CPULimit 是一个小工具,用于监控并限制进程对 CPU 的使用率。其特别可以用于将批处理作业对 CPU 的使用率保持在一定范围。
69lshw
lshw 是一个小的内置工具,能提取关于本机硬件配置的详细信息。它可以输出 CPU 版本和主板配置。
70w
w 是一个内置命令,用于显示当前登录用户的信息及他们所运行的进程。
71lsof
lsof 是一个内置的工具,可让你列出所有打开的文件和网络连接。从那里你可以看到文件是由哪个进程打开的,基于进程名可找到其特定的用户,或杀死属于某个用户的所有进程。
基础架构监控工具
72Server Density
我们的 服务器监控工具[56] 它有一个 web 界面,使你可以进行报警设置并可以通过图表来查看所有系统的网络指标。你还可以设置监控的网站,无论是否在线。Server Density 允许你设置用户的权限,你可以根据我们的插件或 api 来扩展你的监控。该服务已经支持 Nagios 的插件了。
73OpenNMS
[57]
OpenNMS 主要有四个功能区:事件管理和通知;发现和配置;服务监控和数据收集。其设计为可被在多种网络环境中定制。
74SysUsage
[58]
SysUsage 通过 Sar 和其他系统命令持续监控你的系统。一旦达到阈值它也可以进行报警通知。SysUsage 本身也可以收集所有的统计信息并存储在一个地方。它有一个 Web 界面可以让你查看所有的统计数据。
75brainypdm
[59]
brainypdm 是一个数据管理和监控工具,它能收集来自 nagios 或其它常规来源的数据并以图表显示。它是跨平台的,其基于 Web 并可自定义图形。
76PCP
[60]
PCP 可以收集来自多个主机的指标,并且效率很高。它也有一个插件框架,所以你可以让它收集对你很重要的指标。你可以通过任何一个 Web 界面或 GUI 访问图形数据。它比较适合大型监控系统。
77 KDE 系统守护
[61]
这个工具既是一个系统监控器也是一个任务管理器。你可以通过工作表来查看多台机器的服务指标,如果需要杀死一个进程或者你需要启动一个进程,它可以在 KDE 系统守护中来完成。
78Munin
[62]
Munin 既是一个网络也是系统监控工具,当一个指标超出给定的阈值时它会提供报警机制。它运用 RRDtool 创建图表,并且它也有 Web 界面来显示这些图表。它更强调的是即插即用的功能并且有许多可用的插件。
79Nagios
[63]
Nagios 是系统和网络监控工具,可帮助你监控多台服务器。当发生错误时它也有报警功能。它的平台也有很多的插件。
80Zenoss
[64]
Zenoss 提供了一个 Web 界面,使你可以监控所有的系统及网络指标。此外,它能自动发现网络资源和修改网络配置。并且会提醒你采取行动,它也支持 Nagios 的插件。
81 Cacti
[65]
(和上一个一样!) Cacti 是一个网络图形解决方案,其使用 RRDtool 进行数据存储。它允许用户在预定的时间间隔进行投票服务并将结果以图形显示。Cacti 可以通过 shell 脚本扩展来监控你所选择的来源。
82Zabbix
[66]
Zabbix 是一个开源的基础设施监控解决方案。它使用了许多数据库来存放监控统计信息。其核心是用 C 语言编写,并在前端中使用 php。如果你不喜欢安装代理端,Zabbix 可能是一个最好选择。
PS:如果您还有补充,欢迎给我们留言~
via: https://blog.serverdensity.com/80-linux-monitoring-tools-know/
作者:Jonathan Sundqvist[72] 译者:strugglingyouth[73] 校对:wxy[74]
本文由 LCTT[75] 原创编译
[26]: http://nmon.sourceforge.net/pmwiki.php
[27]: http://conky.sourceforge.net/
[28]: https://github.com/nicolargo/glances
[29]: https://packages.debian.org/sid/utils/saidar
[30]: http://oss.oetiker.ch/rrdtool/
[31]: http://mmonit.com/monit
[32]: http://sourceforge.net/projects/procexp/
[33]: http://packages.ubuntu.com/lucid/utils/discus
[34]: http://www.pogo.org.uk/%7Emark/xosview/
[35]: http://dag.wiee.rs/home-made/dstat/
[36]: http://www.net-snmp.org/
[37]: http://inotify.aiken.cz/?section=incron&page=about&lang=en
[38]: http://www.monitorix.org/
[39]: http://sebastien.godard.pagesperso-orange.fr/
[40]: http://collectl.sourceforge.net/
[41]: http://sebastien.godard.pagesperso-orange.fr/
[42]: http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/proc.html
[43]: http://members.dslextreme.com/users/billw/gkrellm/gkrellm.html
[44]: http://freecode.com/projects/gnome-system-monitor
[45]: http://goaccess.io/
[46]: http://sourceforge.net/projects/logwatch/
[47]: http://sourceforge.net/projects/swatch/
[48]: http://www.vanheusden.com/multitail/
[49]: http://www.gnu.org/software/acct/
[50]: http://whowatch.sourceforge.net/
[51]: http://sourceforge.net/projects/strace/
[52]: http://dtrace.org/blogs/about/
[53]: http://www.webmin.com/
[54]: http://ss64.com/bash/ulimit.html
[55]: https://github.com/opsengine/cpulimit
[56]: https://www.serverdensity.com/server-monitoring/
[57]: http://www.opennms.org/
[58]: http://sysusage.darold.net/
[59]: http://sourceforge.net/projects/brainypdm/
[60]: http://www.pcp.io/
[61]: https://userbase.kde.org/KSysGuard
[62]: http://munin-monitoring.org/
[63]: http://www.nagios.org/
[64]: http://www.zenoss.com/
[65]: http://www.cacti.net/
[66]: http://www.zabbix.com/
[72]: https://www.serverdensity.com/
[73]: https://github.com/strugglingyouth
[74]: https://github.com/wxy
本文出自 “马哥Linux培训” 博客,请务必保留此出处http://mageedu.blog.51cto.com/4265610/1976492