美文网首页
LInux 服务器状态查询

LInux 服务器状态查询

作者: 诡异的叶子 | 来源:发表于2023-03-14 14:37 被阅读0次

    最近帮助现场分析服务器的卡顿和使用情况,记录一下用到过的一些命令行

    1.top 命令监控所有服务的占用情况

    image.png

    记录下相关数据对应的信息

    1.1 第一行

    top - 14:09:54 up 55 days, 21:49, 3 users, load average: 1.51, 1.92, 2.12
    翻译过来就是:
    系统时间:14:09:54 运行时间:55 days, 21:49 当前登录用户数:3个 负载均衡:load average: 1.51, 1.92, 2.12
    ps:

    • 1.load average三个数字分别是 1分钟、5分钟、15分钟前的状态
      1. load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了

    1.2 第二行(进程状态)

    Tasks: 813 total, 1 running, 812 sleeping, 0 stopped, 0 zombie
    翻译:
    总进程: 813total 运行:1 running 休眠:812 sleeping 停止: 0 stopped 僵尸进程: 0 zombie

    1.3 第三行(CPU)

    %Cpu(s): 1.2 us, 2.5 sy, 0.0 ni, 96.2 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
    翻译:
    1.2us(用户空间占用百分比) 2.5 sy(系统内核占用百分比) 0.0 ni(改变过优先级的进程占用CPU的百分比) 96.2 id(空闲cpu百分比) 0.0 wa(等待IO的百分比) 0.1 si(硬中断百分比) 0.0 st(软中断百分比)
    这里关注用户占用和空闲cpu百分比

    1.4 第四行(内存占用)

    KiB Mem : 12359781+total, 26104952 free, 44029052 used, 53463812 buff/cache
    翻译:
    `total 总内存
    free 空闲内存

    used 已被使用
    buffer/cache 缓存
    `

    1.5 第五行(swap交换分区)

    KiB Swap: 0 total, 0 free, 0 used. 74735824 avail Mem
    可用内存=free + buffer + cached
    ps:这个就关注used,这个最好不被使用,如果被使用,说明服务器已经到内存占用非常严重的情况了

    1.6 表格类数据

    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    翻译:

    • PID 服务进程ID
    • USER 进程的所有人
    • PR 进程优先级
    • NI nice值,会出现负值,负值优先级更高
    • VIRT 进程使用虚拟内存总量
    • RES 共享内存大小
    • kbS(简略为S) —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
    • %CPU 上次更新到现在的CPU时间占用百分比
    • %MEM 进程使用的物理内存百分比
    • TIME+ — 进程使用的CPU时间总计,单位1/100秒
    • COMMAND — 进程名称(命令名/命令行)

    2. top命令行详解

    top的使用方式 top [-d number] | top [-bnp]

    参数 含义
    -d number number代表秒数,表示top命令显示的页面更新一次的间隔 (default=5s)
    -b 以批次的方式执行top
    -n 与-b配合使用,表示需要进行几次top命令的输出结果
    -p 指定特定的pid进程号进行观察

    top命令显示的页面还可以输入以下按键执行相应的功能(注意大小写区分的)

    参数 含义
    显示在top当中可以输入的命令
    P 以CPU的使用资源排序显示
    M 以内存的使用资源排序显示
    N 以pid排序显示
    T 由进程使用的时间累计排序显示
    k 给某一个pid一个信号,可以用来杀死进程(9)
    r 给某个pid重新定制一个nice值(即优先级)
    q 退出top(用ctrl+c也可以退出top)

    3. free 命令

    使用free -h可以查看linux的内存使用状态

    服务器内存状态
    各自的含义如下所示:
    • total 是总内存数;

    • used 是已经使用的内存数;

    • free 是空闲的内存数;

    • shared 是多个进程共享的内存总数;

    • buffers 是缓冲内存数;

    • cached 是缓存内存数

    ps:使用free -m 也是可以的,而且还可以用MB为单位

    4.iostat 命令

    iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析

    4.1 安装服务

    部分设备无法直接使用这个服务,需要提前安装服务

    # iostat属于sysstat软件包。可以直接安装。
     yum install sysstat -y
    

    4.2 使用

    iostat 命令结果如下


    image.png

    cpu属性值说明:

    • %user:CPU处在用户模式下的时间百分比。

    • %nice:CPU处在带NICE值的用户模式下的时间百分比。

    • %system:CPU处在系统模式下的时间百分比。

    • %iowait:CPU等待输入输出完成时间的百分比。

    • %steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。

    • %idle:CPU空闲时间百分比。

    • tps:该设备每秒的传输次数

    • kB_read/s:每秒从设备(drive expressed)读取的数据量;

    • kB_wrtn/s:每秒向设备(drive expressed)写入的数据量;

    • kB_read: 读取的总数据量;

    • kB_wrtn:写入的总数量数据量

    相关文章

      网友评论

          本文标题:LInux 服务器状态查询

          本文链接:https://www.haomeiwen.com/subject/hxycrdtx.html