1. 程式人生 > >Mrtg系統狀態監控[CPU 記憶體 網絡卡流量 系統程序 硬碟空間 TCP連線數]

Mrtg系統狀態監控[CPU 記憶體 網絡卡流量 系統程序 硬碟空間 TCP連線數]

[標籤]: Linux
[說明]:試驗mrtg的擴充套件效能。雖然現在有rrdtools、Nagios等等多種監控工具,Camor還是覺得mrtg最簡單直觀:)

# camor原創並首發於
http://camor.cublog.cn
# 轉載和引用請先留言並註明出處!
# [By camornow$gmail.com]
----------------------------
1) 安裝所需rpm包
----------------------------
net-snmp-perl-5.1.2-11.EL4.6.x86_64.rpm
net-snmp-libs-5.1.2-11.EL4.6.x86_64.rpm
net-snmp-utils-5.1.2-11.EL4.6.x86_64.rpm
net-snmp-devel-5.1.2-11.EL4.6.x86_64.rpm
   !!需要預先安裝以下rpm包
   beecrypt-devel-3.1.0-6.x86_64.rpm
   elfutils-devel-0.97-5.x86_64.rpm(在第5張安裝光碟上)
net-snmp-5.1.2-11.EL4.6.x86_64.rpm
net-snmp-utils-5.1.2-11.EL4.6.x86_64.rpm
安裝mrtg-2.10.15-1.x86_64.rpm


----------------------------
2) 修改/etc/snmp/snmpd.conf
----------------------------
找到這行:
# Make at least  snmpwalk -v 1 localhost -c public system fast again
#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
在view幾行的下面,加上這段文字:
# For Mrtg Add start ####################################
view    all           included   .1.3.6
# For Mrtg Add end   ####################################
找到這行:
####
# Finally, grant the group read-only access to the systemview view.
#       group          context sec.model sec.level prefix read   write  notif
access  notConfigGroup ""      any       noauth    exact  mib2   none   none
把 access  notConfigGroup 裡的mib2(也可能是systemview) 更改為all
如果需要監控硬碟容量使用狀況,還需要進行以下操作:
用 df -a 看到你要監控的硬碟分卷方式以及容量大小(-am:以M為單位; -ak:以K為單位 -ag:以G為單位)
比如:
#df -am
Filesystem            容量  已用 可用 已用% 掛載點
/dev/sda2                 9845      5695      3650  61% /
/dev/sda6                45168     24761     18113  58% /Datas
然後修改/etc/snmp/snmpd.conf,在剛才修改的view行最下面加入:
disk / 9845
disk /Datas 45168
然後重啟snmp服務
# service snmpd restart
----------------------------
3) 修改mrtg配置檔案 mrtg.cfg
----------------------------
使用Redhat AS4u2 自帶的 安裝 mrtg-2.10.15-1.x86_64.rpm
安裝以後的配置檔案是/etc/mrtg/mrtg.cfg
我們預設要監控的伺服器以下引數:
連線公網網絡卡的流量;
主機連續執行時間;
系統負載;
CPU負載;
記憶體使用量;
系統程序數;
硬碟空間;
開啟的TCP連線數。
我的mrtg.cfg配置如下:
# Camor's Minimal mrtg.cfg
#--------------------
EnableIPv6: no
WorkDir: /var/www/mrtg
Language: gb2312
HtmlDir: /var/www/mrtg
ImageDir: /var/www/mrtg
LogDir: /var/log/mrtg
ThreshDir: /var/lib/mrtg
LoadMIBs:/usr/share/snmp/mibs/UCD-SNMP-MIB.txt,/usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt,/usr/share/snmp/mibs/TCP-MIB.txt
#================================================================================
#監控eth1網絡卡(連線公網的)
#================================================================================
Target[eth1_lan]: /192.168.1.68:
[email protected]
:
Options[eth1_lan]: growright
Directory[eth1_lan]: eth1
MaxBytes[eth1_lan]: 100000000
Kmg[eth1_lan]: ,k,M,G,T,P
YLegend[eth1_lan]: Bytes per Second
ShortLegend[eth1_lan]: B/s
Legend1[eth1_lan]: 每秒流入量 (單位 Bytes)
Legend2[eth1_lan]: 每秒流出量 (單位 Bytes)
LegendI[eth1_lan]: 流入:
LegendO[eth1_lan]: 流出:
Title[eth1_lan]: eth1網路流量[流入+流出]
PageTop[eth1_lan]: eth1網路流量[流入+流出]

  系統 :System02
  描述 :LAN網路介面eth1的網路流量(Bytes/s)
  位置 : 辦公伺服器68
  最大值:100 MBytes/s
  管理員:
