REDHAT環境下使用SYSSTAT監控系統效能
IOSTAT
iostat 命令主要透過觀察物理磁碟的活動時間以及她們的平均傳輸速度,監控系統輸入 / 輸出裝置負載。根據 iostat 命令生成的報告,使用者可確定系統配置是否平衡,並據此在物理磁碟與介面卡之間更好地平衡輸入 / 輸出負載。iostat 工具的主要目的是透過監控磁碟的利用率,而探量觀測到系統中的 I/O 瓶頸。
1.命令格式
iostat[引數][時間][次數]
2.命令功能
透過iostat方便檢視CPU、網路卡、tty裝置、磁碟、CD-ROM 等等裝置的活動情況, 負載資訊。
3.命令引數
-C 顯示CPU使用情況 -d 顯示磁碟使用情況 -k 以 KB 為單位顯示 -m 以 M 為單位顯示 -N 顯示磁碟陣列(LVM) 資訊
-n 顯示NFS 使用情況 -p[磁碟] 顯示磁碟和分割槽的情況 -t 顯示終端和CPU的資訊 -x 顯示詳細資訊 -V 顯示版本資訊
4.在linux作業系統上安裝sysstat
[root@rac1 Server]# rpm -ivh sysstat-7.0.2-3.el5.x86_64.rpm
warning: sysstat-7.0.2-3.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:sysstat ########################################### [100%]
5.使用示例
示例1:顯示所有裝置的負載情況
示例2:定時顯示所有資訊
批註:每隔3秒重新整理一次,一共顯示2次。
示例3:以KB為單位顯示系統資訊
批註:kB_read/s:每秒從裝置(drive expressed)讀取的資料量;kB_wrtn/s:每秒向裝置(drive expressed)寫入的資料量;
kB_read:讀取的總資料量;kB_wrtn:寫入的總數量資料量;
示例4:檢視裝置使用率(%util)、響應時間(await)
批註:引數解釋
rrqm/s: 每秒進行 merge 的讀運算元目.即 delta(rmerge)/s
wrqm/s: 每秒進行 merge 的寫運算元目.即 delta(wmerge)/s
r/s: 每秒完成的讀 I/O 裝置次數.即 delta(rio)/s
w/s: 每秒完成的寫 I/O 裝置次數.即 delta(wio)/s
rsec/s: 每秒讀扇區數.即 delta(rsect)/s
wsec/s: 每秒寫扇區數.即 delta(wsect)/s
rkB/s: 每秒讀K位元組數.是 rsect/s 的一半,因為每扇區大小為512位元組.(需要計算)
wkB/s: 每秒寫K位元組數.是 wsect/s 的一半.(需要計算)
avgrq-sz:平均每次裝置I/O操作的資料大小 (扇區).delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:平均I/O佇列長度.即 delta(aveq)/s/1000 (因為aveq的單位為毫秒).
await: 平均每次裝置I/O操作的等待時間 (毫秒).即 delta(ruse+wuse)/delta(rio+wio)
svctm: 平均每次裝置I/O操作的服務時間 (毫秒).即 delta(use)/delta(rio+wio)
%util: 一秒中有百分之多少的時間用於 I/O 操作,或者說一秒中有多少時間 I/O 佇列是非空的,即 delta(use)/s/1000 (因為use的單位為毫秒)
數值之間的聯絡:
util = (r/s+w/s) * (svctm/1000)
對於上面的示例有:%util=1.53%=(r/s+w/s) * (svctm/1000)=(0.78+1.65)*(6.32/1000)
裝置IO操作:總IO(io)/s = r/s(讀) +w/s(寫) =0.78+1.65=2.43
MPSTAT
mpstat 是Multiprocessor Statistics的縮寫,是實時系統監控工具。在多CPUs系統裡,其不但能檢視所有CPU的平均狀況資訊,而且能夠檢視特定CPU的資訊。
1.命令語法
Usage: mpstat [ options... ] [ [ ] ]
Options are:
[ -P { | ALL } ] [ -V ]
引數的含義如下:
-P {|ALL} 表示監控哪個CPU, cpu在[0,cpu個數-1]中取值
internal 相鄰的兩次取樣的間隔時間
count 取樣的次數,count只能和delay一起使用
當沒有引數時,mpstat則顯示系統啟動以後所有資訊的平均值。有interval時,第一行的資訊自系統啟動以來的平均資訊。
從第二行開始,輸出為前一個interval時間段的平均資訊。
引數解釋 從/proc/stat獲得資料
CPU 處理器ID
user 在internal時間段裡,使用者態的CPU時間(%),不包含 nice值為負 程式 (usr/total)*100
nice 在internal時間段裡,nice值為負程式的CPU時間(%) (nice/total)*100
system 在internal時間段裡,核心時間(%) (system/total)*100
iowait 在internal時間段裡,硬碟IO等待時間(%) (iowait/total)*100
irq 在internal時間段裡,硬中斷時間(%) (irq/total)*100
soft 在internal時間段裡,軟中斷時間(%) (softirq/total)*100
idle 在internal時間段裡,CPU除去等待磁碟IO操作外的因為任何原因而空閒的時間閒置時間(%)(idle/total)*100
intr/s 在internal時間段裡,每秒CPU接收的中斷的次數intr/total)*100
CPU總的工作時間=total_cur=user+system+nice+idle+iowait+irq+softirq
total_pre=pre_user+ pre_system+ pre_nice+ pre_idle+ pre_iowait+ pre_irq+ pre_softirq
user=user_cur – user_pre
total=total_cur-total_pre
其中_cur 表示當前值,_pre表示interval時間前的值。上表中的所有值可取到兩位小數點。
2.使用示例
示例1:使用mpstat不帶引數,顯示從系統啟動以來的平均值
示例2:每2秒產生了2個處理器的統計資料包告
下面的命令可以每2秒產生了2個處理器的統計資料包告,一共產生三個interval 的資訊,然後再給出這三個interval的平均資訊。預設時,輸出是按照CPU 號排序。第一個行給出了從系統引導以來的所有活躍資料。接下來每行對應一個處理器的活躍狀態。
批註:以上輸出列值含義解析
%user 表示處理使用者程式所使用 CPU 的百分比。使用者程式是用於應用程式(如 Oracle 資料庫)的非核心程式,在本示例輸出中,使用者 CPU 百分比非常低。
%nice 表示使用 nice 命令對程式進行降級時 CPU 的百分比。在之前的部分中已經對 nice 命令進行了介紹。簡單來說,nice 命令更改程式的優先順序。
%system表示核心程式使用的 CPU 百分比
%iowait表示等待進行 I/O 所使用的 CPU 時間百分比
%irq 表示用於處理系統中斷的 CPU 百分比
%soft 表示用於軟體中斷的 CPU 百分比
%idle 顯示 CPU 的空閒時間
%intr/s 顯示每秒 CPU 接收的中斷總數
備註:由於本臺機器為測試機,所以CPU基本沒有負載。
iostat 命令主要透過觀察物理磁碟的活動時間以及她們的平均傳輸速度,監控系統輸入 / 輸出裝置負載。根據 iostat 命令生成的報告,使用者可確定系統配置是否平衡,並據此在物理磁碟與介面卡之間更好地平衡輸入 / 輸出負載。iostat 工具的主要目的是透過監控磁碟的利用率,而探量觀測到系統中的 I/O 瓶頸。
1.命令格式
iostat[引數][時間][次數]
2.命令功能
透過iostat方便檢視CPU、網路卡、tty裝置、磁碟、CD-ROM 等等裝置的活動情況, 負載資訊。
3.命令引數
-C 顯示CPU使用情況 -d 顯示磁碟使用情況 -k 以 KB 為單位顯示 -m 以 M 為單位顯示 -N 顯示磁碟陣列(LVM) 資訊
-n 顯示NFS 使用情況 -p[磁碟] 顯示磁碟和分割槽的情況 -t 顯示終端和CPU的資訊 -x 顯示詳細資訊 -V 顯示版本資訊
4.在linux作業系統上安裝sysstat
[root@rac1 Server]# rpm -ivh sysstat-7.0.2-3.el5.x86_64.rpm
warning: sysstat-7.0.2-3.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:sysstat ########################################### [100%]
5.使用示例
示例1:顯示所有裝置的負載情況
批註:cpu屬性值說明:
%user:CPU處在使用者模式下的時間百分比。
%nice:CPU處在帶NICE值的使用者模式下的時間百分比。
%system:CPU處在系統模式下的時間百分比。
%iowait:CPU等待輸入輸出完成時間的百分比。
%steal:管理程式維護另一個虛擬處理器時,虛擬CPU的無意識等待時間百分比。
%idle:CPU空閒時間百分比。
說明:如果%iowait的值過高,表示硬碟存在I/O瓶頸,%idle值高,表示CPU較空閒,如果%idle值高但系統響應慢時,有可能是CPU等待分配記憶體,此時應加大記憶體容量。%idle值如果持續低於10,那麼系統的CPU處理能力相對較低,表明系統中最需要解決的資源是CPU。%user:CPU處在使用者模式下的時間百分比。
%nice:CPU處在帶NICE值的使用者模式下的時間百分比。
%system:CPU處在系統模式下的時間百分比。
%iowait:CPU等待輸入輸出完成時間的百分比。
%steal:管理程式維護另一個虛擬處理器時,虛擬CPU的無意識等待時間百分比。
%idle:CPU空閒時間百分比。
示例2:定時顯示所有資訊
批註:每隔3秒重新整理一次,一共顯示2次。
示例3:以KB為單位顯示系統資訊
批註:kB_read/s:每秒從裝置(drive expressed)讀取的資料量;kB_wrtn/s:每秒向裝置(drive expressed)寫入的資料量;
kB_read:讀取的總資料量;kB_wrtn:寫入的總數量資料量;
示例4:檢視裝置使用率(%util)、響應時間(await)
批註:引數解釋
rrqm/s: 每秒進行 merge 的讀運算元目.即 delta(rmerge)/s
wrqm/s: 每秒進行 merge 的寫運算元目.即 delta(wmerge)/s
r/s: 每秒完成的讀 I/O 裝置次數.即 delta(rio)/s
w/s: 每秒完成的寫 I/O 裝置次數.即 delta(wio)/s
rsec/s: 每秒讀扇區數.即 delta(rsect)/s
wsec/s: 每秒寫扇區數.即 delta(wsect)/s
rkB/s: 每秒讀K位元組數.是 rsect/s 的一半,因為每扇區大小為512位元組.(需要計算)
wkB/s: 每秒寫K位元組數.是 wsect/s 的一半.(需要計算)
avgrq-sz:平均每次裝置I/O操作的資料大小 (扇區).delta(rsect+wsect)/delta(rio+wio)
avgqu-sz:平均I/O佇列長度.即 delta(aveq)/s/1000 (因為aveq的單位為毫秒).
await: 平均每次裝置I/O操作的等待時間 (毫秒).即 delta(ruse+wuse)/delta(rio+wio)
svctm: 平均每次裝置I/O操作的服務時間 (毫秒).即 delta(use)/delta(rio+wio)
%util: 一秒中有百分之多少的時間用於 I/O 操作,或者說一秒中有多少時間 I/O 佇列是非空的,即 delta(use)/s/1000 (因為use的單位為毫秒)
數值之間的聯絡:
util = (r/s+w/s) * (svctm/1000)
對於上面的示例有:%util=1.53%=(r/s+w/s) * (svctm/1000)=(0.78+1.65)*(6.32/1000)
裝置IO操作:總IO(io)/s = r/s(讀) +w/s(寫) =0.78+1.65=2.43
MPSTAT
mpstat 是Multiprocessor Statistics的縮寫,是實時系統監控工具。在多CPUs系統裡,其不但能檢視所有CPU的平均狀況資訊,而且能夠檢視特定CPU的資訊。
1.命令語法
Usage: mpstat [ options... ] [
Options are:
[ -P {
引數的含義如下:
-P {|ALL} 表示監控哪個CPU, cpu在[0,cpu個數-1]中取值
internal 相鄰的兩次取樣的間隔時間
count 取樣的次數,count只能和delay一起使用
當沒有引數時,mpstat則顯示系統啟動以後所有資訊的平均值。有interval時,第一行的資訊自系統啟動以來的平均資訊。
從第二行開始,輸出為前一個interval時間段的平均資訊。
CPU 處理器ID
user 在internal時間段裡,使用者態的CPU時間(%),不包含 nice值為負 程式 (usr/total)*100
nice 在internal時間段裡,nice值為負程式的CPU時間(%) (nice/total)*100
system 在internal時間段裡,核心時間(%) (system/total)*100
iowait 在internal時間段裡,硬碟IO等待時間(%) (iowait/total)*100
irq 在internal時間段裡,硬中斷時間(%) (irq/total)*100
soft 在internal時間段裡,軟中斷時間(%) (softirq/total)*100
idle 在internal時間段裡,CPU除去等待磁碟IO操作外的因為任何原因而空閒的時間閒置時間(%)(idle/total)*100
intr/s 在internal時間段裡,每秒CPU接收的中斷的次數intr/total)*100
CPU總的工作時間=total_cur=user+system+nice+idle+iowait+irq+softirq
total_pre=pre_user+ pre_system+ pre_nice+ pre_idle+ pre_iowait+ pre_irq+ pre_softirq
user=user_cur – user_pre
total=total_cur-total_pre
其中_cur 表示當前值,_pre表示interval時間前的值。上表中的所有值可取到兩位小數點。
2.使用示例
示例1:使用mpstat不帶引數,顯示從系統啟動以來的平均值
示例2:每2秒產生了2個處理器的統計資料包告
下面的命令可以每2秒產生了2個處理器的統計資料包告,一共產生三個interval 的資訊,然後再給出這三個interval的平均資訊。預設時,輸出是按照CPU 號排序。第一個行給出了從系統引導以來的所有活躍資料。接下來每行對應一個處理器的活躍狀態。
批註:以上輸出列值含義解析
%user 表示處理使用者程式所使用 CPU 的百分比。使用者程式是用於應用程式(如 Oracle 資料庫)的非核心程式,在本示例輸出中,使用者 CPU 百分比非常低。
%nice 表示使用 nice 命令對程式進行降級時 CPU 的百分比。在之前的部分中已經對 nice 命令進行了介紹。簡單來說,nice 命令更改程式的優先順序。
%system表示核心程式使用的 CPU 百分比
%iowait表示等待進行 I/O 所使用的 CPU 時間百分比
%irq 表示用於處理系統中斷的 CPU 百分比
%soft 表示用於軟體中斷的 CPU 百分比
%idle 顯示 CPU 的空閒時間
%intr/s 顯示每秒 CPU 接收的中斷總數
備註:由於本臺機器為測試機,所以CPU基本沒有負載。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29634949/viewspace-1268642/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- sysstat——系統效能監控神器
- 全能冠軍:Linux系統效能和使用活動監控工具 sysstatLinux
- Linux下使用NMON監控、分析系統效能Linux
- Node.js環境效能監控Node.js
- RedHat/CentOs系統搭建lnmp環境RedhatCentOSLNMP
- 鴻蒙高併發環境下的服務狀態監控系統鴻蒙
- nginx下搭建nagios監控環境NginxiOS
- AIX環境下監控程式指令碼AI指令碼
- redhat環境下vnc使用若干問題RedhatVNC
- 終於用上環境監控電話報警系統
- (轉)使用 Nmon 監控 Linux 的系統效能Linux
- Arduino入門:製作你自己的環境監控系統UI
- Linux 系統環境監測Linux
- Linux 常用系統效能監控命令Linux
- 系統效能監控利器-collectd詳解
- WINDOWS 環境下 監控ORACLE臨時表空間WindowsOracle
- 高併發&效能優化(二)------系統監控工具使用優化
- Java生產環境效能監控與調優—基於JDK命令列工具的監控JavaJDK命令列
- 智慧城市:綜合管廊監控系統、綜合管廊環境實時線上監測
- 在Linux系統環境下使用GFS檔案系統Linux
- Windows系統下使用Sublime搭建nodejs環境WindowsNodeJS
- 一種對雲主機進行效能監控的監控系統及其監控方法
- Linux系統效能監控採集項Linux
- 利用OSW工具監控作業系統效能作業系統
- 當機房部署3D視覺化環境監控系統後……3D視覺化
- 使用Sar實現系統監控
- linux環境下使用XFS檔案系統(轉)Linux
- centos6.2lnmp環境下安裝zabbix(中文環境)並且監控客戶端CentOSLNMP客戶端
- python使用wmi模組獲取windows下的系統資訊 監控系統PythonWindows
- 記-Windows環境下Prometheus+alertmanager+windows_exporter+mtail監控部署WindowsPrometheusExportAI
- RedHat 7.2配置LAMP環境下的redius+mysql+openvpn環境RedhatLAMPMySql
- sqlserver資料庫系統效能監控步驟SQLServer資料庫
- 在Linux中,如何監控系統的效能?Linux
- 運維文件 - 伺服器效能監控系統運維伺服器
- 智慧鄉村生態助農:食用菌菇房環境監控系統
- 分散式監控系統Zabbix3.4-針對MongoDB效能監控操作筆記分散式MongoDB筆記
- 【譯】生產環境下的Node.js——開源監控工具Node.js
- 利用devstack,在openstack-ceilometer 環境下配置監控項dev