註解前端
本文是一篇譯文,原文是: 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 時間的百分比。
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 資源。
訂閱更新,獲取更多學習資料,請關注咱們的 微信公衆號 :