DevOps Troubleshooting(2)-运维实战

服为何这么慢。不能进入系统,只能重启,能登录进系统就可以用工具定位问题。干我们运维这行常用工具如下。

uptimie--主要看后面load average 后面三个数字,分别代表5,10,15分钟的。

什么是系统平均负载。运行或者不可打扰的进程平均数。核心数=平均负载。表满负荷了。如果超了这个范围就要考虑调优。通常cpu密集比io响应时间要快,我见过cpu密集型的有的时候这个数超了很多但是还是好好的。如果是io密集型的就很慢了,因为大量io产生读写磁盘,需要很多内存。ram,让进程变得很慢。

top命令。终止某个进程,按下K 然后输入进程号。

详细了解top命令

top的命令和uptime命令第一行一样,负载数不能超过load average就算正常

同时呢也要明白top中每个参数含义。

us---用户时间

sy---系统时间

ni---优雅时间

id---cpu空闲时间

如果他很高,系统有很慢,那么就不是cpu高负载

wa---io等待

如果很低,那就排除磁盘和io问题了

hi--硬中断

si--软中断

st--时间流逝

如果运行虚拟机他会告诉你虚拟机执行其他任务所占的cpu时间百分比

top命令应用举例,如果us很大,而wa却很小,那么可以判断瓶颈在本机cpu上,可以

终止一下不会影响到关键服务的进程,如日志监控脚本。

iostat查看那些进程占用了大量io

iostat -d -x -k 1
Device:    rrqm/s wrqm/s   r/s   w/s  rsec/s  wsec/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sda          1.56  28.31  7.84 31.50   43.65    3.16    21.82     1.58     1.19     0.03    0.80   2.61  10.29sda          1.98  24.75 419.80  6.93 13465.35  253.47  6732.67   126.73    32.15     2.00    4.70   2.00  85.25sda          3.06  41.84 444.90 54.08 14204.08 2048.98  7102.04  1024.49    32.57     2.10    4.21   1.85  92.24

参数 -d 表示,显示设备(磁盘)使用状态;-k某些使用block为单位的列强制使用Kilobytes为单位;1表示,数据显示每隔1秒刷新一次,-x是与io扩展参数


你可能感兴趣的:(top,iostat,命令使用)