[email protected]

  說明 :eth1 ip=192.168.1.68

#================================================================================
#監控主機連續執行時間[執行天數]
#================================================================================
Target[upday]: `/etc/mrtg/bin/mrtg-updays.pl`
Options[upday]: gauge,nopercent,growright
Directory[upday]: upday
MaxBytes[upday]: 1000
YLegend[upday]: Up Days
ShortLegend[upday]: 天
Legend1[upday]: 主機連續執行時間(天)
Legend2[upday]:
LegendI[upday]: 執行時間:
LegendO[upday]:
Title[upday]: 主機連續執行時間[執行天數]
PageTop[upday]: 主機連續執行時間[執行天數]

  系統:system02
  描述:主機連續執行的時間(天)
  位置:辦公伺服器68
  最大值:1000天
  管理員:
[email protected]


#================================================================================
#監控系統負載[1分鐘+15分鐘]
#================================================================================
Target[systemload]: .1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.3:[email protected]:
Options[systemload]: gauge,nopercent,growright
Directory[systemload]: load
MaxBytes[systemload]: 3000
YLegend[systemload]: System Load
ShortLegend[systemload]:
Legend1[systemload]: 最近1分鐘系統負載(x100)
Legend2[systemload]: 最近15分鐘系統負載(x100)
LegendI[systemload]: 1分鐘負載:
LegendO[systemload]: 15分鐘負載:
Title[systemload]: 系統負載(x100)[1分鐘+15分鐘]
PageTop[systemload]: 系統負載(x100)[1分鐘+15分鐘]

  系統:system02
  描述:系統負載(x100)[1分鐘+15分鐘]
  位置:辦公伺服器68
  最大值:30(x100)
  管理員:[email protected]

#================================================================================
#監控CPU負載[使用者+閒置]
#================================================================================
Target[cpuload]: .1.3.6.1.4.1.2021.11.50.0&1.3.6.1.4.1.2021.11.53.0:[email protected]:
Options[cpuload]: nopercent,growright
Directory[cpuload]: cpu
MaxBytes[cpuload]: 100
Unscaled[cpuload]: dwym
YLegend[cpuload]: CPU Utilization
ShortLegend[cpuload]: %;
Legend1[cpuload]: CPU使用者負載(%)
Legend2[cpuload]: CPU閒置(%)
LegendI[cpuload]: 使用者:
LegendO[cpuload]: 閒置:
Title[cpuload]: CPU負載[使用者+閒置]
PageTop[cpuload]: CPU負載[使用者+閒置]

  系統:system02
  描述:CPU負載[使用者+閒置]
  位置:辦公伺服器68
  最大值:100
  管理員:[email protected]

#================================================================================
#監控記憶體使用量[Mem+Swap]
#================================================================================
Target[memory]: .1.3.6.1.2.1.25.2.3.1.6.2&.1.3.6.1.2.1.25.2.3.1.6.3:[email protected]:
Options[memory]: gauge,growright
Directory[memory]: mem
MaxBytes1[memory]: 4045336
MaxBytes2[memory]: 2097152
Kmg[memory]: k,M,G,T,P
Kilo[memory]: 1024
Unscaled[memory]: dwym
YLegend[memory]: Bytes
ShortLegend[memory]: B
Legend1[memory]: 已用Mem (Bytes)
Legend2[memory]: 已用Swap(Bytes)
LegendI[memory]: 已用Mem :
LegendO[memory]: 已用Swap:
Title[memory]: 記憶體使用量[Mem+Swap]
PageTop[memory]: 記憶體使用量[Mem+Swap]

  系統:system02
  描述:Memory和Swap的使用量(Bytes)
  位置:辦公伺服器68
  最大值:Mem=4096M,Swap=2048M
  管理員:[email protected]

