對網卡流量監控的一些想法

 對網卡流量監控的一些想法mysql

今天來給你們講講一些對於網卡流量的想法,網卡流量表明着客戶的訪問你服務的數據量,可是這裏量是有閾值的,若是你的網卡的流量居高不下,那就有可能你的服務器被***了,因此,監控網卡的流量是事關重要的事情,說到監控,咱們即可以想到,寫腳本或者利用監控軟件來作監控,zabbix監控軟件就提供了很好的平臺;zabbix做爲一個熱門的監控軟件,不只比較全面的監控模板,並且使用者還能夠本身自定義keys,作監控。linux

自定義監控處理有監控軟件外,咱們還須要獲取到數據才能實現咱們監控的目的;對於如何獲取到網卡流量的數據,我這裏提供一個命令Sar,固然還有其它的命令,這裏就很少說了;Sar命令能夠爲咱們提供網卡的流量的信息,因此基於sar咱們能夠實現對網卡流量的實時監控。接下來咱們先談談sar命令的用法。web

1、sar命令的使用sql

Sar命令主要的做用是用來查看網卡的流量的,linux/centos默認是沒有裝的,因此須要yum安裝才能使用。vim

#yum install -y  sysstat


經過sar –h咱們能夠查看獲得sar的用法centos

[root@mysql etc]# sar -h
用法: sar [ 選項 ] [ <時間間隔> [ <次數> ] ]
主選項和報告:
       -b    I/O 和傳輸速率信息情況
       -B   分頁情況
       -d    塊設備情況
       -H   交換空間利用率
       -I { <中斷> | SUM | ALL | XALL }
              中斷信息情況
       -m { <關鍵詞> [,...] | ALL }
              電源管理統計信息
              關鍵字:
              CPU      CPU 頻率
              FAN      風扇速度
\t\tFREQ\tCPU 平均時鐘頻率
              IN   輸入電壓
              TEMP    設備溫度
\t\tUSB\t鏈接的USB 設備
       -n { <關鍵詞> [,...] | ALL }
              網絡統計信息
              關鍵詞能夠是:
              DEV      網卡
              EDEV   網卡 (錯誤)


 

接下來咱們使用它來獲取網卡的信息,好比查看網卡流量的每秒顯示一次,共顯示1次的網卡流量信息。bash

[root@mysql etc]# sar  -n DEV  1 1  
Linux 3.10.0-514.el7.x86_64 (mysql)     2018年03月14日   _x86_64_   (4 CPU)
 
15時00分00秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
15時00分01秒      eth0     37.00     36.00      6.54     24.27      0.00      0.00      0.00
15時00分01秒        lo     23.00     23.00     18.17     18.17      0.00      0.00      0.00
 
平均時間:     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
平均時間:      eth0     37.00     36.00      6.54     24.27      0.00      0.00      0.00
平均時間:        lo     23.00     23.00     18.17     18.17      0.00      0.00      0.00


 

咱們能夠看到,使用sar命令它已經把結果給統計出來的,服務器

IFACE 表示設備名稱網絡

rxpck/s 每秒接收的包的數量ide

txpck/s 每秒發出的包的數量

rxKB/s 每秒接收的數據量,單位KByte

txKB/s 每秒發出的數據量,單位KByte

若服務器丟包很是嚴重,須要查看網卡流量是否異常。接收數據部分 rxpck大於4000,或者rxKB大於5000,則有可能被***了,正常服務器網卡流量沒有這麼大。除非本身在拷貝數據。

接下來,咱們談談sar命令的一些經常使用的一些用法。

sar -n DEV #查看當天從零點到當前時間的網卡流量信息

sar -n DEV 1 1 #每秒顯示一次,共顯示1

sar -n DEV -f /var/log/sa/saxx  查看xx日的網卡流量歷史

sar -q #查看歷史負載

sar -b #查看磁盤讀寫

 

2、使用sar命令截取rxpck/srxKB/s的值

有了sar命令查看網卡的流量,咱們就能夠實現監控了,結合zabbix作對網卡的監控rxpck/srxKB/s的值

經過sar,命令並結合awk獲取你網卡的rxpck/s的值,我這裏的網卡是eth0

[root@mysql etc]#  sar  -n DEV  1 1 | awk 'NR==8{print $3}'
37.00


獲取你網卡的rxKB/s的值

[root@mysql etc]#  sar  -n DEV  1 1 | awk 'NR==8{print $5}'
10.63


咱們能夠發現咱們想要的數據已是截取出來了

 

3、zabbix自定義keys作監控

1zabbix客戶端zabbix_agentd.conf文件添加自定義keys,並重啓客戶端

# vim /usr/local/zabbix/etc/zabbix_agentd.conf

UnsafeUserParameters=1
UserParameter=receivce_data,sar  -n  DEV  1 1 | awk 'NR==8{print $5}'
UserParameter=receivce_package_number,sar  -n DEV  1 1 | awk 'NR==8{print $3}'


2zabbix測試是否能獲到zabbix客戶端的健值的數據

[root@zabbix ~]# zabbix_get -s 192.168.1.200  -k receivce_data
7.79


[root@zabbix ~]# zabbix_get -s 192.168.1.200 -k receivce_package_number
52.00


從這裏能夠發現是已經能夠獲取的


3zabbix服務端監控出圖

zabbixweb頁面建立network_receivce_package_number 和network_receivce_data模板,點擊:配置à模板à建立模板,如圖一、圖2所示

1.png

1 network_receivce_package_number模板的建立

2.png

2 network_receivce_data模板的建立

4建立監控項,點擊: network_receivce_package_number /network_receivce_dataà監控項à建立監控項,可是要注意的是你的鍵值是你的自定義keys的名字。如圖3、圖4所示:

 

3.png

3 network_receivce_package_number模板添加監控項

4.png

4 network_receivce_data模板添加監控項

5添加圖像,綁定network_receivce_package_number /network_receivce_data各自的監控項。如圖5、圖6所示

5.png

5 network_receivce_package_numbe模板綁定監控項

6.png

6 network_rdata模板綁定監控項

 

 

6添加network_receivce_package_number /network_receivce_data觸發條件,爲作告警使用,如圖7、圖8所示

network_receivce_package_number的閾值咱們能夠設置爲4000,由於正常的服務器的包的數量沒那麼大。(設置最新T值大於4000時,觸發告警)

 

7.png

7 network_receivce_package_number模板添加觸發器

network_receivce_datar的閾值咱們能夠設置爲5000(至關於5M),由於正常的服務器的流量沒那麼大。(設置最新T值大於5000時,觸發告警)

 8.png

8 network_receivce_data模板添加觸發器

7綁定主機,出圖,出數據。

到了這一步,咱們的自定義keys監控就基本完成了;可是,咱們的自定義keys畢竟只是一個模板,並不可以出圖出數據,因此,這就須要人爲的讓主機綁定模板,這樣才能出圖出數據。結果如圖9所示

9.png

9 主機綁定模板

#查看圖像,查看獲取的數據,是否正確,如圖10、圖11所示

10.png

10 network_receivce_package_number出圖數據

11.png

11  network_receivce_data出圖

 

#能夠發現,獲取的數據和出圖都已經達到咱們的目的了。自動義對網絡流量的的監控已經成功了。

 

4、總結

    基於zabbixsar監控網卡流量的監控完成了,可是不是以爲沒啥做用,是的,在沒有告警的狀況下,是啥用的,說究竟是沒人看。因此咱們須要告警,基於告警的話,在這裏能夠參考文章,這裏有搭建zabbix告警處理的部署zabbix郵件告警,一點小分享,但願對你有用。

相關文章
相關標籤/搜索