vmstat

字段含义

Procs
 r: The number of processes waiting for run time. 等待执行的进程, 数字越大意味着CPU越忙, 果该数字经常大于逻辑cpu个数则CPU资源存在瓶颈
 b: The number of processes in uninterruptible sleep. 处在非中断睡眠状态的进程数, 即进程被阻塞, 主要是指被资源阻塞的进程对列数(比如IO资源, 页面调度等), 当这个值较大时需要根据应用程序来进行分析,比如数据库产品,中间件应用

Memory
swpd: the amount of virtual memory used. 已使用的虚拟内存大小. 如果虚拟内存使用较多, 可能系统的物理内存不足, 需要减少物理内存使用或增大物理内存. swapd不为0并不意味物理内存不足, 如果swapd长期稳定, si和so为0, 就是正常的
free: the amount of idle memory. 空闲的内存大小
buff: the amount of memory used as buffers.  buffer(缓存, 主要用于块设备缓存)的大小, 单位KB
cache: the amount of memory used as cache. cache(缓存, 主要用于缓存文件)的大小, 单位KB
inact: the amount of inactive memory. (-a option) 非活跃的内存大小
active: the amount of active memory. (-a option) 活跃的内存大小

Swap
si: Amount of memory swapped in from disk (/s). 从swap交换到内存的数量, 单位KB/s
so: Amount of memory swapped to disk (/s). 从内存交换到swap的数量, 单位KB/s
关于free和si, so的说明: 内存充足的时候这2个值都是0, 如果这2个值一直大于0, 会影响系统性能(因为有磁盘IO和CPU消耗). 内存是否充足要结合free和si, so一起看, 如果free小但是si和so大多时候是0, 内存就是够用的.

IO
bi: Blocks received from a block device (blocks/s). 每秒从块设备接收到的块数, 单位: 块/秒
bo: Blocks sent to a block device (blocks/s). 每秒写到块设备的块数, 单位: 块/秒

System
in: The number of interrupts per second, including the clock. 每秒的中断数, 包括时钟中断
cs: The number of context switches per second. 每秒的环境上下文切换次数. 比如我们调用系统函数, 就要进行上下文切换, 而过多的上下文切换会浪费较多的cpu资源, 这个数值应该越小越好. 上下文切换数目高于中断数目,说明kernel中相当数量的时间都开销在上下文切换线程. 大量的上下文切换将导致CPU 利用率分类不均衡. 导致等待io请求的(wa)百分比非常高, 以及user time(us)百分比非常低

CPU
These are percentages of total CPU time. 以下的数值都是CPU总时间的百分比
us: Time spent running non-kernel code. (user time, including nice time): 用户CPU时间(非内核进程占用时间). us的值高说明用户进程消耗的CPU时间多
sy: Time spent running kernel code. (system time) 系统使用的CPU时间. sy的值高说明系统内核消耗的CPU资源多, 这种情况是有问题的
id: Time spent idle. Prior to Linux 2.5.41, this includes IO-wait time. 空闲的CPU时间, 在Linux 2.5.41之前这部分包含IO等待时间
wa: Time spent waiting for IO. Prior to Linux 2.5.41, included in idle. 等待IO的CPU时间. 在Linux 2.5.41之前这个值为0. 这个指标意味着CPU在等待硬盘读写操作的时间. wait越大则机器io性能就越差, 说明IO等待比较严重, 这可能由于磁盘大量作随机访问造成, 也有可能磁盘出现瓶颈
st: Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown.

参数说明

vmstat [delay] [count]

-a

  Displays active and inactive memory.
-f
  Displays the number of forks since boot. This includes the fork, vfork, and clone system calls, and is equivalent to the total number of tasks created. Each process is represented by one or more tasks, depending on thread usage. This display does not repeat.
-m
  Displays slab information.
-n
  Specifies that the header will appear once, not periodically.
-s
  Displays a table of various event counters and memory statistics. This display does not repeat. 
delay
  The delay between reports in seconds. If no delay is specified, only one report is printed, with the average values since the machine was last booted.
count
  The number of times to report on the system. If no count is specified and delay is defined, vmstat reports indefinitely.
-d
  Displays disk statistics. 每个磁盘设备为一行, 显示磁盘相关的读写统计
