作为系统工程师,您经常需要生成显示系统资源利用率的报告,以确保:1)它们被最佳地利用,2)防止瓶颈,以及3)确保可扩展性等原因。
RHCE:监视Linux性能活动报告 - 第3部分
除了被用来检查磁盘,内存和CPU使用率的知名本土Linux工具-仅举几个例子,红帽企业Linux 7提供了两个额外的工具集来增强您可以收集报告中的数据:SYSSTAT和dstat 。
在本文中,我们将描述两者,但让我们首先回顾一下经典工具的用法。
本机Linux工具
用df,您将能够通过文件系统报告的磁盘空间和inode的使用情况。 你需要监控两者,因为缺乏空间将阻止你能够保存更多的文件(甚至可能导致系统崩溃),就像运行inode将意味着你不能链接进一步的文件与其相应的数据结构,从而产生相同的效果:您将无法将这些文件保存到磁盘。
# df -h [Display output in human-readable form] # df -h --total [Produce a grand total]
检查Linux磁盘总使用率
# df -i [Show inode count by filesystem] # df -i --total [Produce a grand total]
检查Linux总inode编号
随着杜 ,您可以通过文件,目录或文件系统文件估计空间使用。
例如,让我们看看有多少空间可用于/ home目录,其中包括所有用户的个人文件。 第一个命令将返回当前使用的整个/ home目录整体空间,而第二个也将显示由子目录分类列表,以及:
# du -sch /home # du -sch /home/*
检查Linux目录磁盘大小
不要错过 :
不能从您的工具集缺少的另一个工具是vmstat的 。 它将允许您快速查看有关进程,CPU和内存使用情况,磁盘活动等信息。
如果不带参数运行,vmstat的返回均线自上次重新启动。 虽然你可以在一段时间内使用这种形式的命令,但是采用一定量的系统利用率样本,一个接一个,在样本之间具有定义的时间间隔将更有帮助。
例如,
# vmstat 5 10
将返回每5秒采集10个样本:
检查Linux系统性能
特效 (进程), 内存 , 交换 ,IO, 系统和CPU:正如你可以在上面的图片中看到,vmstat的输出被列划分。 每个字段的含义可以在vmstat的的手册页字段描述章节中找到。
在哪里可以VMSTAT派上用场? 我们之前和Yum更新期间检查系统的行为:
# vmstat -a 1 5
Vmstat Linux性能监控
请注意,由于文件被在磁盘上改性,的有源存储器的量增加,因此这是否是专用于用户进程(我们)的CPU时间写入磁盘(BO)的块数和。
或在一个大的文件,直接到磁盘上的保存过程(由引起的dsync):
# vmstat -a 1 5 # dd if=/dev/zero of=dummy.out bs=1M count=1000 oflag=dsync
VmStat Linux磁盘性能监控
在这种情况下,我们可以看到块的尚未大量写入磁盘(BO),这是可以预料的,而且还增加了CPU时间量的,它必须等待的I / O操作前完成处理任务(WA)。
不要错过 : vmstat中- Linux的性能监测
其他Linux工具
正如在介绍这一章提到,有你可以用它来检查系统状态和利用其他工具(他们不仅由Red Hat也从他们的官方支持库等主要分布提供)。
sysstat包包含以下工具:
- SAR(收集,报告或保存系统活动信息)。
- 连续输稿器 (由特区以多种格式显示收集的数据)。
- mpstat的报告(处理器相关的统计数据)。
- iostat的 (报告CPU统计信息和I / O统计信息设备和分区)。
- pidstat(Linux任务的报告统计信息)。
- nfsiostat(对NFS报告输入/输出统计)。
- cifsiostat(报告CIFS统计)和
- SA1(收集和二进制数据存储在系统活动每日数据文件。
- SA2(写在/ var每日报告/日志/ SA目录)的工具。
而dstat增加了一些额外的功能,这些工具提供,更多的柜台和灵活性以及功能。 您可以通过运行Yum信息SYSSTAT或yum的信息dstat,分别或检查安装后各自的手册页找到每个工具的整体描述。
要安装这两个软件包:
# yum update && yum install sysstat dstat
对于sysstat的主配置文件是/ etc / sysconfig中/ SYSSTAT。 您将在该文件中找到以下参数:
# How long to keep log files (in days). # If value is greater than 28, then log files are kept in # multiple directories, one for each month. HISTORY=28 # Compress (using gzip or bzip2) sa and sar files older than (in days): COMPRESSAFTER=31 # Parameters for the system activity data collector (see sadc manual page) # which are used for the generation of log files. SADC_OPTIONS="-S DISK" # Compression program to use. ZIP="bzip2"
当安装SYSSTAT两个cron作业被添加在/etc/cron.d/sysstat启用。 第一次运行作业的系统活动的会计工具每隔10分钟 ,并存储在/ var /报告日志/ SA / saXX其中XX是该月的一天。
因此, 在/ var /日志/ SA / SA05将包含从本月5日所有的系统活动报告。 这是假设,我们在上面的配置文件中的历史变量使用默认值:
*/10 * * * * root /usr/lib64/sa/sa1 1 1
第二个作业在每天并存储下午11时53分产生过程占的每日提要它在/ var /日志/ SA / sarXX文件,其中XX的含义与前面例子中相同的:
53 23 * * * root /usr/lib64/sa/sa2 -A
例如,您可以通过下午5时30月份的第六至可以轻松使用的LibreOffice Calc中或Microsoft Excel(查看.csv文件要输出系统统计上午9:30这一做法也将让你创建图表或图表):
# sadf -s 09:30:00 -e 17:30:00 -dh /var/log/sa/sa06 -- | sed 's/;/,/g' > system_stats20150806.csv
你可以选择使用-j标志,而不是-d在连续输稿器上面的命令输出JSON格式的系统统计,如果你需要消耗在Web应用程序中的数据,例如这可能是有用的。
Linux系统统计
最后,让我们看看有什么dstat所提供的。 请注意,如果不带参数运行,dstat默认(简称CPU,磁盘,网络,内存页面以及系统统计,分别)假设-cdngy,并添加一行每秒(执行可以随时用Ctrl + C被打断) :
# dstat
Linux磁盘统计监控
要输出统计到.csv文件,使用-output标志后跟一个文件名。 让我们看看这看起来在LibreOffice Calc:
监视Linux统计信息输出
我强烈建议你检查出的手册页与该男子一起页 PDF格式为您的阅读方便。 您将找到其他几个选项,帮助您创建自定义和详细的系统活动报告。
不要错过: SYSSTAT - Linux的使用活动监控工具
概要
在本指南中,我们已经介绍了如何使用提供RHEL 7两种本地Linux工具和相关的工具,以产生对系统使用情况报告。 在某一时刻,你会依靠这些报告作为最好的朋友。
您可能会使用我们在本教程中未涉及的其他工具。 如果是这样,请随时与社区的其他人分享,以及您可能有的任何其他建议/问题/意见 - 使用下面的表格。
我们期待您的回音。