linux 性能监控命令之dstat

1. dstat

        系统默认为安装,直接安装阿里源后,yum install -y dstat安装即可,该命令整合了 vmstat , iostat 和 ifstat,我们先看下效果:

我们先看看具体参数:

[root@k8s-master ~]# dstat --help
Usage: dstat [-afv] [options..] [delay [count]]
Versatile tool for generating system resource statistics

Dstat options:
  -c, --cpu              enable cpu stats
     -C 0,3,total           include cpu0, cpu3 and total
  -d, --disk             enable disk stats
     -D total,hda           include hda and total
  -g, --page             enable page stats
  -i, --int              enable interrupt stats
     -I 5,eth2              include int5 and interrupt used by eth2
  -l, --load             enable load stats
  -m, --mem              enable memory stats
  -n, --net              enable network stats
     -N eth1,total          include eth1 and total
  -p, --proc             enable process stats
  -r, --io               enable io stats (I/O requests completed)
  -s, --swap             enable swap stats
     -S swap1,total         include swap1 and total
  -t, --time             enable time/date output
  -T, --epoch            enable time counter (seconds since epoch)
  -y, --sys              enable system stats

  --aio                  enable aio stats
  --fs, --filesystem     enable fs stats
  --ipc                  enable ipc stats
  --lock                 enable lock stats
  --raw                  enable raw stats
  --socket               enable socket stats
  --tcp                  enable tcp stats
  --udp                  enable udp stats
  --unix                 enable unix stats
  --vm                   enable vm stats

  --plugin-name          enable plugins by plugin name (see manual)
  --list                 list all available plugins

  -a, --all              equals -cdngy (default)
  -f, --full             automatically expand -C, -D, -I, -N and -S lists
  -v, --vmstat           equals -pmgdsc -D total

  --bits                 force bits for values expressed in bytes
  --float                force float values on screen
  --integer              force integer values on screen

  --bw, --blackonwhite   change colors for white background terminal
  --nocolor              disable colors (implies --noupdate)
  --noheaders            disable repetitive headers
  --noupdate             disable intermediate updates
  --output file          write CSV output to file
  --profile              show profiling statistics when exiting dstat

也可以直接用man dstat查看,比较多就不粘贴了

我们挑些常用的参数来说:

-l

显示负载统计量
-m显示内存使用率
-r显示I/O统计
-s显示交换分区使用情况
-t将当前时间排在第一行
-fs显示文件系统统计数据(包括文件总数量和inodes值)
-nocolor不显示颜色
-socket显示网络统计数据
-tcp显示常用的TCP统计
–udp显示监听的UDP接口及其当前用量的一些动态数据

常见的使用方法:

-–disk-util 显示某一时间磁盘的忙碌状况
-–freespace显示当前磁盘空间使用率
-–proc-count显示正在运行的程序数量
-–top-bio指出块I/O最大的进程
-–top-cpu图形化显示CPU占用最大的进程
-–top-io显示正常I/O最大的进程
-–top-mem显示占用最多内存的进程

直接使用dstat,后面默认的参数为-cdngy,分别显示cpu、disk、net、page、system信息,默认每1s显示一条。

dstat 10是每隔10s显示一条

dstat 10 10 每隔10s显示一条,总共显示10条

我们来看对之前截图进行信息解读下:

usr:用户空间的程序所占用CPU的百分比

sys:系统空间的程序所占用CPU的百分比

idl:CPU空闲百分比

wai:等待磁盘I/O消耗的百分比

hiq:硬中断次数

siq:软中断次数

read:磁盘读取总数

writ:磁盘写入总数

recv:网络收包总数

send:网络发包总数

in: pagein(换入)

out:page out(换出)

int:中断次数

csw:上下文切换

2.dstat示例

dstat --top-mem --top-io --top-cpu 可以查看系统占用内存最大,占用磁盘I/O最高,占用CPU使用率最高的进程,最常用的就是这个,方便查看系统性能瓶颈

[root@k8s-master ~]# dstat --top-mem --top-io --top-cpu
--most-expensive- ----most-expensive---- -most-expensive-
  memory process |     i/o process      |  cpu process   
kube-apiserv 282M|systemd     141k  162k|kube-apiserve2.4
kube-apiserv 282M|kubelet      35k  750B|kube-apiserve2.0
kube-apiserv 282M|kubelet     125k 2606B|kube-apiserve2.0
kube-apiserv 282M|etcd       1992B   50k|kube-apiserve2.5
kube-apiserv 282M|kubelet      47k  917B|kube-controll1.5
kube-apiserv 282M|kube-apiser5936B   60k|kube-apiserve2.5
kube-apiserv 282M|kubelet      81k  959B|kubelet      3.0
kube-apiserv 282M|udisksd     495k 2776B|kube-apiserve2.5
kube-apiserv 282M|kubelet      72k 1375B|kube-apiserve2.5
kube-apiserv 282M|kubelet      52k  943B|kube-apiserve2.5
kube-apiserv 282M|kubelet      48k 2209B|kube-apiserve2.5
kube-apiserv 282M|udisksd     248k 1388B|kube-apiserve2.5
kube-apiserv 282M|kubelet     125k 2659B|kube-apiserve2.5
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值