-p
  Takes a partition name as a value, and reports detailed statistics for that partition.
-S
  Defines the units output by the report. Valid values are k (1000 bytes), K (1024 bytes), m (1,000,000 bytes), or M (1,048,576 bytes).
-D
  Report summary statistics about disk activity.

sar, sysstat

参数说明

-b Report I/O and transfer rate statistics
-B Report paging statistics
-d Report activity for each block device (kernels 2.4 and newer only)
-H Report hugepages utilization statistics.
--human Print sizes in human readable format (e.g. 1k, 1.23M, etc.)
-I { int_list | SUM | ALL } Report statistics for interrupts. int_list is a list of comma-separated values or range of values (e.g., 0-16,35,400-). The SUM keyword indi‐cates that the total number of interrupts received per second is to be displayed. The ALL keyword indicates that statistics from all interrupts, including potential APIC interrupt sources, are to be reported
-m Report power management statistics
-n { keyword [,...] | ALL } Report network statistics. Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6, EIP6, ICMP6, EICMP6 and UDP6.
-P { cpu [,...] | ALL } Report per-processor statistics for the specified processor or processors.
-p retty-print device names. Use this option in conjunction with option -d. By default names are printed as dev m-n where m and n are the major and minor numbers for the device.
-q Report queue length and load averages.
-r [ ALL ] Report memory utilization statistics. The ALL keyword indicates that all the memory fields should be displayed.内存和交换分区使用率
-S Report swap space utilization statistics.
-u [ ALL ] Report CPU utilization. The ALL keyword indicates that all the CPU fields should be displayed.
-v Report status of inode, file and other kernel tables
-W Report swapping statistics.
-w Report task creation and system switching activity.
-y Report TTY devices activity.

.

例子

# Report CPU utilization for each 2 seconds. 5 lines are displayed.
sar -u 2 5 #
sar -b 1 5 #
sar -q 1 3 # Report statistics on IRQ 14 for each 2 seconds. 10 lines are displayed. Data are stored in a file called int14.file.
sar -I 14 -o int14.file 2 10 # Display memory and network statistics saved in daily data file 'sa16'.
sar -r -n DEV -f /var/log/sysstat/sa16 # Display all the statistics saved in current daily data file.
sar -A

.

其他的单项查看工具

mpstat 是专用于查看CPU状态的工具

# Display  five  reports  of  global statistics among all processors at two second intervals.
mpstat 2 5 # Display five reports of statistics for all processors at two second intervals.
mpstat -P ALL 2 5

iostat  是用于查看CPU和设备IO状态的工具, 主要用于后者

# Display a single history since boot report for all CPU and Devices.
iostat
# Display the CPU utilization report at two second intervals.
iostat -c 2
# Display a continuous device report at two second intervals.
iostat -d 2
# Display six reports at two second intervals for all devices.
iostat -d 2 6
# Display six reports of extended statistics at two second intervals for devices sda and sdb.
iostat -x sda sdb 2 6
# Display six reports at two second intervals for device sda and all its partitions (sda1, etc.)
iostat -p sda 2 6

netstat 用于显示网络连接, 路由表, 网口状态等信息的工具

-a, --all  显示所有连线中的Socket.
-n, -–numeric 直接使用IP地址, 而不通过域名服务器
-p, -–programs 显示正在使用Socket的程序识别码和程序名称
-t, -–tcp 显示TCP传输协议的连线状况 # 显示正打开侦听端口的程序
netstat -lnp
# 显示和本机端口已经建立的连接
netstat -antp

  

ps 用于查看系统进程的工具

#
ps aux #
ps -eLf

  

