可以通过 iostat 从系统维度查看 IO 负载情况。
iostat 并非常见 Linux 发行版本自带工具,其包含在 sysstat 软件包中,需要先通过 yum 或 apt-get 等方式进行安装后才能使用。 具体安装方法本文不再详述。
用法说明:
示例用法:
iostat -d -k 2
# -d 表示,显示设备(磁盘)使用状态。
# -k 表示让某些使用 block 为单位的列强制使用 kB 为单位。
# 2表示,数据显示每隔2秒刷新一次。
示例输出:
Linux 3.10.0-123.9.3.el7.x86_64 (centos) 06/27/2016 _x86_64_ (1 CPU)
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
xvda 0.58 0.12 3.75 278001 8820028
xvdb 0.00 0.00 0.00 740 0
xvdc 0.00 0.00 0.00 1388 0
xvde 0.00 0.00 0.00 2035 0
xvdf 0.00 0.00 0.00 740 0
更多参数及返回结果说明,可以参阅 iostat 的 man 帮助。
也可以通过 iotop 从进程维度对系统内进程的 IO 使用情况进行排序。
iotop 也并非常见 Linux 发行版本自带工具,也需要先通过 yum 或 apt-get 等方式进行安装后才能使用。 具体安装方法本文不再详述。
用法说明:
直接使用指令 iotop 运行后,可以看到类似以下界面:
回显说明:
$ dumpe2fs /dev/xvda1 | grep Journal
dumpe2fs 1.42.9 (28-Dec-2013)
Journal inode: 8
Journal backup: inode blocks
Journal features: journal_incompat_revoke
Journal size: 128M
Journal length: 32768
Journal sequence: 0x00010ffb
Journal start: 10953
可以通过如下脚本对磁盘进行格式化并自动配置 4K 对齐。
注意:运行此脚本会自动格式化所有数据盘磁盘。如果并非新购磁盘,请在操作前,务必确认已经完成相关磁盘上的数据备份。可以通过快照进行磁盘的备份,操作方法可以参阅创建快照。
chmod +x ./auto_fdisk.sh
./auto_fdisk.sh