Linux工程師必備的88個監控工具

Linux工程師必備的88個監控工具

https://learn-linux.readthedocs.io/zh_CN/latest/maintenance/monitor/tools/80-linux-monitoring-tools.htmlhtml

 

註解前端

本文是一篇譯文,原文是: 80 Linux Monitoring Tools 。mysql

Linux性能監控及調試並非個容易事,在 合適的時機 使用 正確的工具 卻可事半功倍!linux

如下是史上整理最全的 Linux 監控工具集:ios

命令行工具

1. top

../../../_images/dd1012376c651ee2ffb8213857b99c14.jpg

topgit

這是一個預裝在不少 Unix 系統的小工具。 當你想要查看在系統中運行的進程或者線程時, top 就是一個不錯的工具。 你能夠用不一樣的方式對這些進程進行排序,默認是以 CPU 使用率進行排序的。github

2. htop

../../../_images/12fc6af67dc62f0533fed55510a168d9.jpg

htopweb

htop 實質上是一個加強版的 top 。 用它對進程進行排序更爲容易。 界面看上去也更容易理解,而且已經內置了不少通用操做。 另外,它也是徹底交互式的。正則表達式

3. atop

與 top 和 htop 相似, atop 也能夠用來監控系統進程。 不一樣的是, atop 能夠按天記錄進程日誌,以便長期分析。sql

4. apachetop

apachetop 用於監視 apache 網絡服務器的總體性能。 它主要是基於 mytop 。 apachetop 展現服務器當前讀寫數以及總處理請求數,很是有用。

5. ftptop

ftptop 用於監控 FTP 服務器,提供的信息很是豐富: 當前 FTP 鏈接總數 、 會話總數 ( session )、 上傳下載總數 以及 登陸用戶 等等。

6. mytop

../../../_images/fc755a0d3b2ba2fb222fbdcae3fe68b5.jpg

mytop

mytop 是一個用於監控 MySQL 線程以及性能的小工具。 它可讓你實時查看數據庫正在處理哪些請求。

7. powertop

../../../_images/d229d346cf4517618c932f5b24453ab3.jpg

powertop

powertop 能夠幫你診斷與 電源消耗 以及 電源管理 相關的問題。 powertop 也能夠幫你 試驗電源管理設置 ,以達到最優。 按製表鍵( Tab )能夠切換標籤頁。

8. iotop

../../../_images/4a24a9daef026cf4e07faaa7fb3eb2b3.jpg

iotop

iotop 檢查 I/O 使用狀況並以一種相似 top 的界面展現。 它按列展現讀和寫的速率,每行表明一個進程。 它也展現了進程花在內存頁換入( swapping in )以及等待 I/O 時間的百分比。

桌面監控

9. ntopng

../../../_images/43c5857536c2d66c781765b2a58e2fd6.jpg

ntopng

ntopng 是 ntop 的升級版,經過瀏覽器提供了一個用於網絡監控的圖形用戶界面。 它能夠勝任的工做包括但不侷限於:主機地理定位;採集網絡流量;顯示 IP 流量分佈並分析。

10. iftop

../../../_images/27278c81dead36d5bd3dd3ed144ddd54.jpg

iftop

iftop 命令與 top 相似,但與 top 主要用於檢查 CPU 使用率不一樣, iftop 監聽 選定網卡網絡流量 並以表格的形式展現當前使用量。 所以,它能夠輕鬆回答像「爲何個人網絡這麼慢呢?」這樣的問題。

11. jnettop

../../../_images/defddeac0190c2e492ceb5f9a25fcf26.jpg

jnettop

jnettop 也用於監測網絡流量,但比 iftop 更形象。 另外,它還支持自定義文本輸出,以及可用於更深刻分析的機器友好模式。

12. bandwidthd

../../../_images/971474cfbcbf236c023e285176a6c0ca.jpg

bandwidthd

bandwidthd 追蹤 TCP/IP 網絡子網的使用狀況,並經過 png 圖片構建一個形象化 HTML 頁面在瀏覽器中展現。 它由數據庫系統驅動,支持搜索、過濾、多傳感器以及定製化報告。

14. ethtool

