Linux服务器性能评估与优化、监控利器---dstat应用

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

一、简介
dstat是一个用来替换vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具.它是由Python编写的, 与sysstat相比,dstat是以一个彩色的界面动态显示,这样数据比较显眼,容易观察,一目了然; 而且dstat支持即时刷新,可以使用相关参数指定显示哪些内容!下后会有说明。下面开始进入dstat的神秘世界!!!!!!!!!!!!!!官方站点:http://dag.wieers.com/home-made/dstat/#download
二、下载安装
[root@PY-proxy1 ~]# wget http://pkgs.repoforge.org/dstat/dstat-0.7.2-1.el5.rfx.noarch.rpm
--08:37:36--  http://pkgs.repoforge.org/dstat/dstat-0.7.2-1.el5.rfx.noarch.rpm
           => `dstat-0.7.2-1.el5.rfx.noarch.rpm'
正在解析主机 pkgs.repoforge.org... 78.46.17.228
Connecting to pkgs.repoforge.org|78.46.17.228|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 302 Found
位置:http://rpmforge.sw.be/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm [跟随至新的 URL]
--08:37:40--  http://rpmforge.sw.be/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm
           => `dstat-0.7.2-1.el5.rfx.noarch.rpm'
正在解析主机 rpmforge.sw.be... 78.46.17.228
Connecting to rpmforge.sw.be|78.46.17.228|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:http://tree.repoforge.org/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm [跟随至新的 URL]
--08:37:47--  http://tree.repoforge.org/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm
           => `dstat-0.7.2-1.el5.rfx.noarch.rpm'
正在解析主机 tree.repoforge.org... 78.46.17.228
Connecting to tree.repoforge.org|78.46.17.228|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:http://apt.sw.be/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm [跟随至新的 URL]
--08:37:50--  http://apt.sw.be/redhat/el5/en/i386/extras/RPMS/dstat-0.7.2-1.el5.rfx.noarch.rpm
           => `dstat-0.7.2-1.el5.rfx.noarch.rpm'
正在解析主机 apt.sw.be... 193.1.193.67
Connecting to apt.sw.be|193.1.193.67|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:249,282 (243K) [application/x-redhat-package-manager]


100%[======================================================>] 249,282       74.90K/s    ETA 00:00


