atop是一個(gè)功能強(qiáng)大的linux服務(wù)器監(jiān)控工具,它支持收集和顯示CPU,內(nèi)存,磁盤,網(wǎng)絡(luò),進(jìn)程等資源的相關(guān)信息,負(fù)載比較大的資源信息會(huì)以特別的顏色顯示, 可以作為系統(tǒng)管理的輔助工具使用。官方網(wǎng)站為:
http://www.atoptool.nl/
項(xiàng)目官方wiki地址:http://fedoraproject.org/wiki/EPEL/zh-cn
一、安裝
1.yum安裝
安裝atop需要先安裝第三方源:安裝第三方y(tǒng)um源EPEL,EPEL的全稱叫 Extra Packages for Enterprise Linux。
yum install epel-release
#
yum install -y atop
二、使用介紹
運(yùn)行atop n,可每隔n秒顯示系統(tǒng)資源信息:
ATOP - server1 2020/09/02 21:25:33 -------------- 5s elapsed
PRC | sys 0.08s | user 0.02s | #proc 96 | #trun 1 | #tslpi 155 | #tslpu 0 | #zombie 0 | clones 0 | | #exit 0 |
CPU | sys 0% | user 0% | irq 0% | idle 200% | wait 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu000 w 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu001 w 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
CPL | avg1 0.00 | avg5 0.04 | avg15 0.05 | | | csw 710 | intr 626 | | | numcpu 2 |
MEM | tot 974.6M | free 242.4M | cache 395.2M | buff 2.0M | slab 90.3M | shmem 7.7M | shrss 0.0M | vmbal 0.0M | hptot 0.0M | hpuse 0.0M |
SWP | tot 2.0G | free 2.0G | | | | | | | vmcom 1.2G | vmlim 2.5G |
DSK | sda | busy 0% | read 0 | write 21 | KiB/r 0 | KiB/w 11 | MBr/s 0.0 | MBw/s 0.0 | avq 11.20 | avio 0.48 ms |
NET | transport | tcpi 2 | tcpo 3 | udpi 0 | udpo 0 | tcpao 0 | tcppo 0 | tcprs 0 | tcpie 0 | udpie 0 |
NET | network | ipi 2 | ipo 3 | ipfrw 0 | deliv 2 | | | | icmpi 0 | icmpo 0 |
NET | ens33 0% | pcki 2 | pcko 3 | sp 1000 Mbps | si 0 Kbps | so 0 Kbps | erri 0 | erro 0 | drpi 0 | drpo 0 |
PID SYSCPU USRCPU VGROW RGROW RDDSK WRDSK RUID EUID ST EXC THR S CPUNR CPU CMD 1/1
2540 0.05s 0.01s 0K 0K 0K 0K root root -- - 1 R 1 1% atop
737 0.00s 0.01s 0K 0K 0K 0K mysql mysql -- - 30 S 1 0% mysqld
544 0.01s 0.00s 0K 0K 0K 0K root root -- - 2 S 0 0% vmtoolsd
3 0.01s 0.00s 0K 0K 0K 0K root root -- - 1 S 0 0% ksoftirqd/0
285 0.01s 0.00s 0K 0K 0K 0K root root -- - 1 S 1 0% xfsaild/sda2
705 0.00s 0.00s 0K 0K 0K 0K root root -- - 3 S 1 0% rsyslogd
Atop行顯示服務(wù)器的主機(jī)名、當(dāng)前時(shí)間以及信息收集頻率。
ATOP - server1 2020/09/02 21:25:33 -------------- 5s elapsed
PRC行顯示系統(tǒng)進(jìn)程相關(guān)匯總信息:
- sys:采樣周期內(nèi)所有進(jìn)程在系統(tǒng)態(tài)運(yùn)行時(shí)間總和
- user 采樣周期內(nèi)所有進(jìn)程在用戶態(tài)運(yùn)行時(shí)間綜合
- proc 采樣周期內(nèi)進(jìn)程總數(shù)
- tslpu 采樣周期內(nèi)處于不可中斷的睡眠狀態(tài)的進(jìn)程數(shù)
- zombie 采樣周期內(nèi)僵死狀態(tài)進(jìn)程數(shù)
- exit 采樣周期內(nèi)退出的進(jìn)程數(shù)
PRC | sys 0.08s | user 0.02s | #proc 96 | #trun 1 | #tslpi 155 | #tslpu 0 | #zombie 0 | clones 0 | | #exit 0 |
CPU行顯示服務(wù)器CPU利用率匯總信息,各個(gè)cpu行顯示各個(gè)cpu核上利用率匯總信息:
- sys 采樣周期內(nèi)CPU處于系統(tǒng)態(tài)的利用率
- user 采樣周期內(nèi)CPU處于用戶態(tài)的利用率
- idle 采樣周期內(nèi)CPU處于空閑狀態(tài)的比例
CPU | sys 0% | user 0% | irq 0% | idle 200% | wait 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu000 w 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu001 w 0% | guest 0% | ipc notavail | cycl unknown | curf ?MHz | curscal ?% |
CPL行顯示CPU負(fù)載信息:
- avg1 過(guò)去1分鐘進(jìn)程等待隊(duì)列數(shù)
- avg5 過(guò)去5分鐘進(jìn)程等待隊(duì)列數(shù)
- avg15 過(guò)去15分鐘進(jìn)程等待隊(duì)列數(shù)
- csw(context swapping) 上下文交換次數(shù)
- intr(interrupt) 中斷發(fā)生的次數(shù)
- numcpu cpu的核數(shù)
CPL | avg1 0.00 | avg5 0.04 | avg15 0.05 | | | csw 710 | intr 626 | | | numcpu 2 |
MEM行顯示內(nèi)存使用信息:
- tot 物理內(nèi)存總量
- free 空閑內(nèi)存大小,不包含cache和buffer的內(nèi)存
- cache 用于頁(yè)緩存的內(nèi)存大小
- buff 用于文件緩存的內(nèi)存大小
- slab 系統(tǒng)內(nèi)核占用的內(nèi)存大小
MEM | tot 974.6M | free 242.4M | cache 395.2M | buff 2.0M | slab 90.3M | shmem 7.7M | shrss 0.0M | vmbal 0.0M | hptot 0.0M | hpuse 0.0M |
SWP行顯示交換空間使用情況:
SWP | tot 2.0G | free 2.0G | | | | | | | vmcom 1.2G | vmlim 2.5G |
LVM,DSK行顯示磁盤邏輯卷和分區(qū)使用情況:
- busy 磁盤忙時(shí)所占比例
- read KiB/r 、MBr/s 每秒讀的請(qǐng)求數(shù)和請(qǐng)求的kb、mb數(shù)
- write KiB/w 、MBr/w 每秒寫的請(qǐng)求數(shù)和請(qǐng)求的kb、mb數(shù)
- avio 磁盤的平均io時(shí)間
LVM | system-root | busy 1% | read 0 | write 16 | MBw/s 0.0 | avio 1.50 ms |
DSK | sda | busy 0% | read 0 | write 21 | KiB/r 0 | KiB/w 11 | MBr/s 0.0 | MBw/s 0.0 | avq 11.20 | avio 0.48 ms |
NET 顯示傳輸層、網(wǎng)絡(luò)層、各個(gè)網(wǎng)絡(luò)接口的網(wǎng)絡(luò)傳輸信息:
- sp 網(wǎng)卡的帶寬
- pcki 傳入的數(shù)據(jù)包的大小
- pcko 傳出的數(shù)據(jù)包的大小
- si 每秒傳入的數(shù)據(jù)大小
- so 每秒傳出的數(shù)據(jù)大小
- coll 每秒的沖突數(shù)
- mlti 每秒的多路廣播的數(shù)量
- erri/erro 每秒輸入輸出的錯(cuò)誤數(shù)
- drpi/drpo 每秒的輸入輸出的丟包數(shù)
NET | transport | tcpi 2 | tcpo 3 | udpi 0 | udpo 0 | tcpao 0 | tcppo 0 | tcprs 0 | tcpie 0 | udpie 0 |
NET | network | ipi 2 | ipo 3 | ipfrw 0 | deliv 2 | | | | icmpi 0 | icmpo 0 |
NET | ens33 0% | pcki 2 | pcko 3 | sp 1000 Mbps | si 0 Kbps | so 0 Kbps | erri 0 | erro 0 | drpi 0 | drpo 0 |
最下邊顯示的各進(jìn)程的具體信息,可輸入m(內(nèi)存)、p(進(jìn)程)、u(用戶)、d(磁盤)、c(進(jìn)程運(yùn)行的代碼)、v(線程)切換顯示模式,不同模式下的顯示信息這里不再展開(kāi),可使用 man atop查看atop的手冊(cè)。
PID SYSCPU USRCPU VGROW RGROW RDDSK WRDSK RUID EUID ST EXC THR S CPUNR CPU CMD 1/1
2540 0.05s 0.01s 0K 0K 0K 0K root root -- - 1 R 1 1% atop
737 0.00s 0.01s 0K 0K 0K 0K mysql mysql -- - 30 S 1 0% mysqld
m模式:內(nèi)存狀態(tài)模式
SYSCPU:過(guò)去10s內(nèi)進(jìn)程處于內(nèi)核模式占用的CPU時(shí)間
USRCPU:過(guò)去10S進(jìn)程處于用戶模式占用的CPU時(shí)間
VSIZE:過(guò)去10S進(jìn)程占用的虛擬空間大小
RSIZE:過(guò)去10S進(jìn)程占用的內(nèi)存空間大小
PSIZE:過(guò)去10S進(jìn)程占用的頁(yè)大小
VGROW:過(guò)去10S進(jìn)程增長(zhǎng)的虛擬空間大小
RGROW:過(guò)去10S進(jìn)程增長(zhǎng)的內(nèi)存大小
SWAPSZ:過(guò)去10S進(jìn)程使用交換空間的大小。
MEM:過(guò)去10S進(jìn)程占用內(nèi)存百分比
d模式:磁盤狀態(tài)模式
- RDDSK:過(guò)去10S進(jìn)程讀磁盤的數(shù)據(jù)量
- WRDSK:過(guò)去10S進(jìn)程寫磁盤的數(shù)據(jù)量
- DSK:過(guò)去10S進(jìn)程所占磁盤的百分比
- CMD:進(jìn)程名
p模式:進(jìn)程狀態(tài)模式,同一個(gè)名稱的進(jìn)程顯示一列,根據(jù)進(jìn)程名進(jìn)行分組顯示
NPROCS:相同名稱的進(jìn)程數(shù)量
其它的參數(shù)上面已經(jīng)有列出
v模式:線程狀態(tài)模式
u模式:用戶模式
- 根據(jù)用戶進(jìn)行分組顯示
g模式:標(biāo)準(zhǔn)模式
- s:進(jìn)程當(dāng)前的狀態(tài),包括:s(sleeping),R(runing)等
四、相關(guān)文件
- /etc/atop:目錄保存的是atop的配置文件
- /etc/rc.d/init.d/atop:atop的啟動(dòng)文件
- /etc/cron.d/atop:atop的定時(shí)任務(wù)文件,默認(rèn)是每天0點(diǎn)開(kāi)始
- /var/log/atop:atop日志文件,默認(rèn)是每天0點(diǎn)開(kāi)始會(huì)產(chǎn)生當(dāng)天的一個(gè)日志文件,然后可以通過(guò)atop -r file 查看信息,但是沒(méi)有找到自動(dòng)播放的的功能,只能通過(guò)輸入b顯示一個(gè)指定的時(shí)間的信息,可以寫個(gè)循環(huán)來(lái)實(shí)現(xiàn)
- /usr/bin/atop:atop命令目錄
atop產(chǎn)生的日志文件信息是10分鐘一個(gè)采樣周期進(jìn)行記錄,可以通過(guò)修改atop.daily文件進(jìn)行修改。
對(duì)于atop日志文件的保存方式,我們可以這樣:
》每天保存一個(gè)atop日志文件,該日志文件記錄當(dāng)天信息
》日志文件以”atop_YYYYMMDD”的方式命名
》設(shè)定日志失效期限,自動(dòng)刪除一段時(shí)間前的日志文件
在atop.daily腳本中,我們可以通過(guò)修改INTERVAL變量改變atop信息采樣周期(默認(rèn)為10分鐘);通過(guò)修改以下命令中的數(shù)值改變?nèi)罩颈4嫣鞌?shù)(默認(rèn)為28天):
(sleep 3; find 'atop_*' -mtime +28 -exec rm {} ; )&
最后,我們修改cron文件,每天凌晨執(zhí)行atop.daily腳本:
0 0 * * * root /etc/cron.daily/atop.daily