../../../_images/91195036db50abff7ec2a354ea1d12da.jpg

ethtool

ethtool 命令用於展現和修改 網卡 參數。 它也能夠用來診斷 以太網 設備,以獲取更多統計數據。

15. NetHogs

../../../_images/b2fd20cebc2501342e1b2a54ea379ce6.jpg

NetHogs

NetHogs 對網絡流量安裝協議或者子網進行分解,而後按進程進行分組。 所以,當網絡流量猛增時,你可使用 NetHogs 揪出肇事進程。

16. iptraf

../../../_images/2fb7f5e885a4b03c6f57f7763590be44.jpg

iptraf

iptraf 收集很多指標: TCP 連 接數據包以及字節計數 、 接口統計 、 活動指標 、 TCP/IP 通訊故障 以及 站內數據包及字節計數 等等。

17. ngrep

../../../_images/1e0968ff7403c6208f64db811c3f0dbb.jpg

ngrep

ngrep 是爲網絡層設計的 grep 。 它依賴 pcap ,支持經過 正則表達式 或 十六進制表達式 來匹配數據包。

18. MRTG

../../../_images/c63c11088444a34bc242b7a06f4aefee.jpg

MRTG

MRTG 最初被開發來監控路由流量,但如今可以監控網絡相關的東西。 它每五分鐘採集一次數據,而後生成一個 HTML 頁面。 它還具有發送郵件告警的能力。

19. bmon

../../../_images/23da63fe24eea4cf7688ade81b286bc0.jpg

bmon

bmon 可以監控並幫你調試網絡。 它捕獲網絡相關統計數據,並以友好的方式進行展現。 你還能夠經過 curses 或腳本與 bmon 進行交互。

20. traceroute

../../../_images/c1360b9f4b4faebe8260cc46ba4d4e08.jpg

traceroute

traceroute 是一個內置工具,用於展現路由以及測量數據包通過網絡的延遲。

21. IPTState

IPTState 可讓你觀察流量經過 iptables 後去往何處,並根據你給定的條件進行排序。 該工具還支持從 iptables 表中刪除狀態信息。

22. darkstat

../../../_images/7e1c748d78d7044b65536009649e0908.jpg

traceroute

darkstat 採集網絡流量並計算用量統計。 統計報告由圖表組成,經過一個簡單的 HTTP 服務器對外提供。

23. vnStat

../../../_images/1db884d11d1edaddd4998bf1520b4d92.jpg

vnStat

vnStat 也是一個 網絡流量監控 工具。 它直接使用內核提供的統計數據,佔用系統資源更少。 因爲統計數據通過 持久化 ,機器重啓後依舊可用。 另外,有藝術氣質的系統管理員可使用它提供的 顏色選項 。

24. netstat

../../../_images/0aca727c7d65ea25b4886e10c84205c5.jpg

netstat

netstat 是一個系統內置工具,能夠查詢 TCP 網絡鏈接(套接字)、路由表以及網卡信息。 它常常被用於排查網絡問題。

25. ss

netstat 是一個古老的工具,如今更推薦使用 ss 命令。 ss 比 netstat 更能幹,顯示信息更全面,更重要的是速度更快。 舉個例子,運行 ss -s 能夠輸出一個 彙總統計 。

26. nmap

../../../_images/f4d5462dae62bcdee5f9282fd64f67af.jpg

nmap

nmap 是一個 掃描工具 ,用於掃描服務器端口,探測操做系統類型。 你也能夠將 nmap 用於 SQL注入漏洞 ( SQL injection vulnerabilities )、 網絡發現 ( network discovery )以其餘 滲透測試 ( penetration testing )場景。

27. mtr

../../../_images/21b0293ae36bd785b090db436f059f5c.jpg

mtr

mtr 將 traceroute 以及 ping 的功能組合起來,造成一個更強大的網絡診斷工具。 使用 mtr 時,它會限制每一個數據包的跳數( TTL ),而後根據過時回包判斷數據包達到的位置。 它不斷重複這個探測過程,每秒一次。

28. tcpdump

../../../_images/31c43cde73a40feded8628de5d2d3d1d.jpg

tcpdump

