注解前端
本文是一篇译文,原文是: 80 Linux Monitoring Tools 。mysql
Linux性能监控及调试并非个容易事,在 合适的时机 使用 正确的工具 却可事半功倍!linux
如下是史上整理最全的 Linux 监控工具集:ios
这是一个预装在不少 Unix 系统的小工具。 当你想要查看在系统中运行的进程或者线程时, top 就是一个不错的工具。 你能够用不一样的方式对这些进程进行排序,默认是以 CPU 使用率进行排序的。github
apachetop 用于监视 apache 网络服务器的总体性能。 它主要是基于 mytop 。 apachetop 展现服务器当前读写数以及总处理请求数,很是有用。
ftptop 用于监控 FTP 服务器,提供的信息很是丰富: 当前 FTP 链接总数 、 会话总数 ( session )、 上传下载总数 以及 登陆用户 等等。
powertop 能够帮你诊断与 电源消耗 以及 电源管理 相关的问题。 powertop 也能够帮你 试验电源管理设置 ,以达到最优。 按制表键( Tab )能够切换标签页。
iotop 检查 I/O 使用状况并以一种相似 top 的界面展现。 它按列展现读和写的速率,每行表明一个进程。 它也展现了进程花在内存页换入( swapping in )以及等待 I/O 时间的百分比。
ntopng 是 ntop 的升级版,经过浏览器提供了一个用于网络监控的图形用户界面。 它能够胜任的工做包括但不局限于:主机地理定位;采集网络流量;显示 IP 流量分布并分析。
iftop 命令与 top 相似,但与 top 主要用于检查 CPU 使用率不一样, iftop 监听 选定网卡网络流量 并以表格的形式展现当前使用量。 所以,它能够轻松回答像“为何个人网络这么慢呢?”这样的问题。
bandwidthd 追踪 TCP/IP 网络子网的使用状况,并经过 png 图片构建一个形象化 HTML 页面在浏览器中展现。 它由数据库系统驱动,支持搜索、过滤、多传感器以及定制化报告。
IPTState 可让你观察流量经过 iptables 后去往何处,并根据你给定的条件进行排序。 该工具还支持从 iptables 表中删除状态信息。
vnStat 也是一个 网络流量监控 工具。 它直接使用内核提供的统计数据,占用系统资源更少。 因为统计数据通过 持久化 ,机器重启后依旧可用。 另外,有艺术气质的系统管理员可使用它提供的 颜色选项 。
netstat 是一个古老的工具,如今更推荐使用 ss 命令。 ss 比 netstat 更能干,显示信息更全面,更重要的是速度更快。 举个例子,运行 ss -s
能够输出一个 汇总统计 。
nmap 是一个 扫描工具 ,用于扫描服务器端口,探测操做系统类型。 你也能够将 nmap 用于 SQL注入漏洞 ( SQL injection vulnerabilities )、 网络发现 ( network discovery )以其余 渗透测试 ( penetration testing )场景。
mtr 将 traceroute 以及 ping 的功能组合起来,造成一个更强大的网络诊断工具。 使用 mtr 时,它会限制每一个数据包的跳数( TTL ),而后根据过时回包判断数据包达到的位置。 它不断重复这个探测过程,每秒一次。
tcpdump 是一个 抓包工具 ,根据你提供的 条件表达式 ( expression )抓取匹配的 网络数据包 ( packet )并展现。 你也能够将数据保存下来,作进一步分析。
Justniffer 是一个 TCP 包 嗅探器 。 使用该嗅探器,你能够选择嗅探 低层数据 ( low-level data )仍是 高层数据 ( high level data )。 你也能够生成日志,格式能够自定义。 例如,你能够模仿 apache 的访问日志( access log )格式。
SysUsage 经过 sar 以及其余系统命令持续对系统进行监控。 它容许你设置告警阈值,指标超过设定值时便发送告警信息。 SysUsage 自己能够部署在中央服务器,全部采集到的统计数据也存在那。 它提供一个 Web 界面,能够查看到全部的统计数据。
PCP 是 Performance Co-Pilot 的简写。 它能够很是高效地从多台主机收集指标数据。 它提供一个编写插件的框架,借此你能够写插件采集你认为重要的指标。 你能够经过 Web 界面或者一个 GUI 界面查看数据图表。 监控大型系统, PCP 是一个不错的选择。
KSysGuard 这个工具既是 系统监视器 ,又是 任务管理器 。 经过 KSysGuard 你能够在一个工做表里查询多台服务器的系统指标,也能够杀死或者启动一个服务器进程。
Munin 是一个 网络监控 和 系统监控 工具,能够为指标设置告警阈值。 它使用 RRDtool 生成图表,并提供一个 Web 界面来展现图表。 它主打插件扩展能力,提供了很多可用插件。
Zenoss 支持对 系统 和 网络 指标进行监控,并且提供了 Web 界面。 它还支持 网络资源 以及 网络配置变动 自动发现。 它也支持告警功能,并且兼容 Nagios 插件。
Cacti 是一个网络画图工具,使用 RRDtool 作数据存储。 它容许用户按期拉取服务指标,并以图表展现。 用户能够经过 shell 脚原本扩展 Cacti ,实现对指定资源的监控。
Zabbix 是一个开源的 基础设施监控 ( infrastructure monitoring )解决方案。 Zabbix 核心部分是用 C 实现的,前端则是 PHP ,数据存储部分则能够对接大部分现有数据库。 此外, agent 不是必要的。 若是你不想安装 agent ,那么 Zabbix 应该一个不错的选择。
Linux进程管理器 与 OSX 活动监视器以及 Windows 进程管理器相似。 它的设计目标是,作比 top 或 ps 更好用的工具。 经过它,你能够查看到每一个系统进程,以及它们占用了多少内存和 CPU 资源。
订阅更新,获取更多学习资料,请关注咱们的 微信公众号 :