#================================================================================
#監控系統程序數[程序數]
#================================================================================
Target[process]: .1.3.6.1.2.1.25.1.6.0&.1.3.6.1.2.1.25.1.6.0:[email protected]:
Options[process]: gauge,nopercent,growright
Directory[process]: process
MaxBytes[process]: 1000
YLegend[process]: Processes
ShortLegend[process]: 個
Legend1[process]: 系統程序數(個)
Legend2[process]:
LegendI[process]: 程序數:
LegendO[process]:
Title[process]: 系統程序數[程序數]
PageTop[process]: 系統程序數[程序數]

  系統:system02
  描述:系統程序數(個)
  位置:辦公伺服器68
  最大值:1000個
  管理員:[email protected]

#==================================================================================
#監控硬碟空間[系統盤+資料盤]  !!參照前面的2) 這裡需要與修改後snmpd.conf 的硬碟引數一致
#==================================================================================
Target[disk]: .1.3.6.1.4.1.2021.9.1.8.1&.1.3.6.1.4.1.2021.9.1.8.2:[email protected]:
Options[disk]: gauge,growright
Directory[disk]: disk
MaxBytes1[disk]: 10080520
MaxBytes2[disk]: 46251780
Kmg[disk]: k,M,G,T,P
Kilo[disk]: 1024
Unscaled[disk]: dwym
YLegend[disk]: Bytes
ShortLegend[disk]: B
Legend1[disk]: 系統盤已用空間
Legend2[disk]: 資料盤已用空間
LegendI[disk]: 系統已用:
LegendO[disk]: 資料已用:
Title[disk]: 硬碟空間[系統盤+資料盤]
PageTop[disk]: 硬碟空間[系統盤+資料盤]

  系統:system02
  描述:系統盤=/(/dev/sda2); 資料盤=/Datas(/dev/sda6)
  位置:辦公伺服器68
  最大值:系統盤=10.0GB; 資料盤=45.0GB
  管理員:[email protected]

#================================================================================
#監控開啟的TCP連線數[TCP連線數]
#================================================================================
Target[tcpopen]: .1.3.6.1.2.1.6.9.0&.1.3.6.1.2.1.6.9.0:[email protected]:
Options[tcpopen]: gauge,nopercent,growright
Directory[tcpopen]: tcpopen
MaxBytes[tcpopen]: 1000
YLegend[tcpopen]: Tcp Connections
ShortLegend[tcpopen]: 個
Legend1[tcpopen]: 開啟的TCP連線數(個)
Legend2[tcpopen]:
LegendI[tcpopen]: TCP連線數:
LegendO[tcpopen]:
Title[tcpopen]: TCP連線數[TCP連線數]
PageTop[tcpopen]: TCP連線數[TCP連線數]

  系統:system02
  描述:開啟的TCP連線數(個)
  位置:辦公伺服器68
  最大值:1000個
  管理員:[email protected]

###################### All Set Over #########################
注意
在上面監控主機連續執行時間的配置中,有提到要使用/etc/mrtg/bin/mrtg-updays.pl這個檔案。需要手動建立,內容如下:
#!/usr/bin/perl
$machine = `/bin/hostname`;
$uptime1 = `/usr/bin/uptime`;
$uptime2 = $uptime1;
$uptime1 =~ /up (.*?) day/;
$upday = int($1);
$uptime2 =~ /up (.*?) load/;
$uptime = $1;
print "$upday\n";
print "$upday\n";
print "$uptime\n";
print $machine."\n";
儲存以後修改許可權為可執行:
#chmod +x /etc/mrtg/bin/mrtg-updays.pl
注意
關於硬碟引數,一定要注意
snmp.conf與mrtg.cfg中的格式、引數一定要一致,並且完全跟df -a*的命令結果相符。否則會得到輸入錯誤的提示資訊。