tcpdump 是一個 抓包工具 ,根據你提供的 條件表達式 ( expression )抓取匹配的 網絡數據包 ( packet )並展現。 你也能夠將數據保存下來,作進一步分析。

29. Justniffer

../../../_images/3280a150a2969cc27b9078f58238f161.jpg

Justniffer

Justniffer 是一個 TCP 包 嗅探器 。 使用該嗅探器,你能夠選擇嗅探 低層數據 ( low-level data )仍是 高層數據 ( high level data )。 你也能夠生成日誌,格式能夠自定義。 例如,你能夠模仿 apache 的訪問日誌( access log )格式。

基礎設施監控

30. Server Density

../../../_images/ed3aa0a9d782d43e8c859776ef412c75.png

Server Density

31. OpenNMS

../../../_images/72e94be22fff748eb1cbd86fbca0fd7d.jpg

OpenNMS

OpenNMS 主要有四個功能: 事件管理和通知 、 發現和配置 、 服務監控 以及 數據採集 。 它支持定製化以適應不一樣的網絡環境。

32. SysUsage

../../../_images/38f2cb3e1e80e7ae06a02adaa7ac8b8c.jpg

SysUsage

SysUsage 經過 sar 以及其餘系統命令持續對系統進行監控。 它容許你設置告警閾值,指標超過設定值時便發送告警信息。 SysUsage 自己能夠部署在中央服務器,全部採集到的統計數據也存在那。 它提供一個 Web 界面,能夠查看到全部的統計數據。

33. brainypdm

../../../_images/ce051e3310555a769a0bc03c74f800b9.jpg

brainypdm

brainypdm 是一個數據管理和監控工具,能夠從 nagios 或者其餘通用數據源收集數據並製做圖表。 它是跨平臺的,基於 Web 的圖表也支持自定義。

34. PCP

../../../_images/497130024df76788b4704259a5ffe365.jpg

PCP

PCP 是 Performance Co-Pilot 的簡寫。 它能夠很是高效地從多臺主機收集指標數據。 它提供一個編寫插件的框架,藉此你能夠寫插件採集你認爲重要的指標。 你能夠經過 Web 界面或者一個 GUI 界面查看數據圖表。 監控大型系統, PCP 是一個不錯的選擇。

35. KSysGuard

../../../_images/fa07d02cb1405335a6ac0989c86dbd72.jpg

kdesystemguard

KSysGuard 這個工具既是 系統監視器 ,又是 任務管理器 。 經過 KSysGuard 你能夠在一個工做表裏查詢多臺服務器的系統指標,也能夠殺死或者啓動一個服務器進程。

36. Munin

../../../_images/0f3c311f1de38dae3f01570b280f94ff.jpg

Munin

Munin 是一個 網絡監控 和 系統監控 工具,能夠爲指標設置告警閾值。 它使用 RRDtool 生成圖表,並提供一個 Web 界面來展現圖表。 它主打插件擴展能力,提供了很多可用插件。

37. Nagios

../../../_images/94c68cc7e13b1140c6bd8edd3d23980d.jpg

Nagios

Nagios 也是一個 系統和網絡監控 工具,能夠支撐監控大量服務器。 它支持在發現異常時發送告警信息,也提供了很是豐富的插件。

38. Zenoss

../../../_images/dc22534402eca6e6914fb19f3beda2fb.jpg

Zenoss

Zenoss 支持對 系統 和 網絡 指標進行監控,並且提供了 Web 界面。 它還支持 網絡資源 以及 網絡配置變動 自動發現。 它也支持告警功能,並且兼容 Nagios 插件。

39. Cacti

../../../_images/8a2074ab69c9569caa73c6def2dd2346.jpg

Cacti

Cacti 是一個網絡畫圖工具,使用 RRDtool 作數據存儲。 它容許用戶按期拉取服務指標,並以圖表展現。 用戶能夠經過 shell 腳原本擴展 Cacti ,實現對指定資源的監控。

40. Zabbix

../../../_images/50ff46fd83fe110969bbb10ab3b03969.png

Zabbix

