前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vmstat和iostat命令监控linux性能

vmstat和iostat命令监控linux性能

作者头像
入门笔记
发布2022-06-02 16:41:43
9500
发布2022-06-02 16:41:43
举报
文章被收录于专栏:入门小站

vmstatIostat 这两个命令都可用于所有主要 Unix-like (Linux/Unix/FreeBSD/Solaris) 操作系统。如果 vmstatiostat 命令不存在请安装 sysstat包。vmstat, sariostat 命令是包含在包中的集合 sysstat系统监控工具。这iostat 生成报告 CPU和所有设备统计信息。

在linux中安装sysstat
代码语言:javascript
复制
$ sudo yum install sysstat         #CentOS and RHEL systems 
$ sudo dnf install sysstat         #Fedora 22+ systems 
$ sudo apt-get install sysstat     #Ubuntu and Debian based systems 
$ sudo pacman -S sysstat           #Arch Linux
  • vmstat – 汇总 Memory, Processes, Paging 等等信息。
  • iostat - 中央处理器 (CPU) 统计和 input/output 统计数据 devicespartitions
1. 列出活动和非活动内存

在下面的示例中,有六列。

代码语言:javascript
复制
[root@rumenz ~]# vmstat -a

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 810420  97380  70628    0    0   115     4   89   79  1  6 90  3  0
  • Free – 空闲/空闲内存空间的数量。
  • si – 每秒从磁盘中以千字节交换。
  • so – 每秒以千字节为单位换出到磁盘。
2. 执行 vmstat 'X' 秒和('N' 次)

有了这个命令vmstat每两秒执行一次,执行六次后自动停止。

代码语言:javascript
复制
[root@rumenz ~]# vmstat 2 6

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 810420  22064 101368    0    0    56     3   50   57  0  3 95  2  0
 0  0      0 810412  22064 101368    0    0     0     0   16   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   14   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   17   38  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   17   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   18   36  0  1 100  0  0
3. vmstat 带时间戳

vmstat 命令与 -t 参数显示时间戳,每行打印如下所示。

代码语言:javascript
复制
[rumenz@rumenz ~]$ vmstat -t 1 5

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp---
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 632028  24992 192244    0    0    70     5   55   78  1  3 95  1  0        2012-09-02 14:57:18 IST
 1  0      0 632028  24992 192244    0    0     0     0  171  514  1  5 94  0  0        2012-09-02 14:57:19 IST
 1  0      0 631904  24992 192244    0    0     0     0  195  600  0  5 95  0  0        2012-09-02 14:57:20 IST
 0  0      0 631780  24992 192244    0    0     0     0  156  524  0  5 95  0  0        2012-09-02 14:57:21 IST
 1  0      0 631656  24992 192244    0    0     0     0  189  592  0  5 95  0  0        2012-09-02 14:57:22 IST
4、各计数器统计

vmstat命令和-s开关显示各种事件计数器和内存统计信息的摘要。

代码语言:javascript
复制
[rumenz@rumenz ~]$ vmstat -s
      1030800  total memory
       524656  used memory
       277784  active memory
       185920  inactive memory
       506144  free memory
        26864  buffer memory
       310104  swap cache
      2064376  total swap
            0  used swap
      2064376  free swap
         4539 non-nice user cpu ticks
            0 nice user cpu ticks
        11569 system cpu ticks
       329608 idle cpu ticks
         5012 IO-wait cpu ticks
           79 IRQ cpu ticks
           74 softirq cpu ticks
            0 stolen cpu ticks
       336038 pages paged in
        67945 pages paged out
            0 pages swapped in
            0 pages swapped out
       258526 interrupts
       392439 CPU context switches
   1346574857 boot time
         2309 forks
5. 磁盘统计

vmstat-d 选项显示所有磁盘统计信息。

代码语言:javascript
复制
[rumenz@rumenz ~]$ vmstat -d

disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
ram0       0      0       0       0      0      0       0       0      0      0
ram1       0      0       0       0      0      0       0       0      0      0
ram2       0      0       0       0      0      0       0       0      0      0
...
sda     7712   5145  668732  409619   3282  28884  257402  644566      0    126
dm-0   11578      0  659242 1113017  32163      0  257384 8460026      0    126
dm-1     324      0    2592    3845      0      0       0       0      0      2
6. 以兆字节显示统计信息

vmstat默认情况下以千字节为单位显示内存统计信息,但你也可以使用参数显示以兆字节为单位的内存大小报告-S M。考虑以下示例。

代码语言:javascript
复制
[root@rumenz ~]# vmstat -S M 1 5

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0    346     53    476    0    0    95     8   42   55  0  2 96  2  0
 0  0      0    346     53    476    0    0     0     0   12   15  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   32   62  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   15   13  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   34   61  0  1 99  0  0

6 Iostat Command Examples in Linux

7. 显示 CPU 和 I/O 统计信息

iostat 不带参数显示 CPUI/O 所有分区的统计信息如下所示。

代码语言:javascript
复制
[root@rumenz ~]# iostat

Linux 3.10.0-1160.31.1.el7.x86_64 (iZuf6g17lg7nixe3uwrgxiZ)     11/21/2021      _x86_64_        (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.69    0.00    0.49    0.09    0.00   98.73

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
vda               6.29        43.45        46.23  357997753  380913717
8. 仅显示 CPU 统计信息

iostat-c 参数仅显示 CPU 统计如下。

代码语言:javascript
复制
[root@rumenz ~]# iostat -c

Linux 3.10.0-1160.31.1.el7.x86_64 (iZuf6g17lg7nixe3uwrgxiZ)     11/21/2021      _x86_64_        (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.69    0.00    0.49    0.09    0.00   98.73
9. 仅显示磁盘 I/O 统计信息

iostat-d 参数仅显示磁盘 I/O 所有分区的统计信息。

代码语言:javascript
复制
[root@rumenz ~]# iostat -d
Linux 3.10.0-1160.31.1.el7.x86_64 (iZuf6g17lg7nixe3uwrgxiZ)     11/21/2021      _x86_64_        (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.69    0.00    0.49    0.09    0.00   98.73

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
10. 仅显示单个设备的 I/O 统计信息。

默认情况下,它显示所有分区的统计信息,包括 -p 和设备名称参数仅显示磁盘 I/O 特定设备的统计数据。

代码语言:javascript
复制
[root@rumenz ~]# iostat -p sda

Linux 32-2eli686 (rumenz.com)         09/03/2012      _i686_  (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           11    01    44    92    00   52

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               32       152        55    1086002      91770
sda1              07         56         00       4120         18
sda2              22       179        55    1080650      91752
11. 显示 LVM 统计信息

-N (大写)参数只显示 LVM 统计。

代码语言:javascript
复制
[root@rumenz ~]# iostat -N
Linux 3.10.0-1160.31.1.el7.x86_64 (iZuf6g17lg7nixe3uwrgxiZ)     11/21/2021      _x86_64_        (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.69    0.00    0.49    0.09    0.00   98.73

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
vda               6.29        43.45        46.23  357997745  380910689
12.iostat版本。

-V (大写)参数显示版本 iostat

代码语言:javascript
复制
[root@rumenz ~]# iostat -V

sysstat version 10.1.5
(C) Sebastien Godard (sysstat <at> orange.fr)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 入门小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在linux中安装sysstat
  • 1. 列出活动和非活动内存
  • 2. 执行 vmstat 'X' 秒和('N' 次)
  • 3. vmstat 带时间戳
  • 4、各计数器统计
  • 5. 磁盘统计
  • 6. 以兆字节显示统计信息
  • 7. 显示 CPU 和 I/O 统计信息
  • 8. 仅显示 CPU 统计信息
  • 9. 仅显示磁盘 I/O 统计信息
  • 10. 仅显示单个设备的 I/O 统计信息。
  • 11. 显示 LVM 统计信息
  • 12.iostat版本。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档