Linux服務器管理工具之進程管理工具top、htop、glances、dstat詳解

    在企業生產環境中,系統管理員通常要不定時的檢查服務器上各資源的使用狀況,如CPU使用率,負載,磁盤的讀寫速率,網絡傳輸狀況等等。因此,掌握一個進程管理工具的熟練使用,無疑對管理員的工作有事半功倍的效果。本文藉助CentOS6.6向讀者儘可能詳細講解top、htop、glances、以及dstat工具的使用方法和技巧。

    A.top工具

    top是CentOS系統自帶的一款動態顯示系統資源使用狀況的進程管理工具,類似於windows下的任務管理器,其支持交互式命令以及定製顯示內容。在命令行鍵入top後顯示內容如下:

wKioL1R1tqKCuqHHAAfLF4ankOU915.jpg

其各字段表達的含義爲;

wKioL1R1twaQz_FgAAXwzfnLHbA294.jpg

其中load average(平均負載)表示當前cpu上等待運行的進程隊列的隊列長度,如長度爲1表示1個進程,其三個值分別表示過去1分鐘、5分鐘、15分鐘進程隊列的平均長度。其值越大表示當前cpu的負載越高

常用選項:

    top -d# 指定刷新時間間隔,如:20秒刷新一次 top -d20

    top -b以批次方式顯示而非實時顯示

    top -b -n#:指定顯示的批次,如:20秒刷新一次,顯示3個批次 top -d20 -b -n3


常用交互式命令:

    Pcpu百分比排序顯示;

    M以內存佔用量排序顯示;

    Tcpu時間片累計佔用時間排序顯示;

    l是否顯示top一行的信息;

               t是否顯示進程及cpu兩行的相關信息

              1是否單獨顯示每顆cpu的使用率

              s修改刷新時間間隔,單位爲秒

              k殺死指定進程

    B.htop工具

    htop是top工具的增強版,提供了一個更美觀的界面給管理員查看,支持交互命令且支持鼠標選定,由紅帽公司收錄在Fedora 社區提供的高質量軟件源EPEL內,因此使用前需要yum 安裝。安裝完成後,在命令行鍵入htop顯示如下內容:

wKiom1R1u-Gj6KSzAAobo0-QVzQ651.jpg

常用交互式命令有;

      F1獲取幫助

wKiom1R1wB6RhdF_AASD0a5cjiQ820.jpg


             u僅顯示指定用戶的進程

wKiom1R1wbuALYn1AAof-ZvaDT8546.jpg

           s跟蹤選定進程發起的系統調用,以跟蹤NetworkManager爲例,先選中NetWorkManager進程-->鍵入s進入跟蹤進程的界面,等待片刻之後,便會出現跟蹤的結果-->按ESC鍵結束跟蹤

wKiom1R1w--CvgUjAAXjzIlAsDY637.jpg


          l跟蹤選定進程運行時打開的文件,以跟蹤NetworkManager爲例,先選中NetWorkManager進程-->鍵入l進入跟蹤進程的界面,按F5刷新-->按ESC鍵結束跟蹤

wKioL1R1xVTi_geeAAfcVnWRKn4695.jpg


           t以進程樹的形式顯示

wKiom1R1xemAcnr5AAotlHsJGc4061.jpg


          a設定cpu的親緣性(將選定的進程綁定到某顆cpu上)先選中某進程-->鍵入a,進行CPU的選擇

wKioL1R1x6rhMnpGAAqzrC5r24M355.jpg

    C.glances

    glances是一個由Python語言開發的一款更爲強大的系統資源監控工具,能夠監視 CPU、負載、內存、磁盤 I/O、網絡流量、文件系統、系統溫度等信息。支持交互式命令,且具有C/S特性。使用前需要yum安裝。在命令行鍵入glances顯示如下:

wKioL1R1zHDD5Vv_AAiNHq1Sf54783.jpg

鍵入h,可查看其交互式命令的使用幫助,再次鍵入h,返回監控界面


wKiom1R1zGKCiCelAAQE7Dt8WyE978.jpg

常用選項

                -b: Byte爲單位顯示網卡數據速率;

                -d: 關閉磁盤I/O模塊

                -f /path/to/somewhere: 設置輸出html或csv文件的位置;注:可能需yum安裝python-jinja2模塊;且必須先使用 -o 指定格式再指定輸出位置

                -o {HTML|CSV}設置文件的輸出格式,可以使用html查看,通常與-f一起使用將html文件傳輸至/var/www/html/下,就可以使用網頁查看了

                -m: 禁用mount模塊

                -n: 禁用網絡模塊

              -t #: 指定刷新時間間隔

               -1:每個CPU的數據單獨顯示

以網頁查看glances結果爲例,首先安裝nginx模塊(rpm或yum安裝均可)-->啓動nginx服務-->glances -o HTML -f  /usr/share/nginx/html/(此爲yum安裝nginx後,nginx的默認工作目錄)

在外部瀏覽器打開相應的地址即可

wKiom1R10Q6iBEjDAAQK1nNsXSg358.jpg

glaces還支持C/S模式。在生產環境中,可以使用glances -s -B 服務器IP,在linux服務器上以服務模式啓動,然後就可以在客戶機上使用glances -c 服務器IP,監控遠程服務器的系統資源使用情況。

例如:服務器的IP爲:172.16.24.1。在服務器上執行:glances -s -B 172.16.24.1wKioL1R10vWwE77YAABlKYMAifQ893.jpg,在客戶機上執行:glances -c 172.16.24.1可查看服務器的資源使用狀態。(實際生產環境中,我們通常在服務器上將glances -s -B IP工作於後臺作業中:nohubglances -s -B 172.16.24.1 &)

wKioL1R103rivZxHAANlFyM3M_Q000.jpg

    D.dstat

    dstat是一款比glances還要強大的系統監控工具,在生產環境中應用的更爲廣泛。它也需事先安裝,安裝完成後,在命令行鍵入dstat

                             

wKiom1R11OWw-BphAALPgJTAyF8004.jpg

其中:total-cpu-usage表示cpu的使用率統計;-dsk/total表示磁盤讀寫速率;net/total表示網絡傳輸速率;paging表示內存頁換進換出情況;system表示中斷以及上下文切換(進程切換)

常用選項:

    # #:第一個#表示刷新時間間隔,第二個表示要顯示的批次

    -c:僅統計cpu的使用狀況

wKiom1R11mmCvWGeAACYoq1ryEU068.jpg


    -d:僅顯示磁盤相關的使用情況

wKiom1R11pyDtIf9AACTInKgV48979.jpg


    -g:僅顯示內存頁面換進換出的狀況

wKiom1R11s_R6I8ZAAB0b9zDCUA994.jpg


    -n:僅顯示網絡傳輸的狀況

wKioL1R114fCNjMXAAEHH1oOLiE983.jpg


    --io:僅顯示IO設備的讀寫速率狀況

wKiom1R110rC4bIPAADEwpUdJCM165.jpg


    --top-cpu:顯示最佔cpu的進程

wKioL1R119uRprioAAERrC0aXKc290.jpg


    --top-io:最佔用io設備的進程

wKioL1R12DuwhWoJAAEfEBiWCws271.jpg


    --top-mem:最佔用內存的進程

wKioL1R12IWRK39OAAC6DOsSQzs559.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章