Zabbix 是一個開源的 基礎設施監控 ( infrastructure monitoring )解決方案。 Zabbix 核心部分是用 C 實現的,前端則是 PHP ,數據存儲部分則能夠對接大部分現有數據庫。 此外, agent 不是必要的。 若是你不想安裝 agent ,那麼 Zabbix 應該一個不錯的選擇。

41. nmon

../../../_images/7ecdd7d79b9fbd6efbfd2ffd3f66b7fc.jpg

nmon

43. Glances

../../../_images/84345651b15e04e41f78361c8c1c5dc8.jpg

Glances

44. saidar

../../../_images/0a2305246173976637dee23b110681f5.jpg

saidar

45. RRDtool

../../../_images/e17cf423be979f1f9b14ad54ba5b687e.jpg

rrdtool

46. monit

../../../_images/696ce21a357bbd189fdd2a99e448d6af.jpg

monit

47. Linux進程管理器

../../../_images/dd4ab2e995210c2b66e56cef61e69910.jpg

Linux進程管理器

Linux進程管理器 與 OSX 活動監視器以及 Windows 進程管理器相似。 它的設計目標是,作比 top 或 ps 更好用的工具。 經過它,你能夠查看到每一個系統進程,以及它們佔用了多少內存和 CPU 資源。

48. df

../../../_images/86b3ada9a7c88497fe33478ae8026250.jpg

df

df ( disk free 的縮寫),是一個用於 查看文件系統使用量 的內置系統工具( Unix 系統 )。

49. discus

../../../_images/402d1a1f8df5bd4866f6da94f95be262.jpg

discus

51. Dstat

../../../_images/1b5e8ad937cc9b41782b8cb762531034.jpg

Dstat

55. vmstat

../../../_images/7f77db054b15521a290a11a148980514.jpg

vmstat

57. mpstat

../../../_images/d8ce917ba02f74a0d7f2d36aac237c5f.jpg

mpstat

58. pmap

../../../_images/2fb760e717bab336d56b2a529e4314a2.jpg

pmap

59. ps

../../../_images/b55c93440191a340e6fcc0ae779e30fc.jpg

ps

60. sar

../../../_images/e26348533d48fe0984e60d7499bc73b6.jpg

sar

61. collectl

../../../_images/3390e5ebdc8fe87f5198f3688c55bd56.jpg

collectl

62. iostat

../../../_images/3060c554c3d49b95b199b5f1c5f44de8.jpg

iostat

63. free

../../../_images/185a4e8b726d13764a642710254e9ed0.jpg

free

64. proc僞文件系統

../../../_images/f68a27629e0365509b03d6ab0e3d7d59.jpg

proc僞文件系統

66. Gnome系統監視器

../../../_images/4cc14949b6f71197bd9120264b700456.jpg

Gnome系統監視器

日誌監控

67. GoAccess

../../../_images/bc237c25d604515d06b57d1b9a9f29d8.jpg

GoAccess

69. Swatch

../../../_images/008870cf0970d846349b7cf4210adcd6.jpg

Swatch

70. MultiTail

../../../_images/f677a8a29a205803025b9a57c8b258b5.jpg

MultiTail

網絡監控

73. strace

../../../_images/7fec62b8270f1468a37147062c1751eb.jpg

strace

74. DTrace

../../../_images/e0cc9c09300697628c95cd974d8f16c7.jpg

DTrace

75. webmin

../../../_images/9a0a34759c3cd642c98a701533c2f71d.jpg

webmin

76. stat

../../../_images/70114a1a5f6f3a059995dd056cfe41b5.jpg

stat

77. ifconfig

../../../_images/96f80e561dd78fa2e72feb2b05e8a2c5.jpg

ifconfig

78. unlimit

../../../_images/790731a08b2e55404b767c9264767980.jpg

unlimit

79. cpulimit

../../../_images/0df76f4cb64ce21f8de738fca1598c03.jpg

cpulimit

80. lshw

../../../_images/0898e9597464f534e5a79c7fdfb61b9e.jpg

lshw

82. lsof

../../../_images/7dd77451ab3aaa5b2917725ee40f54e3.jpg

lsof

下一步

訂閱更新,獲取更多學習資料,請關注咱們的 微信公衆號 :

相關文章
相關標籤/搜索