首页 帮助中心 常见问题 Linux中监控和调试磁盘性能的工具分享
Linux中监控和调试磁盘性能的工具分享
时间 : 2024-11-20 11:44:43 编辑 : 华纳云 阅读量 : 505

本文中华纳云为大家分享关于监控和调试linux服务器上的磁盘I/O磁盘性能的最佳工具。在linux服务器中监控性能的一大关键指标就是磁盘I/O的输入和输出,会极大程度上影响linux服务器的多个方面,如文件或数据的保存或检索磁盘速度。这将会对应用程序和服务造成性能上的影响。

iostat属于sysstat包中基于终端的系统监控应用程序之一,sysstat包是一种广泛用使用的应用程序,可用于报告块设备和分区CPU统计信息和I/O的统计信息。在linux服务器中使用iostat需要运行适用于linux发行版的命令在linux中安装sysstat包:

sudo apt install sysstat [在Debian、Ubuntu 和 Mint上]
sudo yum install sysstat [在RHEL/CentOS/Fedora和Rocky Linux/AlmaLinux上]
sudo emerge -a app-admin/sysstat [在Gentoo Linux上]
sudo apk add sysstat [在Alpine Linux上]
sudo pacman -S sysstat [在Arch Linux上]
sudo zypper install sysstat [在OpenSUSE上]

如果仅需要显示简单的使用率报告,可以使用命令来运行:

iostat-d

第一个报告会提供关于系统启动以来时间的统计,后续报告中都会与上一个报告以来的时间有关。其中-x输出扩展统计报告,-t标志位每个报告启用时间。如果是想要消除报告输出中没有运行的设备,可以添加-x:

iostat -d -t

或者

iostat -d -x -t

在统计报告中如果是想以每秒千字节而不是每秒块为单位,可以直接添加-k,或者也可以使用-m来表示没秒兆字节为单位显示统计数据:

iostat -d -k

或者

iostat -d -m

iostat还可以用x秒的间隔来显示出连续的设备报告,如想得到以2秒间隔的显示报告:

iostat -d 2

还可以用x秒的间隔来显示出n 个报告,如2秒间隔时间来输出10个报告:

iostat -d 2 10

话可以把报告存于文件中,便于后期分析需要。

iostat -d 2 10 > disk_io_report.txt &

关于报告列的更多信息,可以选择阅读更多iostat手册页:

man Iostat

sar也属于sysstat软件包中附带的另外一个实用程序,可以实现收集、保存和报告系统相关活动信息。使用前需要进行一定的设置。如启用来收集/etc/default/sysstat文件中的数据:

vi /etc/default/sysstat

查看一下行把值改成“true”:

ENABLED="true"

然后,减少sysstat cron作业中定义的数据收集间隔,一般情况设置成每10秒一次,或者是降低成每2分钟一次在/etc/cron.d/sysstat文件中执行此操作:

# vi /etc/cron.d/sysstat

最后保存并关闭,完成后可以通过systemctl命令来启用sysstat服务:

systemctl enable --now sysstat.service
systemctl enable sysstat.service

然后,等待2分钟查看sar报告,用sar命令和-b命令来统计I/O的传输相关信息统计,-d可以查看报告中块设备的相关活动:

sar -d -b

除上面方式外,还有其他方式可以用于监控磁盘的使用,如iotop等。根据实际情况来选择合适的工具,要记住选择运行适合当前使用linux发行版的命令。

华纳云 推荐文章
解决Linux香港服务器日志中的磁盘I/O问题 Linux系统磁盘和文件系统管理 Linux系统中用于磁盘网络监控工具分享 Linux如何使用fdisk命令进行磁盘操作 如何解决Yum数据库磁盘映像格式错误 Linux系统管理中配置ACL和磁盘配额 2025年Linux免费磁盘工具八大推荐 Linux中添加大于2TB的新磁盘的方法有哪些 管理Linux磁盘分区常用的fdisk命令有哪些 Linux 中的磁盘使用情况统计信息分析方法
活动
客服咨询
7*24小时技术支持
技术支持
渠道支持