sar(System ActivityReporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等,sar命令有sysstat安装包安装,本文主要以CentOS 6系列x64系统为例,介绍sar命令。

yum安装

1.1:sar命令常用格式:

用法:

选项:

选项解释:

1.2:sar -u #统计CPU的使用情况,每间隔1秒钟统计一次总共统计三次:#sar -u 1 3

在以上的显示当中,主要看%iowait和%idle,%iowait过高表示存在I/O瓶颈,即磁盘IO无法满足业务需求,如果%idle过低表示CPU使用率比较严重,需要结合内存使用等情况判断CPU是否瓶颈。

1.2.1:sar -p 1 3 #报个每个CPU的使用状态:

1.3:将统计结果保存在文件并从文件读取内容:

1.4:sar -q #查看平均负载:

1.5:sar -r #查看内存使用情况

1.6:sar -W #查看系统swap分区的统计信息:

1.7:sar -b #查看I/O和传递速率的统计信息

1.8:sar -d #磁盘使用详情统计

1.9:sar -v #进程、inode、文件和锁表状态

  • 这里面的索引和文件句柄值不是ulimit -a查看到的值,而是sysctl.conf里面定义的和内核相关的值, max-file表示系统级别的能够打开的文件句柄的数量, 而ulimit -n控制进程级别能够打开的文件句柄的数量,可以使用sysctl -a | grep inode和sysctl -a | grep file查看,具体含义如下:
  • file-max中指定了系统范围内所有进程可打开的文件句柄的数量限制(系统级别, kernel-level)。 (The value in file-max denotes the maximum number of file handles that the Linux kernel will allocate)。当收到”Too many open files in system”这样的错误消息时, 就应该曾加这个值了。
  • #cat /proc/sys/fs/file-max
  • 4096
  • #echo 100000 > /proc/sys/fs/file-max
  • 或者
  • #echo “fs.file-max=65535” >> /etc/sysctl.conf
  • #sysctl -p
  • file-nr 可以查看系统中当前打开的文件句柄的数量。 他里面包括3个数字: 第一个表示已经分配了的文件描述符数量, 第二个表示空闲的文件句柄数量, 第三个表示能够打开文件句柄的最大值(跟file-max一致)。 内核会动态的分配文件句柄, 但是不会再次释放他们(这个可能不适应最新的内核了, 在我的file-nr中看到第二列一直为0, 第一列有增有减)
  • man bash, 找到说明ulimit的那一节:提供对shell及其启动的进程的可用资源(包括文件句柄, 进程数量, core文件大小等)的控制。 这是进程级别的, 也就是说系统中某个session及其启动的每个进程能打开多少个文件描述符, 能fork出多少个子进程等… 当达到上限时, 会报错”Too many open files”或者遇上Socket/File: Can’t open so many files等

1.10:sar -n #统计网络信息

#sar -n选项使用6个不同的开关:DEV,EDEV,NFS,NFSD,SOCK,IP,EIP,ICMP,EICMP,TCP,ETCP,UDP,SOCK6,IP6,EIP6,ICMP6,EICMP6和UDP6 ,DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动的NFS客户端的信息,NFSD统计NFS服务器的信息,SOCK显示套接字信息,ALL显示所有5个开关。它们可以单独或者一起使用。

1.10.1:sar -n DEV 1 1: 每间隔1秒统计一次,总计统计1次,下面的average是在多次统计后的平均值

1.10.2:sar -n EDEV 1 1 #统计网络设备通信失败信息:

1.10.3:sar -n SOCK 1 1 #统计socket连接信息

########如果你使用FULL关键字,相当于上述DEV、EDEV和SOCK三者的综合

1.10.4:sar -n TCP 1 3 #TCP连接的统计

1.10.5:sar -n 使用总结

1.10.6:常用命令汇总,因版本和平台不同,有部分命令可能没有或显示结果不一致:

本博客所有内容采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可

转载文章请注明:sar(系统性能分析工具) - https://yangxx.net/?p=2539


young

记住该记住的,忘记该忘记的,改变能改变的,接受不能改变的!

1 个评论

test · 2018-05-29 - 下午5:39

test

发表评论

电子邮件地址不会被公开。 必填项已用*标注

我不是机器人*