08:37:57 (74.81 KB/s) - `dstat-0.7.2-1.el5.rfx.noarch.rpm' saved [249282/249282]

安装:
[root@PY-proxy1 ~]# rpm -ivh dstat-0.7.2-1.el5.rfx.noarch.rpm 
warning: dstat-0.7.2-1.el5.rfx.noarch.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing...                ########################################### [100%]
   1:dstat                  ########################################### [100%]
三、使用
1.使用语法dstat [-afv][options..] [delay [count]]  

简单执行 dstat 命令:在不带任务参数的情况它只会collectlcpu、disk、net、paging、system这些数据, 默认是 1s 收集一次. 默认输入dstat等于输入了dstat -cdngy 1或dstat-a 1.
[root@PY-proxy1 ~]# dstat
You did not select any stats, using -cdngy by default.
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--

usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
  2   1  94   3   0   0| 179k  308k|   0     0 |   0     2B|1570  1079 
  9   4  72  14   1   0| 148k    0 |1347k 1938k|   0     0 |4004  1410 
  7   3  79  10   1   0|  36k 2024k|1305k 1227k|   0     0 |3814  1519 
  7   3  73  16   1   0| 112k 3352k|1129k 1167k|   0     0 |3456  1284 
  8   3  77  12   0   0| 104k  184k|1040k 1290k|   0     0 |3478  1701 
 10   3  79   8   1   0| 160k    0 | 994k 1352k|   0     0 |3568  1539 
 11   3  78   8   1   0| 220k    0 | 744k  832k|   0     0 |3290  1182 
 10   4  52  34   1   0| 452k 1792k| 812k  896k|   0     0 |3185  1379 
 11   4  24  62   1   0| 392k 2548k| 901k 1012k|   0     0 |3513  1600 
  3   1   0  96   0   0| 324k  692k| 414k  263k|   0     0 |2105   399 
  3   1   0  97   0   0| 384k  280k| 212k  211k|   0     0 |1945   153 
  1   1   0  98   0   0| 276k 2780k| 115k  141k|   0     0 |1580   128 
  4   2   0  94   1   0| 204k    0 | 986k 1229k|   0     0 |3180   383 
  1   1   7  91   0   0| 144k 3500k| 179k  122k|   0     0 |1634   145 
  3   1   0  97   0   0| 276k  856k| 192k  181k|   0     0 |1669   162 
  2   1  37  59   1   0| 296k  460k| 321k  541k|   0     0 |2140   205

2.dstat 使用参数

-c, -cpu 显示CPU情况

-C 0,3,totalinclude cpu0, cpu3 and total

-d, -disk 显示磁盘情况

-D total,hdainclude hda and total

-g, -page enable pagestats

-i, -int enableinterrupt stats

-I 5,eth2 includeint5 and interrupt used by eth2

-l, -load enable loadstats

-m, -mem 显示内存情况

-n, -net 显示网络情况

-N eth1,total 可以指定网络接口

-p, -proc enableprocess stats

-s, -swap 显示swap情况

-S swap1,total 可以指定多个swap

-t, -time enable timecounter

-y, -sys enablesystem stats

-ipc 报告IPC消息队列和信号量的使用情况

-lock enable lockstats

-raw enable raw stats

-tcp enable tcp stats

-udp enable udp stats

-unix enable unixstats

-M stat1,stat2 enableexternal stats

-mods stat1,stat2

-a, -all 使用-cdngy 缺省的就是这样显示

-f, -full 使用 -C, -D, -I, -N and -S 显示

-v, -vmstat 使用-pmgdsc -D 显示

-integer show integervalues

-nocolor disablecolors (implies -noupdate)

-noheaders 只显示一次表头以后就不显示了,使用重定向写入文件时很有用

-noupdate disableintermediate updates

-output file 写入到CVS文件中

3、实例应用上面的一些参数


实例1: dstat sda -D3 5   #在默认显示内容的基础上只显示sda磁盘的信息

这里的 3 5 意思跟vmstat3 5 一样,意思就是每隔3秒更新一次,总共更新5次,但是这里有个小区别就是初使时要显示一次,不包括在内!

[root@PY-proxy1 ~]# dstat -D sda  3 5
You did not select any stats, using -cdngy by default.
----total-cpu-usage---- --dsk/sda-- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
  2   1  94   3   0   0| 190k  325k|   0     0 |   0     2B|1598  1080 
 20  27  44   9   1   0|4888k 6715k|1362k 1558k|   0     0 |4130   455 
 21  28  48   2   1   0|5015k 4108k|1169k 1171k|   0     0 |3665   163 
 20  29  45   6   0   0|5265k 6853k| 668k  660k|   0     0 |2902   173 
 19  30  46   5   0   0|5388k 7061k| 957k 1062k|   0     0 |3395   127 
 20  28  48   4   1   0|5141k 3877k|1002k 1108k|   0     0 |3510   148
实例2:dstat-cdlmnpsy 3 5 #统计显示CPU,IO,load,memory,network,process,swap,system
[root@PY-proxy1 ~]# dstat -cdlmnpsy 3 5
Terminal width too small, trimming output.
----total-cpu-usage---- -dsk/total- ---load-avg--- ------memory-usage----- -net/total->
usr sys idl wai hiq siq| read  writ| 1m   5m  15m | used  buff  cach  free| recv  send>
  2   1  94   3   0   0| 197k  333k|1.20 1.01 0.73| 276M 4540k  706M 15.9M|   0     0 >
 19  26  43  12   0   0|4619k 4317k|1.20 1.01 0.73| 277M 4472k  705M 15.9M| 996k 1029k>
 18  27  48   7   0   0|4756k 5363k|1.19 1.01 0.73| 277M 4520k  706M 14.6M| 926k  925k>
 20  29  44   7   0   0|5277k 6719k|1.17 1.01 0.73| 278M 4544k  704M 16.2M|1054k 1078k>
 20  29  48   2   0   0|5391k 3951k|1.17 1.01 0.73| 278M 4484k  706M 14.6M| 459k  500k>
 16  21  45  18   0   0|3739k 6192k|1.16 1.01 0.73| 279M 4404k  704M 14.6M| 562k  737k>

实例3 :date&& dstat -tclmdny 10  #10秒监视一次
[root@PY-proxy1 ~]# date && dstat -tclmdny 10
三  5月 22 09:06:08 CST 2013
----system---- ----total-cpu-usage---- ---load-avg--- ------memory-usage----- -dsk/total- -net/total- ---system--
     time     |usr sys idl wai hiq siq| 1m   5m  15m | used  buff  cach  free| read  writ| recv  send| int   csw 
22-05 09:06:10|  2   1  94   3   0   0|1.24 1.06 0.77| 321M 4784k  655M 21.2M| 204k  341k|   0     0 |1603  1077 
22-05 09:06:20| 21  27  46   6   1   0|1.45 1.11 0.79| 328M 4936k  654M 15.8M|4706k 5774k|1129k 1293k|3842   189 
22-05 09:06:30| 19  27  45   9   0   0|1.38 1.10 0.79| 331M 4868k  652M 14.6M|4817k 5265k| 830k  891k|3076   147 
22-05 09:06:40| 19  26  47   8   0   0|1.32 1.10 0.79| 335M 4856k  645M 17.2M|4559k 4990k| 685k  790k|3009   151 
实例4:dstat -cdlmnyp -N total -D total 3 5
[root@PY-proxy1 ~]# dstat -cdlmnyp -N total -D total 3 5
----total-cpu-usage---- -dsk/total- ---load-avg--- ------memory-usage----- -net/total- ---system-- ---procs---
usr sys idl wai hiq siq| read  writ| 1m   5m  15m | used  buff  cach  free| recv  send| int   csw |run blk new
  2   2  94   3   0   0| 210k  346k|1.27 1.11 0.82| 337M 4196k  645M 15.9M|   0     0 |1604  1076 |  0 0.0 0.1
 19  28  46   6   0   0|4885k 7197k|1.25 1.11 0.82| 337M 4200k  644M 17.2M|1180k 1212k|3646   111 |0.3   0   0
 19  27  47   7   0   0|4641k 6609k|1.25 1.11 0.82| 338M 4260k  646M 14.8M|1185k 1168k|3544    88 |0.3   0   0
 19  28  48   5   0   0|4899k 4561k|1.31 1.13 0.82| 338M 4296k  646M 14.7M|1181k 1278k|3619    95 |0.3   0   0
 18  24  46  12   0   0|4471k 6128k|1.29 1.12 0.82| 337M 4240k  646M 14.5M| 503k  698k|2481   126 |0.3   0   0
 20  26  44   9   0   0|4685k 3783k|1.29 1.12 0.82| 338M 4240k  646M 14.6M| 881k  892k|3293   655 |0.3   0   0











本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1684158,如需转载请自行联系原作者
目录
相关文章
|
7天前
|
算法 Linux 调度
深入理解Linux内核调度器:从基础到优化####
本文旨在通过剖析Linux操作系统的心脏——内核调度器,为读者揭开其高效管理CPU资源的神秘面纱。不同于传统的摘要概述,本文将直接以一段精简代码片段作为引子,展示一个简化版的任务调度逻辑,随后逐步深入,详细探讨Linux内核调度器的工作原理、关键数据结构、调度算法演变以及性能调优策略,旨在为开发者与系统管理员提供一份实用的技术指南。 ####
32 4
|
9天前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
32 9
|
9天前
|
算法 Unix Linux
深入理解Linux内核调度器:原理与优化
本文探讨了Linux操作系统的心脏——内核调度器(Scheduler)的工作原理,以及如何通过参数调整和代码优化来提高系统性能。不同于常规摘要仅概述内容,本摘要旨在激发读者对Linux内核调度机制深层次运作的兴趣,并简要介绍文章将覆盖的关键话题,如调度算法、实时性增强及节能策略等。
|
11天前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
30 7
|
12天前
|
机器学习/深度学习 负载均衡 算法
深入探索Linux内核调度机制的优化策略###
本文旨在为读者揭开Linux操作系统中至关重要的一环——CPU调度机制的神秘面纱。通过深入浅出地解析其工作原理,并探讨一系列创新优化策略,本文不仅增强了技术爱好者的理论知识,更为系统管理员和软件开发者提供了实用的性能调优指南,旨在促进系统的高效运行与资源利用最大化。 ###
|
11天前
|
监控 网络协议 算法
Linux内核优化:提升系统性能与稳定性的策略####
本文深入探讨了Linux操作系统内核的优化策略,旨在通过一系列技术手段和最佳实践,显著提升系统的性能、响应速度及稳定性。文章首先概述了Linux内核的核心组件及其在系统中的作用,随后详细阐述了内存管理、进程调度、文件系统优化、网络栈调整及并发控制等关键领域的优化方法。通过实际案例分析,展示了这些优化措施如何有效减少延迟、提高吞吐量,并增强系统的整体健壮性。最终,文章强调了持续监控、定期更新及合理配置对于维持Linux系统长期高效运行的重要性。 ####
|
12天前
|
安全 网络协议 Linux
Linux操作系统的内核升级与优化策略####
【10月更文挑战第29天】 本文深入探讨了Linux操作系统内核升级的重要性,并详细阐述了一系列优化策略,旨在帮助系统管理员和高级用户提升系统的稳定性、安全性和性能。通过实际案例分析,我们展示了如何安全有效地进行内核升级,以及如何利用调优技术充分发挥Linux系统的潜力。 ####
32 1
|
14天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
14天前
|
人工智能 算法 大数据
Linux内核中的调度算法演变:从O(1)到CFS的优化之旅###
本文深入探讨了Linux操作系统内核中进程调度算法的发展历程,聚焦于O(1)调度器向完全公平调度器(CFS)的转变。不同于传统摘要对研究背景、方法、结果和结论的概述,本文创新性地采用“技术演进时间线”的形式,简明扼要地勾勒出这一转变背后的关键技术里程碑,旨在为读者提供一个清晰的历史脉络,引领其深入了解Linux调度机制的革新之路。 ###
|
17天前
|
缓存 Unix Linux
服务器linux!!!
本文介绍了计算机的演变历史、硬件基础知识及服务器相关知识。从电子管时代的ENIAC到冯-诺伊曼架构,再到现代计算机系统组成,详细讲解了计算机的发展历程。此外,文章还介绍了服务器的分类、品牌、硬件组成以及IDC机房的上架流程,为读者提供了全面的技术背景知识。
34 0
服务器linux!!!