• Linux系统调优详解(八)——vmstat查看系统整体运行状态


    今天继续给大家介绍Linux运维相关知识,本文主要内容是vmstat查看系统整体运行状态。

    一、vmstats命令安装与使用

    vmstat命令也是sysstat安装包下的命令,在最小化安装的系统中不存在,需要执行命令:

    yum install -y sysstat
    
    • 1

    进行安装后,才可以使用。
    vmstat命令可以查看当前系统的整体运行状态,包括进程信息、CPU信息、内存信息、swap虚拟内存信息、网络IO信息,操作系统信息等。
    直接执行命令:

    vmstat
    
    • 1

    即可查看当前系统中这些基本情况。
    vmstat命令直接执行只会显示以此,如果在该命令后面添加一个数值,表示每隔该数值指定的时间就执行一次。例如,执行命令:

    vmstat 1
    
    • 1

    表示每隔1秒,执行一次vmstat命令,只有当用户手动终止时,该命令才会停止执行。
    如果vmstat命令后面跟两个数值,第一个数值还是表示每隔该数值指定的时间就执行一次,第二个数值表示一共执行的次数。例如,执行命令:

    vmstat 1 5
    
    • 1

    即表示vmstat每隔1秒执行1次,一共执行5次。
    上述命令执行结果如下所示:
    在这里插入图片描述

    二、vmstat命令显示含义

    vmstat命令的显示中,各项参数的含义如下:
    进程方面:
    r:表示当前系统中运行队列的个数,如果该值超过了当前系统中CPU的数量,就会产生CPU瓶颈。一般而言,该值超过3,就表示当前系统负载比较高,该值如果超过10,就表示当前系统状态非常危险,有随时宕机的可能。
    b:表示系统中阻塞进程的个数。
    内存方面:
    swpd:表示当前系统使用的虚拟内存的大小,如果该值不为0,就表示当前系统中内存大小不足,如果排除了程序内存泄露的原因,就表示应该升级内存,或者将当前系统中部分进程转移到其他服务器上。
    free:表示当前系统中空闲内存的大小。
    buff:表示当前系统中读入缓存的大小。
    cache:表示当前系统中写入缓存的带下。
    swap虚拟内存方面:
    si:表示每秒从磁盘读入的虚拟内存的大小,如果该值大于0,如果排除了程序内存泄露的原因,就表示应该升级内存,或者将当前系统中部分进程转移到其他服务器上。
    so:表示每秒向磁盘写入的虚拟内存的大小,如果该值大于0,如果排除了程序内存泄露的原因,就表示应该升级内存,或者将当前系统中部分进程转移到其他服务器上。
    网络IO方面:
    bi:表示每秒读入磁盘的数据块数量。
    bo:表示每秒发送到磁盘的数据块数量。
    系统方面:
    in:指每秒CPU的中断次数,包括时间中断。
    cs:指每秒上下文切换(即系统在用户模式和内核模式之间的切换,当我们进行系统调用时,会导致代码进入内核空间,非常消耗资源)次数。该值越小越好,数值太大表示系统正在进行频繁的切换,会影响系统运行效率,CPU的大部分时间被浪费,没有得到有效利用。
    CPU使用方面:
    us:表示用户空间使用的CPU的时间比
    sy:表示系统内核空间使用的CPU时间比
    id:表示空闲的CPU时间比
    wa:表示等待IO的CPU时间比
    st:表示虚拟机占用的CPU时间比
    原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 相关阅读:
    Value-Based RL
    Linux账号密码安全运维
    如何编写规范的交互文档
    [附源码]计算机毕业设计JAVA某城市参军和退役军人信息管理系统
    【ESP32】ESP32-Face人脸识别过程概述
    Django(3):数据模型定义
    Python自带单元测试框架UnitTest,如何生成独立的测试报告?
    8月12日TensorFlow学习笔记——梯度下降、手写数字识别实战、TensorBoard、Keras 高层 API
    基于音频SOC开发板的主动降噪ANC算法源码实现
    算法面试高频题解指南【一】
  • 原文地址:https://blog.csdn.net/weixin_40228200/article/details/125352212