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

你可能感兴趣的:(linux,top,进程管理,glances,htop)