1.內存監控
以1秒爲時間間隔,連續5收集內存數據
[root@master ~]# vmstat 1 5 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 140 20716 28524 60576 0 0 13 14 30 94 0 1 98 1 0 0 0 140 20716 28524 60584 0 0 0 0 20 19 0 0 100 0 0 0 0 140 20716 28524 60584 0 0 0 0 18 22 0 0 100 0 0
字段說明
procs
-r在運行隊列中等待的進程數
-b在等待io的進程數
memory
-swpd已經使用的交換內存(kb)
-free空閒的物理內存
-buff用於緩衝區的內存數
-cache用於高速緩衝的內存數
swap
-si 從磁盤到交換內存的交換頁數量 kb/s
-so 從內存到磁盤的交換頁數據 kb/s
io
-bi發送到塊設備的塊數 塊/s
-bo從塊設備中接收的塊數 塊/s
system
-in每秒的中斷數,包括時鐘中斷
-cs每秒上下文切換的次數
CUP
-us 用戶進程使用cpu時間%
-sy 系統進程使用cpu時間%
-id cup空閒時間%
-wa 等待IO所消耗cpu時間%
-st 從虛擬設備中獲得的時間%
重點關注 free si so
2.cpu監控
主要三個指標:運行隊列 cpu使用率 上下文切換
vmstat命令只能看cpu總的情況
[root@master ~]# vmstat 1 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 140 17048 30568 60912 0 0 11 14 29 85 0 1 98 0 0 0 0 140 17040 30576 60908 0 0 0 32 26 26 0 0 100 0 0 0 0 140 17040 30576 60912 0 0 0 0 21 26 0 1 99 0 0 0 0 140 17040 30576 60912 0 0 0 0 25 20 0 0 100 0 0
多個cpu時用mpstat,以1秒爲時間間隔,連續4次收集數據
[root@master ~]# mpstat 1 4 Linux 2.6.32-358.2.1.el6.i686 (master) 2013年09月16日 _i686_ (1 CPU) 02時01分48秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 02時01分49秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 02時01分50秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 02時01分51秒 all 0.99 0.00 0.99 0.00 0.00 0.00 0.00 0.00 98.02 02時01分52秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 平均時間: all 0.25 0.00 0.25 0.00 0.00 0.00 0.00 0.00 99.50
每個字段說明
-CPU cpu號碼
-%usr 用戶進程佔用cpu時間%
-%nice 用戶進程的nice操作所佔用cpu時間%
-%sys 系統進程所佔用cpu時間%
-%iowait 等待IO所消耗cpu時間%
-%irq 硬中斷所佔用cpu時間%
-%soft 軟中斷所佔用cpu時間%
-%steal 虛擬設備所佔用cpu時間%
-%guest
-%idle cpu空閒時間%
3.磁盤監控
[root@master ~]# iostat -d -m 1 Linux 2.6.32-358.2.1.el6.i686 (master) 2013年09月16日 _i686_ (1 CPU) Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn sda 1.57 0.01 0.01 132 184 sdb 0.01 0.00 0.00 0 0 sdc 0.03 0.00 0.00 1 0 dm-0 0.01 0.00 0.00 0 0
對分區 /dev/sda以1秒爲間隔連續3次收集數據
[root@master ~]# iostat /dev/sda 1 3 Linux 2.6.32-358.2.1.el6.i686 (master) 2013年09月16日 _i686_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.15 0.00 0.92 0.41 0.00 98.51 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 1.56 19.25 26.76 272288 378522 avg-cpu: %user %nice %system %iowait %steal %idle 1.01 0.00 3.03 0.00 0.00 95.96 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.00 0.00 0.00 0 0 avg-cpu: %user %nice %system %iowait %steal %idle 4.00 0.00 18.00 2.00 0.00 76.00 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 33.00 0.00 920.00 0 920
-Device 設備分區名
-tps 每秒發送到設備上IO請求次數
-Blk_read/s 設備每秒讀的數據 kb/s
-Blk_wrtn/s 設備每秒寫的數據 kb/s
-Blk_read 設備讀數據的總大小 KB
-Blk_wrtn 設備寫數據的總大小 KB
4.綜合監控工具top
[root@master ~]# top top - 02:34:36 up 4:26, 3 users, load average: 0.00, 0.00, 0.00 Tasks: 133 total, 1 running, 132 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.7%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 248984k total, 235656k used, 13328k free, 34168k buffers Swap: 545784k total, 140k used, 545644k free, 61440k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 7759 root 20 0 2704 1120 868 R 0.3 0.4 0:00.75 top 1 root 20 0 2900 1484 1268 S 0.0 0.6 0:04.15 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:00.13 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.94 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 0:02.30 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
.........................................................................................................................................
字段說明
第一行
系統時間 系統已經運行時間 登錄系統的用戶個數 最近1,5,15分鐘負載平均值
第二行 進程信息
-total系統當前進程總數
-running 系統正運行的進程數
-sleeping系統正在休眠的進程數
-stopped 系統停止的進程數
-zombie 系統僵化的進程數
第三行 cpu信息
-us用戶進程佔cpu%
-sy系統進程佔cpu%
-ni改變過優先級的用戶進程佔用cpu%
-id空閒cpu%
-wa等待loh佔用cpu%
-hi硬件中斷佔用cpu%
-si軟件中斷佔用cpu%
-st虛擬設備佔用cpu%
第四行 內存信息
-total物理內存總量
-used已經使用物理內存數量
-free空閒物理內存數量
-buffers緩存區內存數量
第五行 虛擬內存信息
-total 虛擬內存部總量
-used 已經使用的虛擬內存數量
-free空閒虛擬內存數量
-cached用於緩存的虛擬內存數量
其他信息
-PID 進程id
-USER 進程運行者
-PR 優先級
-NI nice值最高-20 最低19
-VIRT 進程使用虛擬內存大小
-RES 進程使用物理內存大小
-SHR 進程使用共享內存大小
-S 進程狀態
-%CPU 進程佔用cpu%
-%MEM 進程佔用內存%
-TIME+ 進程使用cpu總時間
-COMMAND 進程名稱