您好,欢迎访问代理记账网站
移动应用 微信公众号 联系我们

咨询热线 -

电话 15988168888

联系客服
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

linux 部分内存监控及指标含义

最近的两周业务上线,忙着搞系统的稳定性。最近忙完了,记录一下最近学习的一些内容,本篇主要介绍linux监控相关的

为了能够快速的定位问题,在每台机器上增加了一些定期执行的脚本,用于采集机器的状态,分别是:top,iostat,iotop,ioping,vmstat,dstat,sar

一个一个看吧

top

top -d3 -b -c -w1024

top指令非常简单了,主要定期dump一次,简单看看cpu利用率是否正常,wait和sys状态是否过高,另外用看看对应的内存信息

iostat

iostat -t -x -m 1

也是比较常用的指令,一般会展示如下的一些数据

rrqm/swrqm/sr/sw/srMB/swMB/savgrq-szavgqu-szawaitr_awaitw_awaitsvctm%util
读请求数写请求数完成的读请求完成的写请求读数据量写数据量平均读大小平均写大小平均处理一个请求的时间

目前也没有通过这个指标定位到问题的经验,一般就看看读写数据量是否是正常的,是否有突然非常大量的读取和写入。

iotop

iotop -d 2 -o -P -t

这个指令会显示有io的进程,展示每个进程对应的读写数据量和swapin率,目前没用过这个值,根据man手册解释,这个应该是进城等待内存换入所花的时间百分比,应该只有swap区打开的情况下这个值才可能是非0?

ioping

ioping -S 10485760 -y -k -W -L -s 4k

该指令会定期写入4k数据块到磁盘,测试磁盘的延迟,某些时候server层请求出现毛刺,排查后发现磁盘在那个时间点延迟升高,可能就是磁盘抖动导致的延迟毛刺,如果不是非常有必要的情况下,排查到磁盘的抖动就可以结束了。

vmstat

vmstat -t -w 1

该指令能够看到一些内存page信息,free buffer cache的page数量,以及block读入和写出的一些数量

sar

sar -B 1
pgpgin/spgpgout/sfault/smajflt/spgfree/spgscank/spgscand/spgsteal/s

这个接触得少一点,简单记录一下

  • fault/s。是page fault的次数,包括minor和major,按照man来开,major指的应该是需要从disk读数据的
  • majflt/s。major page fault次数
  • pgfree/s。归还给空闲链表的page数量,看起来这个应该是指的用户进程归还的,即从used 到 free里的?
  • pgscank/s。扫描到可回收的内存页,内核会起一个线程不停的扫描,找到可回收的内存页进行回收,所以这个scan无所谓,定期执行,在内存水位低于一定情况时就会触发(应该是低于min free byte*一个系数)
  • pgscand/s。扫描到可回收的内存页,这个是强制回收,当内存低于minfreebytes的时候触发,会卡住进程,如果这一列非零需要注意
  • pgsteal/s。从cache中回收的page数量,基本和两个scan之和是一致的。

pgsteal和pgfree的区别,steal是回收目前正在被使用的内存,从active和inactive中回收,如果是page cache,那么可以直接回收(脏页就写了后回收,非脏页直接回收),如果是从匿名区回收,那么就需要将用户正在使用的内存页唤出到swap,极度影响性能,建议优先回收page cache,内核有参数可以设置该策略。

proc meminfo

这个内容就特别多了,可以参考meminfo 详解

我主要关注几个点

  • cache和buffer的区别,从man手册看,buffer是对于块设备的缓冲区,cache是文件系统的缓存,即理论上来说数据从磁盘读出来,缓存到buffer,然后整理后交给文件系统,文件系统的cache又会缓存一次,这个每意义,所以目前文件系统的cache和buffer是同一个东西。对于我们这种使用文件系统的应用来说,buffer和cache没区别
  • active和inactive链表都是在使用中的内存,上述说的scan回收page也是在链表上回收,对于匿名区和page cache回收策略不一样,会优先从inactive链表上回收(我也不知道能不能从active上回收)

分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进