使用 vmstat, mpstat 和 sar 查看系统运行参数的更多相关文章

  1. NVIDIA TX2--3--NVIDIA Jetson TX2 查看系统版本参数状态及重要指令

    NVIDIA Jetson TX2 查看系统参数状态. 当前博主的TX2更新的版本为:Jetpack 3.3, cuda 9.0.252, cudnn7.0, opencv3.3.1, TensorR ...

  2. vmstat的使用(查看系统各种负载)

    $ vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd f ...

  3. Linux查看系统运行情况

    http://elinux.org/Runtime_Memory_Measurement

  4. 电脑开机后win系统运行异常慢,鼠标移动卡

    今天公司里面一个小伙伴的电脑开机后还没有打开应用程序系统就运行非常慢,打开文件夹反应慢,鼠标是一点一点的在移动.体验感极差.作为运维的我立即上去解决问题: 首先是查看一下电脑确实运行比较慢,然后就查看 ...

  5. Linux查看系统开机和关机时间

    1.who 命令查看 who   -b    查看最后一次系统启动的时间 who   -r     查看当前系统运行时间   [root@test ~]# who -b          system ...

  6. 使用w uptime vmstat top sar nload 等命令查看系统负载

    1.  w 和uptime,查看cpu的使用率: 2.vmstat 命令,查看更细的物理设备使用状况: 3.top 命令: top -c  可具体查看命令及路径: top -bn1 静太显示一条命令, ...

  7. 使用w查看系统负载 vmstat命令 top命令 sar命令 nload命令

    w/uptime 查看系统负载 w查看系统负载,uptime跟w一样. [root@centos7 ~]# w 22:34:10 up 6 days, 23:10,  4 users,  load a ...

  8. Linux centos7 日常运维——使用w查看系统负载、vmstat命令、top命令、sar命令、nload命令

    一.使用w查看系统负载 w .uptime查看系统负载,0.00表示1分钟之内负载为0 cat  /proc/cpuinfo查看cpu核数 二.vmstat命令,查看进程.cpu.memory.交换. ...

  9. 【系统监控】性能监测 vmstat,mpstat,iostat

    一.系统整体性能监测工具:uptime [root@WebServer ~]# uptime (同w命令输出的第一行信息) 09:40:52 up 5 days, 57 min, 1 user, lo ...

随机推荐

  1. OPENJDK 源码编译

    一.整体编译 我的环境: Ubuntu 16.04 LTS apache-ant-1.8.0-bin.zip 环境变量: export LANG=C export ALT_BOOTDIR=/home/ ...

  2. POJ 3040 Allowance【贪心】

    POJ 3040 题意: 给奶牛发工资,每周至少 C 元.约翰手头上有面值V_i的硬币B_i个,这些硬币的最小公约数为硬币的最小面值.求最多能发几周? 分析: 贪心策略是使多发的面额最小(最优解).分 ...

  3. bzoj2654

    题解: 老早看的并没有写 wqs二分的原理和这个凸函数的性质已经证明过了 写的时候 主要的问题在于每次的答案是一个范围 什么意思呢 其实比较简单的做法是 优先取白边,优先取黑边做两次 然后看一下要求的 ...

  4. 【Java】 剑指offer(9) 斐波那契数列及青蛙跳台阶问题

     本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项 ...

  5. 026 使用大数据对网站基本指标PV案例的分析

    案例: 使用电商网站的用户行为日志进行统计分析 一:准备 1.指标 PV:网页流浪量 UV:独立访客数 VV:访客的访问数,session次数 IP:独立的IP数 2.上传测试数据 3.查看第一条记录 ...

  6. linux shell cat 命令

    cat:查看文件的内容.连接文件.创建一个或多个文件和重定向输出到终端或文件  用法:cat [选项] [文件] 1. $ cat hello.txt 显示hello.txt文本文件中的内容 2. $ ...

  7. ACM笔记

    写给自己看,纯属打发时间... Sacnf的返回值是成功赋值的变量个数 for(int i=0; i<100; i++)    在C++标准中指出for循环条件中定义的变量,作用域仅限于循环内部 ...

  8. 001.Open-Falcon简介

    一 Open-Falcon简介 监控系统是整个运维环节,乃至整个产品生命周期中最重要的一环,事前及时预警发现故障,事后提供翔实的数据用于追查定位问题.监控系统作为一个成熟的运维产品,相对成熟的解决方案 ...

  9. Vim-一款好用的文本编辑器

    关于vim的使用,通过博客,无论是静态的截图或者是代码/文本复制,很难展示所要表现的内容.更多需要读者亲自敲键盘实践之后才知道其作用. 本文不会也无法描述vim过多的细节,仅仅是对于常用的命令做一下记 ...

  10. 基于URL的高层次Java网络编程

    一致资源定位器URL URL(Uniform Resource Locator)是一致资源定位器的简称,它表示Internet上某一资源的地址.通过URL我们可以访问Internet上的各种网络资源, ...