----------------------------
4) 生成工作目錄及相關檔案
----------------------------
mrtg /etc/mrtg/mrtg.cfg

----------------------------
5) 生成監控的頁面檔案
----------------------------
indexmaker --output /var/www/mrtg/index.html --title="System state Monitor" /etc/mrtg/mrtg.cfg


# camor原創並首發於
http://camor.cublog.cn
# 轉載和引用請先留言並註明出處!
# [By camornow$gmail.com]

相關推薦

Mrtg系統狀態監控[CPU 記憶體 流量 系統程序 硬碟空間 TCP連線]

[標籤]: Linux [說明]:試驗mrtg的擴充套件效能。雖然現在有rrdtools、Nagios等等多種監控工具,Camor還是覺得mrtg最簡單直觀:) # camor原創並首發於http://camor.cublog.cn # 轉載和引用請先留言並註明出處! # [By camornow$gmail

實時監控linux伺服器流量命令 iftop

iftop是類似於linux下面top的實時流量監控工具。 iftop可以用來監控網絡卡的實時流量(可以指定網段)、反向解析IP、顯示埠資訊等,詳細的將會在後面的使用引數中說明。 yum install -y iftop iftop 介面說明 介面頭部:   流量刻度

Haproxy的負載均衡、動靜分離、狀態監控、近期架構

haproxy 負載均衡 監控 動靜分離 一、Haproxy的簡介 Haproxy的官網站點:http://haproxy.com/ HAProxy提供高可用性、負載均衡以及基於TCP和HTTP應用的代 理,支持虛擬主機,它是免費、快速並且可靠的一種解決方案。HAProxy特別適用

通過/proc/net/dev檔案來流量進行監控,統計

/proc 檔案系統是一個虛擬檔案系統,通過它可以使用一種新的方法在 Linux核心空間和使用者間之間進行通訊。在 /proc 檔案系統中,我們可以將對虛擬檔案的讀寫作為與核心中實體進行通訊的一種手段,但是與普通檔案不同的是,這些虛擬檔案的內容都是動態建立的。Linux 核心提供了一種通過 /p

CentOS啟用&系統MAC地址重複

編輯配置檔案: # vi /etc/sysconfig/network-scripts/ifcfg-eth0  將ONBOOT=no改成yes 儲存退出,重啟網絡卡 vm虛擬機器克隆,系統MAC和UUID會重複,導致獲取不到IP 報錯:device eth0 does not seem

Linux 系統銳捷有線認證多個IP被迫下線

問題描述 檢視獲取到的IP顯示,確實是有兩個IP ip 指令系統自帶,但是ifconfig需要第三方安裝 解決方法 刪除有線網絡卡的第一個IP即可 注意,需要許可權,而且刪除第一個IP,刪除第二個還是會一會掉線 但是:還

一個監控流量的shell指令碼

這篇文章主要為大家分享一個簡單的監控流量指令碼,需要的朋友可以參考下。 實現程式碼: #!/bin/bash eth_in_old=$(ifconfig eth0|grep “RX bytes”|sed ‘s/RX bytes://’|awk ‘{print $1}’)

如何讓後門搞死一個系統,讓你知道是個多麼厲害的角色

最近本人在FPGA上做開發,課題是乙太網控制器IP核。 發現這裡面可以嵌入一個強大的後門。 如果你知道乙太網的工作過程,就好懂多了。 乙太網協議如此要求,首先,網絡卡會接受資料,無論是發給誰的。第二步,然後判斷是不是自己MAC地址的,如果不是就扔掉。第三步,如果是自己MAC

