写点什么

4 个好用的 Linux 监控工具

  • 2020-05-29
  • 本文字数:1588 字

    阅读完需:约 5 分钟

4个好用的Linux监控工具


身为一个运维开发人员,如果你不知道眼下当前服务器底层操作系统中正在发生什么,那就有点合眼摸象了。其实,你可以根据相应数据做出一定的推测,但是要做到这一点,就需要原始数据,并且数据要有一定的实时性。


你需要能够根据操作系统当前的运行状态,结合监控数据来做出合理判断,采取相应措施。


你是否曾经遇到过一台服务器运行缓慢,但是 CPU 使用率看起来不是很高的情况?你是否遇到过服务器的网络利用率很高,但是定位不到导致高网络利用率的进程情况?


下面介绍的这些工具可以给你提供帮助。最重要的是,它们中的大多数都可以在没有 GUI 的情况下使用,并且能轻松安装在大多数服务器上。 以下就是我每天用到的一些不错的 Linux 监控工具,它们可以帮助我快速准确地诊断和定位问题。

1. iotop


如果你想知道到底哪些进程消耗了服务器宝贵的 I/O 资源,那么请使用 iotop!我无数次地使用它通过 IOPS 参数来定位那些疯狂占用磁盘 IO 的耗时进程。


你只是无法从传统工具(如 top)中获取原始数据。当使用 iotop 时,你会发现正如工具的名字所描述的一样,它会展示进程和系统的 I/O 资源使用情况。


你可以将其用于多种目的,但最关键的是查看磁盘使用情况并标记潜在的性能瓶颈。将此工具与 top 或 htop 等其他工具结合使用,能帮你更全面地了解服务器当前负载情况。


我不建议将 iotop 用于基准测试。尽管你能清楚地了解每个进程占用多少 I/O 资源,但它更适合实时监控而不是重复的性能测试。如果你对 I/O 基准测试感兴趣,我推荐一个名为fio的工具。

2. htop


这是我本人的最爱的监控工具之一。该工具比 top 工具更具视觉吸引力,并且拥有出色的默认配色方案。使用它,你就可以马上对系统当前运行情况有一个清晰了解。


你能清晰地在水平条形图中查看计算机内核数目以及它们的利用率。同样的,你还可以获得内存使用情况的简单统计信息,并且在底部也有经典的 top 进程列表。


我热衷于 htop 的主要原因是它能快速地提供我所关注的信息。我就是想看看服务器每核 CPU 使用率和内存使用率在图形上是怎样的-而不是一个无聊的百分比。


如果你肯定某个进程正在耗尽系统上的所有核心从而打开 htop 进行查看,那么就会发现大片红色,整个过程快速而简单。

3. IPTraf


这是一个诊断网络问题非常有用的工具。使用此工具,你可以监控正在网络传输的网络流量。也能以特定的接口或流量类型(例如特定的 TCP 端口)进行过滤。它与Wireshark功能非常相似,不同之处在于它更轻巧,并且也可以在没有 GUI 的情况下运行。


另外,该监控工具还有一些非常棒的功能,比如按数据包大小对流量进行统计细分:



您可以使用 tcpdump tshark 之类的命令行工具执行类似的操作,但是此工具是菜单驱动的,更易于浏览。如果你更倾向于交互式地过滤和查看网络流量情况,那么 IPTraf 这款工具会如你所愿。

4. Monit


这是你可以在 Linux 上使用的最灵活、功能最强大的监视工具之一。Monit出现了很多年,它能通过多种方式进行配置以支持不同类型的阈值监控和性能告警。


Monit 允许你指定要在 Linux 操作系统上监视的进程、端口、文件等。它支持使用复杂的回退计时器 back-off timer 和消息来设置动态警报模式。


一个监控场景比如你想要监控特定进程以确保其正在运行。如果该进程崩溃一次,只需重新启动它即可。如果它开始多次连续地崩溃,那就不要重新启动该进程,而应该发送警报。这样的监控场景可以通过 Monit 的几行配置轻松实现。


Monit 甚至为守护程序提供了一个不错的轻量级 Web 界面,让你一眼就能看到服务器发生了什么:



