高逼格的 2 個小神器,用好了流量監控不用愁!

在平常運維環境中,咱們確定會遇到如下這種需求:面試

一、網絡流量異常,不知道是哪一個程序的流量爆漲?網絡

二、平常須要監控網絡實時的流量進去數據運維

面試裝逼系列|這篇文章,讓運維監控再也不成爲你的短板! ssh

學會這 18 個工具,你必定能真正理解如何監控網絡帶寬! 工具

基於這兩點需求,民工哥今天給你們分享兩個很強大的命令工具:oop

  • Nethogs
  • Nload

1.Nethogsui

1.1 Nethogs介紹 this

NetHogs是一個開源的命令行工具(相似於Linux的top命令),用來按進程或程序實時統計網絡帶寬使用率。.net

NetHogs是一個小型的net top工具,不像大多數工具那樣拖慢每一個協議或者是每一個子網的速度而是按照進程進行帶寬分組。NetHogs不須要依賴載入某個特殊的內核模塊。若是發生了網絡阻塞你能夠啓動NetHogs當即看到哪一個PID形成的這種情況。這樣就很容易找出哪一個程序跑飛了而後忽然佔用你的帶寬。命令行

1.2 Nethogs安裝

安裝依賴包

[root@rs-server ~]# yum install libpcap libpcap-devel -y
[root@rs-server ~]# yum -y install epel-release

安裝nethogs

[root@rs-server ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@rs-server ~]# uname -r
3.10.0-693.el7.x86_64
[root@rs-server ~]# yum install nethogs -y
[root@rs-server ~]# nethogs -help
usage: nethogs [-V] [-h] [-b] [-d seconds] [-v mode] [-c count] [-t] [-p] [-s] [device [device [device ...]]]
-V : prints version.
-h : prints this help.
-b : bughunt mode - implies tracemode.
-d : delay for update refresh rate in seconds. default is 1.
-v : view mode (0 = KB/s, 1 = total KB, 2 = total B, 3 = total MB). default is 0.
-c : number of updates. default is 0 (unlimited).
-t : tracemode.
-p : sniff in promiscious mode (not recommended).
-s : sort output by sent column.
-a : monitor all devices, even loopback/stopped ones.
device : device(s) to monitor. default is all interfaces up and running excluding loopback

When nethogs is running, press:
q: quit
s: sort by SENT traffic
r: sort by RECEIVE traffic
m: switch between total (KB, B, MB) and KB/s mode

輸入命令nethogs -help出現幫助信息,代表安裝成功,很是的簡單快速。

1.3 Nethogs命令介紹**

如下是NetHogs的一些交互命令(鍵盤快捷鍵)

  • m : 修改單位
  • r : 按流量排序
  • s : 按發送流量排序
  • q : 退出命令提示符

參數介紹:

  • -V : 顯示版本信息,注意是大寫字母V.  
  • -v:切換顯示單位,默認是默認是KB/s(0表示 KB/s,1表示KB,2表示B,3表示MB)
  • -c:檢測次數(後面直接跟數字)
  • -a:檢測全部的設備
  • -d : 延遲更新刷新速率,以秒爲單位。默認值爲 1.  
  • -t : 跟蹤模式.  
  • -b : bug 狩獵模式 — — 意味着跟蹤模式.  
  • -p : 混合模式(不推薦).  
  • device: 要監視的設備名稱. 默認爲 eth0  

1.4 Nethogs實踐**

[root@rs-server ~]# nethogs

Ethernet link detected               

Ethernet link detectedWaiting for first packet to arrive (see sourceforge.net bug 1019381)
NetHogs version 0.8.5
PID   USER     PROGRAM           DEV     SENT    RECEIVED
1023  root    sshd: root@pts/0   ens33   0.166    0.059 KB/sec
?     root    unknown TCP                0.000    0.000 KB/sec
TOTAL                                    0.166    0.059 KB/sec

直接使用nethogs命令的顯示界面如上

[root@rs-server ~]#nethogs -d2 -v3 -c5 -a  
Ethernetlinkdetected  
Ethernetlinkdetected  
Ethernetlinkdetected  
Waitingforfirstpackettoarrive(seesourceforge.netbug1019381)  
NetHogsversion0.8.5  
  
PIDUSERPROGRAMDEVSENTRECEIVED  
1023   rootsshd:root@pts/0     ens33   0.0010.000MB  
?      root     unknown TCP                 0.0000.000MB  
  
TOTAL                                       0.0010.000MB

nethogs命令功能仍是挺強大的,抓緊時間練習一下吧!!

2.Nload

2.1 nload介紹

nload是一個實時監控網絡流量和帶寬使用狀況,展現進出的流量狀況,不只有數值,也能夠有動態圖展現。

2.2 nload 安裝

[root@rs-server ~]# yum -y install epel-release

nload安裝

[root@rs-server ~]# yum install nload -y

nload若是直接輸入這個命令默認只查看第一個網絡的流量進出狀況,通常是在nload後面指定網絡,能夠指定多個網絡。

2.3 nload操做介紹

nload 默認分爲上下兩塊:

  • 上半部分是:Incoming也就是進入網卡的流量,
  • 下半部分是:Outgoing,也就是從這塊網卡出去的流量,

每部分都有當前流量(Curr),

平均流量(Avg),

最小流量(Min),

最大流量(Max),

總和流量(Ttl)這幾個部分,看起來仍是蠻直觀的。

nload默認的是eth0網卡,若是你想監測eth1網卡的流量  
#nload eth1

參數介紹

  • -a:所有數據的刷新時間週期,單位是秒,默認是300.
  • -i:進入網卡的流量圖的顯示比例最大值設置,默認10240 kBit/s.
  • -m:不顯示流量圖,只顯示統計數據。
  • -o:出去網卡的流量圖的顯示比例最大值設置,默認10240 kBit/s.
  • -t:顯示數據的刷新時間間隔,單位是毫秒,默認500。
  • -u:設置右邊Curr、Avg、Min、Max的數據單位,默認是自動變的.注意大小寫單位不一樣!
  • h|b|k|m|g h: auto, b: Bit/s, k: kBit/s, m: MBit/s etc.
  • H|B|K|M|G H: auto, B: Byte/s, K: kByte/s, M: MByte/s etc.
  • -U:設置右邊Ttl的數據單位,默認是自動變的.注意大小寫單位不一樣(與-u相同)!
  • Devices:自定義監控的網卡,默認是所有監控的,使用左右鍵切換。

界面操做

  • 上下方向鍵、左右方向鍵、enter鍵或者tab鍵都就能夠切換查看多個網卡的流量狀況
  • 按 F2 顯示選項窗口。
  • 按 F5 將當前設置保存到用戶配置文件。
  • 按 F6 從配置文件從新加載設置。
  • 按 q 或者 Ctrl+C 退出 nload。

2.4 nload實踐

Device ens33 [192.168.1.100] (1/1):
============================================================================
Incoming:

         Curr: 936.00 Bit/s
         Avg: 1.27 kBit/s
         Min: 840.00 Bit/s
         Max: 6.26 kBit/s
         Ttl: 8.78 MByte

Outgoing:

          Curr: 7.70 kBit/s
          Avg: 7.70 kBit/s
          Min: 3.97 kBit/s
          Max: 10.49 kBit/s
          Ttl: 299.35 kByte

更多相關的參數與操做,你們能夠本身練習一下。

相關文章
相關標籤/搜索