Win7 + CentOS7 雙系統(----博通無線幸運兒)

        本來我機子上是Ubantu和Win7的雙系統,用著EasyBCD做的Win7引導Ubantu(雖然Ubantu自帶引導win7,但是本人強迫症,要不然也不會在好好地情況下又裝Centos了~~QAQ,):       1.由於本人之前裝Ubantu是用的U盤

centos6.7安裝系統後看不到無法配置IP的解決辦法

新安裝centos6.7後發現/etc/sysconfig/network-scripts目錄下沒有eth0的網絡卡配置,通過ifconfig可以看到eth0的硬體地址 於是新建網絡卡輸入一下內容 # cd /etc/sysconfig/network-scripts

兩臺win 7系統電腦 一臺雙 共享上網

    一臺WIN7通過USB無線路由上網,另一臺使用交叉線與其相連,如果讓兩臺同時上網,可以使用橋接,方法如下:   以筆者所在的網路為例,使用的網段是192.168.1.X,其中一臺臺式機已經能夠訪問Internet,這個網絡卡是無線USB網絡卡,並且其網絡卡IP是19

流量監控、檢視程序

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

CPU老哥,你到底怎麼工作的?

阿Q造訪 我是一個網絡卡,居住在一個機箱內的主機板上,負責整臺計算機的網路通訊,要是沒有我,這裡就成了一個資訊孤島了,那也太無聊了~ 上個週末,伺服器斷電維護了,這是我難得的休息時間,我準備打個盹兒眯一會兒。 這才剛合上眼,CPU一號車間的阿Q跑過來串門了。 “怎麼是你小子,聽說你背後說了我很

Shell應用之流量監測

需求分析 1)按固定時間監測一次網絡卡流量 2)當網絡卡流量為0時重啟網絡卡 一、網絡卡流量查詢 sar(System ActivityReporter系統活動情況報告)是目前Linux上最為全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告,包括:檔案的讀寫情況、系統呼叫的使用情況、磁碟I/O、

Linux基礎——sar 檢視流量 網路io

  2017年03月23日 13:21:07 Citizen_Wang 閱讀數:17993 版權宣告:本文為 Cityzen Wang 原創文章,歡迎轉載!轉載請註明出處:http://blog.csdn.net/cityzenoldwang https://b

日常運維管理技巧四(檢視流量 sar)

四、sar命令監控系統狀態 sar是一個非常全面的分析系統狀態的命令,主要用來檢視網絡卡的流量。它同樣可以檢視你的CPU、記憶體、磁碟的狀態,它被稱為linux系統中的瑞士軍刀,也就是它的命令非常複雜和豐富。與其他系統狀態監控工具不同,它可以列印歷史資訊,可以顯示當天從零點

統計流量

顯示網絡卡流量的方法蠻多,一般我們可以通過dstat來檢視,但dstat不一定所有的機器都有安裝。而我們知道,通過ifconfig可以看到某一網絡卡傳送與接收的位元組數,所以我們可以寫一個指令碼來統計一下。 先看ifconfig: $ ifconfig eth0 eth0 Link enca

Spark troubleshooting yarn-client 流量激增

一、 yarn-client模式原理 1、執行命令 ./spark-submit --master yarn --class org.apache.spark.examples.SparkPi ../lib/spark-examples-1.6.0-hadoop2.6.0.jar

日常運維管理技巧五(檢視流量情況 nload)

nload的顯示資訊也是支援設定顯示單位的。我們可以加入-u 引數,例如下面我們輸入如命令"nload -u m",就是以MB為單位。 第一行就是網絡卡資訊,方向鍵上下切換網絡卡 預設上邊Inc

USB無線配置ICS失敗,你可以連線到SoftAP,但可能無法使用internet服務,

http://zhidao.baidu.com/link?url=RK4mEG9H7SEDTk566xFctYHa3B_8JP0BBLSL9TdkWFpgObqOnW6GCw6InGpSv4VJVRmMszN2PNrQmbSxuPTdY_ 經過分析與測試發現出現該問