无论你是管理单个服务器还是集群,Monit 提供了最简单,最高效和最划算的(免费!)方法来帮你监控服务的运行状态。

结论

非常感谢你抽出宝贵的时间阅读本文。我希望在你了解到我提到的这些 Linux 监控工具,以及为什么它们在分析系统异常时能发挥如此重要的作用后,能使您乐在其中,并有所收获。


原文链接:4 Linux Monitoring Tools You Should Use


2020-05-29 15:5911208
用户头像
wangkx 日拱一卒,功不唐捐。

发布了 76 篇内容, 共 20.6 次阅读, 收获喜欢 127 次。

关注

评论

发布
暂无评论
发现更多内容

2021最新版SpringBoot实战项目教程,美团专家带你深入SpringBoot

爱好编程进阶

Java 面试 后端开发

高精度PP-YOLOE、轻量化PP-PicoDet SOTA模型重磅开源

百度大脑

[Day16]-[链表]反转链表

方勇(gopher)

LeetCode 数据结构和算法

专有云如何精准、及时地实现故障定位?丨智能运维

百度大脑

外包学生管理系统详细架构设计

Geek_bc9c8d

存储成本降低80%,“大智慧”的选择

华为云开发者联盟

数据分析 存储 GaussDB(for Redis) 降本增效

一次简单易懂的多态重构实践,让你理解条件逻辑

华为云开发者联盟

多态 条件逻辑 多态重构 基础逻辑

聚焦信息抽取前沿难题,CCKS-千言通用信息抽取竞赛报名启动

百度大脑

百度文心大模型「技术天团」首次亮相!首场技术开放日、AI创意派决赛来啦~

百度大脑

检测、跟踪、行为识别All-In-One!产业级行人分析系统重磅开源!

百度大脑

ModStart 是基于 Laravel 的模块化开发框架

ModStart开源

PPDE迎新 | 欢迎18位AI开发者加入飞桨开发者技术专家计划

百度大脑

读《Software Engineering at Google》(06)

术子米德

架构师成长笔记

mac浏览器密码获取难?教你两种方法,轻松搞定

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 漏洞挖掘

JVM虚拟机,基础原理总结

Java JVM 虚拟机

Docker技术三大要点:cgroup, namespace 和 unionFS, 从理论到实践

汪子熙

Docker 容器 虚拟化 容器镜像 4月月更

内网渗透(蚁剑+MSF)

喀拉峻

网络安全 WEB安全 内网渗透

Linux驱动开发-编写超声波测距模块的驱动

DS小龙哥

4月月更

大咖云集,星环科技春季新品发布周【数字化转型专题】精彩抢先看

星环科技

数据库

7步搞懂分布式全内容,我不信面试官还敢“怼

爱好编程进阶

Java 面试 后端开发

深入解析 Apache BookKeeper 系列:第二篇 — 写操作原理

Apache Pulsar

开源 架构 云原生 中间件 Apache Pulsar

前端食堂技术周刊第 33 期:IE 退休倒计时:3 个月、TypeScript 4.7 Beta、TypeScript 编译器工作原理、Rust 编码规范

童欧巴

前端 Web 前端工程师

ERNIE-GeoL:“地理位置-语言”预训练模型

百度大脑

数据分析之前知道这 7 件事,少花 80% 时间

龙国富

数据分析 数据采集

自己动手写Docker系列 -- 6.2创建网络

Go Docker 4月月更

5分钟搞懂MySQL - 索引下推优化

爱好编程进阶

Java 面试 后端开发

数据结构之链表中的快慢指针

乌龟哥哥

4月月更

三问三答,解传统企业敏捷转型担忧

华为云开发者联盟

DevSecOps 华为云 敏捷转型 Scrum团队 敏捷团队

大转盘抽奖

Rubble

4月日更 4月月更

梳理数仓FI manager节点健康检查逻辑

华为云开发者联盟

运维 GaussDB(DWS) Manager 健康检查 FI manager

利用String.intern 减少相同值的String内存占用

lich0079

内存 intern java MAT String类

4个好用的Linux监控工具_文化 & 方法_Tate Galbraith_InfoQ精选文章